1use crate::SyntaxKind;
5use crate::ast::AstNode;
6use crate::ast::{AstChildren, support};
7use crate::syntax_node::SyntaxNode;
8use crate::syntax_node::SyntaxToken;
9
10#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11pub struct AddColumn {
12 pub(crate) syntax: SyntaxNode,
13}
14impl AddColumn {
15 #[inline]
16 pub fn collate(&self) -> Option<Collate> {
17 support::child(&self.syntax)
18 }
19 #[inline]
20 pub fn constraints(&self) -> AstChildren<Constraint> {
21 support::children(&self.syntax)
22 }
23 #[inline]
24 pub fn if_not_exists(&self) -> Option<IfNotExists> {
25 support::child(&self.syntax)
26 }
27 #[inline]
28 pub fn name(&self) -> Option<Name> {
29 support::child(&self.syntax)
30 }
31 #[inline]
32 pub fn ty(&self) -> Option<Type> {
33 support::child(&self.syntax)
34 }
35 #[inline]
36 pub fn add_token(&self) -> Option<SyntaxToken> {
37 support::token(&self.syntax, SyntaxKind::ADD_KW)
38 }
39 #[inline]
40 pub fn column_token(&self) -> Option<SyntaxToken> {
41 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
42 }
43}
44
45#[derive(Debug, Clone, PartialEq, Eq, Hash)]
46pub struct AddConstraint {
47 pub(crate) syntax: SyntaxNode,
48}
49impl AddConstraint {
50 #[inline]
51 pub fn constraint(&self) -> Option<Constraint> {
52 support::child(&self.syntax)
53 }
54 #[inline]
55 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
56 support::child(&self.syntax)
57 }
58 #[inline]
59 pub fn enforced(&self) -> Option<Enforced> {
60 support::child(&self.syntax)
61 }
62 #[inline]
63 pub fn initially_deferred_constraint_option(
64 &self,
65 ) -> Option<InitiallyDeferredConstraintOption> {
66 support::child(&self.syntax)
67 }
68 #[inline]
69 pub fn initially_immediate_constraint_option(
70 &self,
71 ) -> Option<InitiallyImmediateConstraintOption> {
72 support::child(&self.syntax)
73 }
74 #[inline]
75 pub fn no_inherit(&self) -> Option<NoInherit> {
76 support::child(&self.syntax)
77 }
78 #[inline]
79 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
80 support::child(&self.syntax)
81 }
82 #[inline]
83 pub fn not_enforced(&self) -> Option<NotEnforced> {
84 support::child(&self.syntax)
85 }
86 #[inline]
87 pub fn not_valid(&self) -> Option<NotValid> {
88 support::child(&self.syntax)
89 }
90 #[inline]
91 pub fn add_token(&self) -> Option<SyntaxToken> {
92 support::token(&self.syntax, SyntaxKind::ADD_KW)
93 }
94}
95
96#[derive(Debug, Clone, PartialEq, Eq, Hash)]
97pub struct AddGenerated {
98 pub(crate) syntax: SyntaxNode,
99}
100impl AddGenerated {
101 #[inline]
102 pub fn add_token(&self) -> Option<SyntaxToken> {
103 support::token(&self.syntax, SyntaxKind::ADD_KW)
104 }
105}
106
107#[derive(Debug, Clone, PartialEq, Eq, Hash)]
108pub struct AddOpClassOptions {
109 pub(crate) syntax: SyntaxNode,
110}
111impl AddOpClassOptions {
112 #[inline]
113 pub fn operator_class_option_list(&self) -> Option<OperatorClassOptionList> {
114 support::child(&self.syntax)
115 }
116 #[inline]
117 pub fn add_token(&self) -> Option<SyntaxToken> {
118 support::token(&self.syntax, SyntaxKind::ADD_KW)
119 }
120}
121
122#[derive(Debug, Clone, PartialEq, Eq, Hash)]
123pub struct Aggregate {
124 pub(crate) syntax: SyntaxNode,
125}
126impl Aggregate {
127 #[inline]
128 pub fn param_list(&self) -> Option<ParamList> {
129 support::child(&self.syntax)
130 }
131 #[inline]
132 pub fn path(&self) -> Option<Path> {
133 support::child(&self.syntax)
134 }
135}
136
137#[derive(Debug, Clone, PartialEq, Eq, Hash)]
138pub struct Alias {
139 pub(crate) syntax: SyntaxNode,
140}
141impl Alias {
142 #[inline]
143 pub fn column_list(&self) -> Option<ColumnList> {
144 support::child(&self.syntax)
145 }
146 #[inline]
147 pub fn name(&self) -> Option<Name> {
148 support::child(&self.syntax)
149 }
150 #[inline]
151 pub fn as_token(&self) -> Option<SyntaxToken> {
152 support::token(&self.syntax, SyntaxKind::AS_KW)
153 }
154}
155
156#[derive(Debug, Clone, PartialEq, Eq, Hash)]
157pub struct AllFn {
158 pub(crate) syntax: SyntaxNode,
159}
160impl AllFn {
161 #[inline]
162 pub fn expr(&self) -> Option<Expr> {
163 support::child(&self.syntax)
164 }
165 #[inline]
166 pub fn select_variant(&self) -> Option<SelectVariant> {
167 support::child(&self.syntax)
168 }
169 #[inline]
170 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
171 support::token(&self.syntax, SyntaxKind::L_PAREN)
172 }
173 #[inline]
174 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
175 support::token(&self.syntax, SyntaxKind::R_PAREN)
176 }
177 #[inline]
178 pub fn all_token(&self) -> Option<SyntaxToken> {
179 support::token(&self.syntax, SyntaxKind::ALL_KW)
180 }
181}
182
183#[derive(Debug, Clone, PartialEq, Eq, Hash)]
184pub struct AlterAggregate {
185 pub(crate) syntax: SyntaxNode,
186}
187impl AlterAggregate {
188 #[inline]
189 pub fn aggregate(&self) -> Option<Aggregate> {
190 support::child(&self.syntax)
191 }
192 #[inline]
193 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
194 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
195 }
196 #[inline]
197 pub fn alter_token(&self) -> Option<SyntaxToken> {
198 support::token(&self.syntax, SyntaxKind::ALTER_KW)
199 }
200}
201
202#[derive(Debug, Clone, PartialEq, Eq, Hash)]
203pub struct AlterCollation {
204 pub(crate) syntax: SyntaxNode,
205}
206impl AlterCollation {
207 #[inline]
208 pub fn owner_to(&self) -> Option<OwnerTo> {
209 support::child(&self.syntax)
210 }
211 #[inline]
212 pub fn path(&self) -> Option<Path> {
213 support::child(&self.syntax)
214 }
215 #[inline]
216 pub fn refresh_version(&self) -> Option<RefreshVersion> {
217 support::child(&self.syntax)
218 }
219 #[inline]
220 pub fn rename_to(&self) -> Option<RenameTo> {
221 support::child(&self.syntax)
222 }
223 #[inline]
224 pub fn set_schema(&self) -> Option<SetSchema> {
225 support::child(&self.syntax)
226 }
227 #[inline]
228 pub fn alter_token(&self) -> Option<SyntaxToken> {
229 support::token(&self.syntax, SyntaxKind::ALTER_KW)
230 }
231 #[inline]
232 pub fn collation_token(&self) -> Option<SyntaxToken> {
233 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
234 }
235}
236
237#[derive(Debug, Clone, PartialEq, Eq, Hash)]
238pub struct AlterColumn {
239 pub(crate) syntax: SyntaxNode,
240}
241impl AlterColumn {
242 #[inline]
243 pub fn name_ref(&self) -> Option<NameRef> {
244 support::child(&self.syntax)
245 }
246 #[inline]
247 pub fn option(&self) -> Option<AlterColumnOption> {
248 support::child(&self.syntax)
249 }
250 #[inline]
251 pub fn alter_token(&self) -> Option<SyntaxToken> {
252 support::token(&self.syntax, SyntaxKind::ALTER_KW)
253 }
254 #[inline]
255 pub fn column_token(&self) -> Option<SyntaxToken> {
256 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
257 }
258}
259
260#[derive(Debug, Clone, PartialEq, Eq, Hash)]
261pub struct AlterConstraint {
262 pub(crate) syntax: SyntaxNode,
263}
264impl AlterConstraint {
265 #[inline]
266 pub fn option(&self) -> Option<AlterColumnOption> {
267 support::child(&self.syntax)
268 }
269 #[inline]
270 pub fn alter_token(&self) -> Option<SyntaxToken> {
271 support::token(&self.syntax, SyntaxKind::ALTER_KW)
272 }
273 #[inline]
274 pub fn constraint_token(&self) -> Option<SyntaxToken> {
275 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
276 }
277}
278
279#[derive(Debug, Clone, PartialEq, Eq, Hash)]
280pub struct AlterConversion {
281 pub(crate) syntax: SyntaxNode,
282}
283impl AlterConversion {
284 #[inline]
285 pub fn owner_to(&self) -> Option<OwnerTo> {
286 support::child(&self.syntax)
287 }
288 #[inline]
289 pub fn path(&self) -> Option<Path> {
290 support::child(&self.syntax)
291 }
292 #[inline]
293 pub fn rename_to(&self) -> Option<RenameTo> {
294 support::child(&self.syntax)
295 }
296 #[inline]
297 pub fn set_schema(&self) -> Option<SetSchema> {
298 support::child(&self.syntax)
299 }
300 #[inline]
301 pub fn alter_token(&self) -> Option<SyntaxToken> {
302 support::token(&self.syntax, SyntaxKind::ALTER_KW)
303 }
304 #[inline]
305 pub fn conversion_token(&self) -> Option<SyntaxToken> {
306 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
307 }
308}
309
310#[derive(Debug, Clone, PartialEq, Eq, Hash)]
311pub struct AlterDatabase {
312 pub(crate) syntax: SyntaxNode,
313}
314impl AlterDatabase {
315 #[inline]
316 pub fn create_database_option_list(&self) -> Option<CreateDatabaseOptionList> {
317 support::child(&self.syntax)
318 }
319 #[inline]
320 pub fn name_ref(&self) -> Option<NameRef> {
321 support::child(&self.syntax)
322 }
323 #[inline]
324 pub fn owner_to(&self) -> Option<OwnerTo> {
325 support::child(&self.syntax)
326 }
327 #[inline]
328 pub fn refresh_collation_version(&self) -> Option<RefreshCollationVersion> {
329 support::child(&self.syntax)
330 }
331 #[inline]
332 pub fn rename_to(&self) -> Option<RenameTo> {
333 support::child(&self.syntax)
334 }
335 #[inline]
336 pub fn reset_config_param(&self) -> Option<ResetConfigParam> {
337 support::child(&self.syntax)
338 }
339 #[inline]
340 pub fn set_config_param(&self) -> Option<SetConfigParam> {
341 support::child(&self.syntax)
342 }
343 #[inline]
344 pub fn set_tablespace(&self) -> Option<SetTablespace> {
345 support::child(&self.syntax)
346 }
347 #[inline]
348 pub fn alter_token(&self) -> Option<SyntaxToken> {
349 support::token(&self.syntax, SyntaxKind::ALTER_KW)
350 }
351 #[inline]
352 pub fn database_token(&self) -> Option<SyntaxToken> {
353 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
354 }
355}
356
357#[derive(Debug, Clone, PartialEq, Eq, Hash)]
358pub struct AlterDefaultPrivileges {
359 pub(crate) syntax: SyntaxNode,
360}
361impl AlterDefaultPrivileges {
362 #[inline]
363 pub fn grant_default_privileges(&self) -> Option<GrantDefaultPrivileges> {
364 support::child(&self.syntax)
365 }
366 #[inline]
367 pub fn name_refs(&self) -> AstChildren<NameRef> {
368 support::children(&self.syntax)
369 }
370 #[inline]
371 pub fn revoke_default_privileges(&self) -> Option<RevokeDefaultPrivileges> {
372 support::child(&self.syntax)
373 }
374 #[inline]
375 pub fn role_ref_list(&self) -> Option<RoleRefList> {
376 support::child(&self.syntax)
377 }
378 #[inline]
379 pub fn alter_token(&self) -> Option<SyntaxToken> {
380 support::token(&self.syntax, SyntaxKind::ALTER_KW)
381 }
382 #[inline]
383 pub fn default_token(&self) -> Option<SyntaxToken> {
384 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
385 }
386 #[inline]
387 pub fn for_token(&self) -> Option<SyntaxToken> {
388 support::token(&self.syntax, SyntaxKind::FOR_KW)
389 }
390 #[inline]
391 pub fn in_token(&self) -> Option<SyntaxToken> {
392 support::token(&self.syntax, SyntaxKind::IN_KW)
393 }
394 #[inline]
395 pub fn privileges_token(&self) -> Option<SyntaxToken> {
396 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
397 }
398 #[inline]
399 pub fn role_token(&self) -> Option<SyntaxToken> {
400 support::token(&self.syntax, SyntaxKind::ROLE_KW)
401 }
402 #[inline]
403 pub fn schema_token(&self) -> Option<SyntaxToken> {
404 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
405 }
406 #[inline]
407 pub fn user_token(&self) -> Option<SyntaxToken> {
408 support::token(&self.syntax, SyntaxKind::USER_KW)
409 }
410}
411
412#[derive(Debug, Clone, PartialEq, Eq, Hash)]
413pub struct AlterDomain {
414 pub(crate) syntax: SyntaxNode,
415}
416impl AlterDomain {
417 #[inline]
418 pub fn action(&self) -> Option<AlterDomainAction> {
419 support::child(&self.syntax)
420 }
421 #[inline]
422 pub fn path(&self) -> Option<Path> {
423 support::child(&self.syntax)
424 }
425 #[inline]
426 pub fn alter_token(&self) -> Option<SyntaxToken> {
427 support::token(&self.syntax, SyntaxKind::ALTER_KW)
428 }
429 #[inline]
430 pub fn domain_token(&self) -> Option<SyntaxToken> {
431 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
432 }
433}
434
435#[derive(Debug, Clone, PartialEq, Eq, Hash)]
436pub struct AlterEventTrigger {
437 pub(crate) syntax: SyntaxNode,
438}
439impl AlterEventTrigger {
440 #[inline]
441 pub fn name_ref(&self) -> Option<NameRef> {
442 support::child(&self.syntax)
443 }
444 #[inline]
445 pub fn owner_to(&self) -> Option<OwnerTo> {
446 support::child(&self.syntax)
447 }
448 #[inline]
449 pub fn rename_to(&self) -> Option<RenameTo> {
450 support::child(&self.syntax)
451 }
452 #[inline]
453 pub fn alter_token(&self) -> Option<SyntaxToken> {
454 support::token(&self.syntax, SyntaxKind::ALTER_KW)
455 }
456 #[inline]
457 pub fn always_token(&self) -> Option<SyntaxToken> {
458 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
459 }
460 #[inline]
461 pub fn disable_token(&self) -> Option<SyntaxToken> {
462 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
463 }
464 #[inline]
465 pub fn enable_token(&self) -> Option<SyntaxToken> {
466 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
467 }
468 #[inline]
469 pub fn event_token(&self) -> Option<SyntaxToken> {
470 support::token(&self.syntax, SyntaxKind::EVENT_KW)
471 }
472 #[inline]
473 pub fn replica_token(&self) -> Option<SyntaxToken> {
474 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
475 }
476 #[inline]
477 pub fn trigger_token(&self) -> Option<SyntaxToken> {
478 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
479 }
480}
481
482#[derive(Debug, Clone, PartialEq, Eq, Hash)]
483pub struct AlterExtension {
484 pub(crate) syntax: SyntaxNode,
485}
486impl AlterExtension {
487 #[inline]
488 pub fn name_ref(&self) -> Option<NameRef> {
489 support::child(&self.syntax)
490 }
491 #[inline]
492 pub fn alter_token(&self) -> Option<SyntaxToken> {
493 support::token(&self.syntax, SyntaxKind::ALTER_KW)
494 }
495 #[inline]
496 pub fn extension_token(&self) -> Option<SyntaxToken> {
497 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
498 }
499}
500
501#[derive(Debug, Clone, PartialEq, Eq, Hash)]
502pub struct AlterForeignDataWrapper {
503 pub(crate) syntax: SyntaxNode,
504}
505impl AlterForeignDataWrapper {
506 #[inline]
507 pub fn fdw_option_list(&self) -> Option<FdwOptionList> {
508 support::child(&self.syntax)
509 }
510 #[inline]
511 pub fn name_ref(&self) -> Option<NameRef> {
512 support::child(&self.syntax)
513 }
514 #[inline]
515 pub fn owner_to(&self) -> Option<OwnerTo> {
516 support::child(&self.syntax)
517 }
518 #[inline]
519 pub fn rename_to(&self) -> Option<RenameTo> {
520 support::child(&self.syntax)
521 }
522 #[inline]
523 pub fn alter_token(&self) -> Option<SyntaxToken> {
524 support::token(&self.syntax, SyntaxKind::ALTER_KW)
525 }
526 #[inline]
527 pub fn data_token(&self) -> Option<SyntaxToken> {
528 support::token(&self.syntax, SyntaxKind::DATA_KW)
529 }
530 #[inline]
531 pub fn foreign_token(&self) -> Option<SyntaxToken> {
532 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
533 }
534 #[inline]
535 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
536 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
537 }
538}
539
540#[derive(Debug, Clone, PartialEq, Eq, Hash)]
541pub struct AlterForeignTable {
542 pub(crate) syntax: SyntaxNode,
543}
544impl AlterForeignTable {
545 #[inline]
546 pub fn alter_table_actions(&self) -> AstChildren<AlterTableAction> {
547 support::children(&self.syntax)
548 }
549 #[inline]
550 pub fn if_exists(&self) -> Option<IfExists> {
551 support::child(&self.syntax)
552 }
553 #[inline]
554 pub fn relation_name(&self) -> Option<RelationName> {
555 support::child(&self.syntax)
556 }
557 #[inline]
558 pub fn rename_column(&self) -> Option<RenameColumn> {
559 support::child(&self.syntax)
560 }
561 #[inline]
562 pub fn rename_to(&self) -> Option<RenameTo> {
563 support::child(&self.syntax)
564 }
565 #[inline]
566 pub fn set_schema(&self) -> Option<SetSchema> {
567 support::child(&self.syntax)
568 }
569 #[inline]
570 pub fn alter_token(&self) -> Option<SyntaxToken> {
571 support::token(&self.syntax, SyntaxKind::ALTER_KW)
572 }
573 #[inline]
574 pub fn foreign_token(&self) -> Option<SyntaxToken> {
575 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
576 }
577 #[inline]
578 pub fn table_token(&self) -> Option<SyntaxToken> {
579 support::token(&self.syntax, SyntaxKind::TABLE_KW)
580 }
581}
582
583#[derive(Debug, Clone, PartialEq, Eq, Hash)]
584pub struct AlterFunction {
585 pub(crate) syntax: SyntaxNode,
586}
587impl AlterFunction {
588 #[inline]
589 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
590 support::child(&self.syntax)
591 }
592 #[inline]
593 pub fn func_option_list(&self) -> Option<FuncOptionList> {
594 support::child(&self.syntax)
595 }
596 #[inline]
597 pub fn function_sig(&self) -> Option<FunctionSig> {
598 support::child(&self.syntax)
599 }
600 #[inline]
601 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
602 support::child(&self.syntax)
603 }
604 #[inline]
605 pub fn owner_to(&self) -> Option<OwnerTo> {
606 support::child(&self.syntax)
607 }
608 #[inline]
609 pub fn rename_to(&self) -> Option<RenameTo> {
610 support::child(&self.syntax)
611 }
612 #[inline]
613 pub fn set_schema(&self) -> Option<SetSchema> {
614 support::child(&self.syntax)
615 }
616 #[inline]
617 pub fn alter_token(&self) -> Option<SyntaxToken> {
618 support::token(&self.syntax, SyntaxKind::ALTER_KW)
619 }
620 #[inline]
621 pub fn function_token(&self) -> Option<SyntaxToken> {
622 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
623 }
624 #[inline]
625 pub fn restrict_token(&self) -> Option<SyntaxToken> {
626 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
627 }
628}
629
630#[derive(Debug, Clone, PartialEq, Eq, Hash)]
631pub struct AlterGroup {
632 pub(crate) syntax: SyntaxNode,
633}
634impl AlterGroup {
635 #[inline]
636 pub fn name_refs(&self) -> AstChildren<NameRef> {
637 support::children(&self.syntax)
638 }
639 #[inline]
640 pub fn rename_to(&self) -> Option<RenameTo> {
641 support::child(&self.syntax)
642 }
643 #[inline]
644 pub fn role_ref(&self) -> Option<RoleRef> {
645 support::child(&self.syntax)
646 }
647 #[inline]
648 pub fn add_token(&self) -> Option<SyntaxToken> {
649 support::token(&self.syntax, SyntaxKind::ADD_KW)
650 }
651 #[inline]
652 pub fn alter_token(&self) -> Option<SyntaxToken> {
653 support::token(&self.syntax, SyntaxKind::ALTER_KW)
654 }
655 #[inline]
656 pub fn drop_token(&self) -> Option<SyntaxToken> {
657 support::token(&self.syntax, SyntaxKind::DROP_KW)
658 }
659 #[inline]
660 pub fn group_token(&self) -> Option<SyntaxToken> {
661 support::token(&self.syntax, SyntaxKind::GROUP_KW)
662 }
663 #[inline]
664 pub fn user_token(&self) -> Option<SyntaxToken> {
665 support::token(&self.syntax, SyntaxKind::USER_KW)
666 }
667}
668
669#[derive(Debug, Clone, PartialEq, Eq, Hash)]
670pub struct AlterIndex {
671 pub(crate) syntax: SyntaxNode,
672}
673impl AlterIndex {
674 #[inline]
675 pub fn alter_index_action(&self) -> Option<AlterIndexAction> {
676 support::child(&self.syntax)
677 }
678 #[inline]
679 pub fn if_exists(&self) -> Option<IfExists> {
680 support::child(&self.syntax)
681 }
682 #[inline]
683 pub fn name_ref(&self) -> Option<NameRef> {
684 support::child(&self.syntax)
685 }
686 #[inline]
687 pub fn owned_by_roles(&self) -> Option<OwnedByRoles> {
688 support::child(&self.syntax)
689 }
690 #[inline]
691 pub fn path(&self) -> Option<Path> {
692 support::child(&self.syntax)
693 }
694 #[inline]
695 pub fn all_token(&self) -> Option<SyntaxToken> {
696 support::token(&self.syntax, SyntaxKind::ALL_KW)
697 }
698 #[inline]
699 pub fn alter_token(&self) -> Option<SyntaxToken> {
700 support::token(&self.syntax, SyntaxKind::ALTER_KW)
701 }
702 #[inline]
703 pub fn in_token(&self) -> Option<SyntaxToken> {
704 support::token(&self.syntax, SyntaxKind::IN_KW)
705 }
706 #[inline]
707 pub fn index_token(&self) -> Option<SyntaxToken> {
708 support::token(&self.syntax, SyntaxKind::INDEX_KW)
709 }
710 #[inline]
711 pub fn nowait_token(&self) -> Option<SyntaxToken> {
712 support::token(&self.syntax, SyntaxKind::NOWAIT_KW)
713 }
714 #[inline]
715 pub fn set_token(&self) -> Option<SyntaxToken> {
716 support::token(&self.syntax, SyntaxKind::SET_KW)
717 }
718 #[inline]
719 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
720 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
721 }
722}
723
724#[derive(Debug, Clone, PartialEq, Eq, Hash)]
725pub struct AlterLanguage {
726 pub(crate) syntax: SyntaxNode,
727}
728impl AlterLanguage {
729 #[inline]
730 pub fn name_ref(&self) -> Option<NameRef> {
731 support::child(&self.syntax)
732 }
733 #[inline]
734 pub fn owner_to(&self) -> Option<OwnerTo> {
735 support::child(&self.syntax)
736 }
737 #[inline]
738 pub fn rename_to(&self) -> Option<RenameTo> {
739 support::child(&self.syntax)
740 }
741 #[inline]
742 pub fn alter_token(&self) -> Option<SyntaxToken> {
743 support::token(&self.syntax, SyntaxKind::ALTER_KW)
744 }
745 #[inline]
746 pub fn language_token(&self) -> Option<SyntaxToken> {
747 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
748 }
749}
750
751#[derive(Debug, Clone, PartialEq, Eq, Hash)]
752pub struct AlterLargeObject {
753 pub(crate) syntax: SyntaxNode,
754}
755impl AlterLargeObject {
756 #[inline]
757 pub fn alter_token(&self) -> Option<SyntaxToken> {
758 support::token(&self.syntax, SyntaxKind::ALTER_KW)
759 }
760 #[inline]
761 pub fn large_token(&self) -> Option<SyntaxToken> {
762 support::token(&self.syntax, SyntaxKind::LARGE_KW)
763 }
764 #[inline]
765 pub fn object_token(&self) -> Option<SyntaxToken> {
766 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
767 }
768}
769
770#[derive(Debug, Clone, PartialEq, Eq, Hash)]
771pub struct AlterMaterializedView {
772 pub(crate) syntax: SyntaxNode,
773}
774impl AlterMaterializedView {
775 #[inline]
776 pub fn action(&self) -> AstChildren<AlterMaterializedViewAction> {
777 support::children(&self.syntax)
778 }
779 #[inline]
780 pub fn if_exists(&self) -> Option<IfExists> {
781 support::child(&self.syntax)
782 }
783 #[inline]
784 pub fn name(&self) -> Option<Name> {
785 support::child(&self.syntax)
786 }
787 #[inline]
788 pub fn name_ref(&self) -> Option<NameRef> {
789 support::child(&self.syntax)
790 }
791 #[inline]
792 pub fn owned_by_roles(&self) -> Option<OwnedByRoles> {
793 support::child(&self.syntax)
794 }
795 #[inline]
796 pub fn path(&self) -> Option<Path> {
797 support::child(&self.syntax)
798 }
799 #[inline]
800 pub fn all_token(&self) -> Option<SyntaxToken> {
801 support::token(&self.syntax, SyntaxKind::ALL_KW)
802 }
803 #[inline]
804 pub fn alter_token(&self) -> Option<SyntaxToken> {
805 support::token(&self.syntax, SyntaxKind::ALTER_KW)
806 }
807 #[inline]
808 pub fn in_token(&self) -> Option<SyntaxToken> {
809 support::token(&self.syntax, SyntaxKind::IN_KW)
810 }
811 #[inline]
812 pub fn materialized_token(&self) -> Option<SyntaxToken> {
813 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
814 }
815 #[inline]
816 pub fn nowait_token(&self) -> Option<SyntaxToken> {
817 support::token(&self.syntax, SyntaxKind::NOWAIT_KW)
818 }
819 #[inline]
820 pub fn set_token(&self) -> Option<SyntaxToken> {
821 support::token(&self.syntax, SyntaxKind::SET_KW)
822 }
823 #[inline]
824 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
825 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
826 }
827 #[inline]
828 pub fn view_token(&self) -> Option<SyntaxToken> {
829 support::token(&self.syntax, SyntaxKind::VIEW_KW)
830 }
831}
832
833#[derive(Debug, Clone, PartialEq, Eq, Hash)]
834pub struct AlterOperator {
835 pub(crate) syntax: SyntaxNode,
836}
837impl AlterOperator {
838 #[inline]
839 pub fn op_sig(&self) -> Option<OpSig> {
840 support::child(&self.syntax)
841 }
842 #[inline]
843 pub fn owner_to(&self) -> Option<OwnerTo> {
844 support::child(&self.syntax)
845 }
846 #[inline]
847 pub fn set_options(&self) -> Option<SetOptions> {
848 support::child(&self.syntax)
849 }
850 #[inline]
851 pub fn set_schema(&self) -> Option<SetSchema> {
852 support::child(&self.syntax)
853 }
854 #[inline]
855 pub fn alter_token(&self) -> Option<SyntaxToken> {
856 support::token(&self.syntax, SyntaxKind::ALTER_KW)
857 }
858 #[inline]
859 pub fn operator_token(&self) -> Option<SyntaxToken> {
860 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
861 }
862}
863
864#[derive(Debug, Clone, PartialEq, Eq, Hash)]
865pub struct AlterOperatorClass {
866 pub(crate) syntax: SyntaxNode,
867}
868impl AlterOperatorClass {
869 #[inline]
870 pub fn name_ref(&self) -> Option<NameRef> {
871 support::child(&self.syntax)
872 }
873 #[inline]
874 pub fn owner_to(&self) -> Option<OwnerTo> {
875 support::child(&self.syntax)
876 }
877 #[inline]
878 pub fn path(&self) -> Option<Path> {
879 support::child(&self.syntax)
880 }
881 #[inline]
882 pub fn rename_to(&self) -> Option<RenameTo> {
883 support::child(&self.syntax)
884 }
885 #[inline]
886 pub fn set_schema(&self) -> Option<SetSchema> {
887 support::child(&self.syntax)
888 }
889 #[inline]
890 pub fn alter_token(&self) -> Option<SyntaxToken> {
891 support::token(&self.syntax, SyntaxKind::ALTER_KW)
892 }
893 #[inline]
894 pub fn class_token(&self) -> Option<SyntaxToken> {
895 support::token(&self.syntax, SyntaxKind::CLASS_KW)
896 }
897 #[inline]
898 pub fn operator_token(&self) -> Option<SyntaxToken> {
899 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
900 }
901 #[inline]
902 pub fn using_token(&self) -> Option<SyntaxToken> {
903 support::token(&self.syntax, SyntaxKind::USING_KW)
904 }
905}
906
907#[derive(Debug, Clone, PartialEq, Eq, Hash)]
908pub struct AlterOperatorFamily {
909 pub(crate) syntax: SyntaxNode,
910}
911impl AlterOperatorFamily {
912 #[inline]
913 pub fn add_op_class_options(&self) -> Option<AddOpClassOptions> {
914 support::child(&self.syntax)
915 }
916 #[inline]
917 pub fn drop_op_class_options(&self) -> Option<DropOpClassOptions> {
918 support::child(&self.syntax)
919 }
920 #[inline]
921 pub fn name_ref(&self) -> Option<NameRef> {
922 support::child(&self.syntax)
923 }
924 #[inline]
925 pub fn owner_to(&self) -> Option<OwnerTo> {
926 support::child(&self.syntax)
927 }
928 #[inline]
929 pub fn path(&self) -> Option<Path> {
930 support::child(&self.syntax)
931 }
932 #[inline]
933 pub fn rename_to(&self) -> Option<RenameTo> {
934 support::child(&self.syntax)
935 }
936 #[inline]
937 pub fn set_schema(&self) -> Option<SetSchema> {
938 support::child(&self.syntax)
939 }
940 #[inline]
941 pub fn alter_token(&self) -> Option<SyntaxToken> {
942 support::token(&self.syntax, SyntaxKind::ALTER_KW)
943 }
944 #[inline]
945 pub fn family_token(&self) -> Option<SyntaxToken> {
946 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
947 }
948 #[inline]
949 pub fn operator_token(&self) -> Option<SyntaxToken> {
950 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
951 }
952 #[inline]
953 pub fn using_token(&self) -> Option<SyntaxToken> {
954 support::token(&self.syntax, SyntaxKind::USING_KW)
955 }
956}
957
958#[derive(Debug, Clone, PartialEq, Eq, Hash)]
959pub struct AlterOption {
960 pub(crate) syntax: SyntaxNode,
961}
962impl AlterOption {
963 #[inline]
964 pub fn literal(&self) -> Option<Literal> {
965 support::child(&self.syntax)
966 }
967 #[inline]
968 pub fn name_ref(&self) -> Option<NameRef> {
969 support::child(&self.syntax)
970 }
971 #[inline]
972 pub fn add_token(&self) -> Option<SyntaxToken> {
973 support::token(&self.syntax, SyntaxKind::ADD_KW)
974 }
975 #[inline]
976 pub fn drop_token(&self) -> Option<SyntaxToken> {
977 support::token(&self.syntax, SyntaxKind::DROP_KW)
978 }
979 #[inline]
980 pub fn set_token(&self) -> Option<SyntaxToken> {
981 support::token(&self.syntax, SyntaxKind::SET_KW)
982 }
983}
984
985#[derive(Debug, Clone, PartialEq, Eq, Hash)]
986pub struct AlterOptionList {
987 pub(crate) syntax: SyntaxNode,
988}
989impl AlterOptionList {
990 #[inline]
991 pub fn alter_options(&self) -> AstChildren<AlterOption> {
992 support::children(&self.syntax)
993 }
994}
995
996#[derive(Debug, Clone, PartialEq, Eq, Hash)]
997pub struct AlterPolicy {
998 pub(crate) syntax: SyntaxNode,
999}
1000impl AlterPolicy {
1001 #[inline]
1002 pub fn name_ref(&self) -> Option<NameRef> {
1003 support::child(&self.syntax)
1004 }
1005 #[inline]
1006 pub fn on_table(&self) -> Option<OnTable> {
1007 support::child(&self.syntax)
1008 }
1009 #[inline]
1010 pub fn rename_to(&self) -> Option<RenameTo> {
1011 support::child(&self.syntax)
1012 }
1013 #[inline]
1014 pub fn role_ref_list(&self) -> Option<RoleRefList> {
1015 support::child(&self.syntax)
1016 }
1017 #[inline]
1018 pub fn using_expr_clause(&self) -> Option<UsingExprClause> {
1019 support::child(&self.syntax)
1020 }
1021 #[inline]
1022 pub fn with_check_expr_clause(&self) -> Option<WithCheckExprClause> {
1023 support::child(&self.syntax)
1024 }
1025 #[inline]
1026 pub fn alter_token(&self) -> Option<SyntaxToken> {
1027 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1028 }
1029 #[inline]
1030 pub fn policy_token(&self) -> Option<SyntaxToken> {
1031 support::token(&self.syntax, SyntaxKind::POLICY_KW)
1032 }
1033 #[inline]
1034 pub fn to_token(&self) -> Option<SyntaxToken> {
1035 support::token(&self.syntax, SyntaxKind::TO_KW)
1036 }
1037}
1038
1039#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1040pub struct AlterProcedure {
1041 pub(crate) syntax: SyntaxNode,
1042}
1043impl AlterProcedure {
1044 #[inline]
1045 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1046 support::child(&self.syntax)
1047 }
1048 #[inline]
1049 pub fn func_option_list(&self) -> Option<FuncOptionList> {
1050 support::child(&self.syntax)
1051 }
1052 #[inline]
1053 pub fn function_sig(&self) -> Option<FunctionSig> {
1054 support::child(&self.syntax)
1055 }
1056 #[inline]
1057 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1058 support::child(&self.syntax)
1059 }
1060 #[inline]
1061 pub fn owner_to(&self) -> Option<OwnerTo> {
1062 support::child(&self.syntax)
1063 }
1064 #[inline]
1065 pub fn rename_to(&self) -> Option<RenameTo> {
1066 support::child(&self.syntax)
1067 }
1068 #[inline]
1069 pub fn set_schema(&self) -> Option<SetSchema> {
1070 support::child(&self.syntax)
1071 }
1072 #[inline]
1073 pub fn alter_token(&self) -> Option<SyntaxToken> {
1074 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1075 }
1076 #[inline]
1077 pub fn procedure_token(&self) -> Option<SyntaxToken> {
1078 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
1079 }
1080 #[inline]
1081 pub fn restrict_token(&self) -> Option<SyntaxToken> {
1082 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
1083 }
1084}
1085
1086#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1087pub struct AlterPublication {
1088 pub(crate) syntax: SyntaxNode,
1089}
1090impl AlterPublication {
1091 #[inline]
1092 pub fn name_ref(&self) -> Option<NameRef> {
1093 support::child(&self.syntax)
1094 }
1095 #[inline]
1096 pub fn alter_token(&self) -> Option<SyntaxToken> {
1097 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1098 }
1099 #[inline]
1100 pub fn publication_token(&self) -> Option<SyntaxToken> {
1101 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
1102 }
1103}
1104
1105#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1106pub struct AlterRole {
1107 pub(crate) syntax: SyntaxNode,
1108}
1109impl AlterRole {
1110 #[inline]
1111 pub fn role_ref(&self) -> Option<RoleRef> {
1112 support::child(&self.syntax)
1113 }
1114 #[inline]
1115 pub fn alter_token(&self) -> Option<SyntaxToken> {
1116 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1117 }
1118 #[inline]
1119 pub fn role_token(&self) -> Option<SyntaxToken> {
1120 support::token(&self.syntax, SyntaxKind::ROLE_KW)
1121 }
1122}
1123
1124#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1125pub struct AlterRoutine {
1126 pub(crate) syntax: SyntaxNode,
1127}
1128impl AlterRoutine {
1129 #[inline]
1130 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1131 support::child(&self.syntax)
1132 }
1133 #[inline]
1134 pub fn func_option_list(&self) -> Option<FuncOptionList> {
1135 support::child(&self.syntax)
1136 }
1137 #[inline]
1138 pub fn function_sig(&self) -> Option<FunctionSig> {
1139 support::child(&self.syntax)
1140 }
1141 #[inline]
1142 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1143 support::child(&self.syntax)
1144 }
1145 #[inline]
1146 pub fn owner_to(&self) -> Option<OwnerTo> {
1147 support::child(&self.syntax)
1148 }
1149 #[inline]
1150 pub fn rename_to(&self) -> Option<RenameTo> {
1151 support::child(&self.syntax)
1152 }
1153 #[inline]
1154 pub fn set_schema(&self) -> Option<SetSchema> {
1155 support::child(&self.syntax)
1156 }
1157 #[inline]
1158 pub fn alter_token(&self) -> Option<SyntaxToken> {
1159 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1160 }
1161 #[inline]
1162 pub fn restrict_token(&self) -> Option<SyntaxToken> {
1163 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
1164 }
1165 #[inline]
1166 pub fn routine_token(&self) -> Option<SyntaxToken> {
1167 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
1168 }
1169}
1170
1171#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1172pub struct AlterRule {
1173 pub(crate) syntax: SyntaxNode,
1174}
1175impl AlterRule {
1176 #[inline]
1177 pub fn name_ref(&self) -> Option<NameRef> {
1178 support::child(&self.syntax)
1179 }
1180 #[inline]
1181 pub fn on_table(&self) -> Option<OnTable> {
1182 support::child(&self.syntax)
1183 }
1184 #[inline]
1185 pub fn rename_to(&self) -> Option<RenameTo> {
1186 support::child(&self.syntax)
1187 }
1188 #[inline]
1189 pub fn alter_token(&self) -> Option<SyntaxToken> {
1190 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1191 }
1192 #[inline]
1193 pub fn on_token(&self) -> Option<SyntaxToken> {
1194 support::token(&self.syntax, SyntaxKind::ON_KW)
1195 }
1196 #[inline]
1197 pub fn rule_token(&self) -> Option<SyntaxToken> {
1198 support::token(&self.syntax, SyntaxKind::RULE_KW)
1199 }
1200}
1201
1202#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1203pub struct AlterSchema {
1204 pub(crate) syntax: SyntaxNode,
1205}
1206impl AlterSchema {
1207 #[inline]
1208 pub fn name_ref(&self) -> Option<NameRef> {
1209 support::child(&self.syntax)
1210 }
1211 #[inline]
1212 pub fn owner_to(&self) -> Option<OwnerTo> {
1213 support::child(&self.syntax)
1214 }
1215 #[inline]
1216 pub fn rename_to(&self) -> Option<RenameTo> {
1217 support::child(&self.syntax)
1218 }
1219 #[inline]
1220 pub fn alter_token(&self) -> Option<SyntaxToken> {
1221 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1222 }
1223 #[inline]
1224 pub fn schema_token(&self) -> Option<SyntaxToken> {
1225 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
1226 }
1227}
1228
1229#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1230pub struct AlterSequence {
1231 pub(crate) syntax: SyntaxNode,
1232}
1233impl AlterSequence {
1234 #[inline]
1235 pub fn if_exists(&self) -> Option<IfExists> {
1236 support::child(&self.syntax)
1237 }
1238 #[inline]
1239 pub fn path(&self) -> Option<Path> {
1240 support::child(&self.syntax)
1241 }
1242 #[inline]
1243 pub fn alter_token(&self) -> Option<SyntaxToken> {
1244 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1245 }
1246 #[inline]
1247 pub fn sequence_token(&self) -> Option<SyntaxToken> {
1248 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
1249 }
1250}
1251
1252#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1253pub struct AlterServer {
1254 pub(crate) syntax: SyntaxNode,
1255}
1256impl AlterServer {
1257 #[inline]
1258 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
1259 support::child(&self.syntax)
1260 }
1261 #[inline]
1262 pub fn name_ref(&self) -> Option<NameRef> {
1263 support::child(&self.syntax)
1264 }
1265 #[inline]
1266 pub fn alter_token(&self) -> Option<SyntaxToken> {
1267 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1268 }
1269 #[inline]
1270 pub fn server_token(&self) -> Option<SyntaxToken> {
1271 support::token(&self.syntax, SyntaxKind::SERVER_KW)
1272 }
1273}
1274
1275#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1276pub struct AlterSetStatistics {
1277 pub(crate) syntax: SyntaxNode,
1278}
1279impl AlterSetStatistics {
1280 #[inline]
1281 pub fn literal(&self) -> Option<Literal> {
1282 support::child(&self.syntax)
1283 }
1284 #[inline]
1285 pub fn name_ref(&self) -> Option<NameRef> {
1286 support::child(&self.syntax)
1287 }
1288 #[inline]
1289 pub fn column_token(&self) -> Option<SyntaxToken> {
1290 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
1291 }
1292 #[inline]
1293 pub fn set_token(&self) -> Option<SyntaxToken> {
1294 support::token(&self.syntax, SyntaxKind::SET_KW)
1295 }
1296 #[inline]
1297 pub fn statistics_token(&self) -> Option<SyntaxToken> {
1298 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
1299 }
1300}
1301
1302#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1303pub struct AlterStatistics {
1304 pub(crate) syntax: SyntaxNode,
1305}
1306impl AlterStatistics {
1307 #[inline]
1308 pub fn path(&self) -> Option<Path> {
1309 support::child(&self.syntax)
1310 }
1311 #[inline]
1312 pub fn alter_token(&self) -> Option<SyntaxToken> {
1313 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1314 }
1315 #[inline]
1316 pub fn statistics_token(&self) -> Option<SyntaxToken> {
1317 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
1318 }
1319}
1320
1321#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1322pub struct AlterSubscription {
1323 pub(crate) syntax: SyntaxNode,
1324}
1325impl AlterSubscription {
1326 #[inline]
1327 pub fn name_ref(&self) -> Option<NameRef> {
1328 support::child(&self.syntax)
1329 }
1330 #[inline]
1331 pub fn alter_token(&self) -> Option<SyntaxToken> {
1332 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1333 }
1334 #[inline]
1335 pub fn subscription_token(&self) -> Option<SyntaxToken> {
1336 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
1337 }
1338}
1339
1340#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1341pub struct AlterSystem {
1342 pub(crate) syntax: SyntaxNode,
1343}
1344impl AlterSystem {
1345 #[inline]
1346 pub fn alter_token(&self) -> Option<SyntaxToken> {
1347 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1348 }
1349 #[inline]
1350 pub fn set_token(&self) -> Option<SyntaxToken> {
1351 support::token(&self.syntax, SyntaxKind::SET_KW)
1352 }
1353 #[inline]
1354 pub fn system_token(&self) -> Option<SyntaxToken> {
1355 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
1356 }
1357}
1358
1359#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1360pub struct AlterTable {
1361 pub(crate) syntax: SyntaxNode,
1362}
1363impl AlterTable {
1364 #[inline]
1365 pub fn actions(&self) -> AstChildren<AlterTableAction> {
1366 support::children(&self.syntax)
1367 }
1368 #[inline]
1369 pub fn relation_name(&self) -> Option<RelationName> {
1370 support::child(&self.syntax)
1371 }
1372 #[inline]
1373 pub fn alter_token(&self) -> Option<SyntaxToken> {
1374 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1375 }
1376 #[inline]
1377 pub fn table_token(&self) -> Option<SyntaxToken> {
1378 support::token(&self.syntax, SyntaxKind::TABLE_KW)
1379 }
1380}
1381
1382#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1383pub struct AlterTablespace {
1384 pub(crate) syntax: SyntaxNode,
1385}
1386impl AlterTablespace {
1387 #[inline]
1388 pub fn owner_to(&self) -> Option<OwnerTo> {
1389 support::child(&self.syntax)
1390 }
1391 #[inline]
1392 pub fn path(&self) -> Option<Path> {
1393 support::child(&self.syntax)
1394 }
1395 #[inline]
1396 pub fn rename_to(&self) -> Option<RenameTo> {
1397 support::child(&self.syntax)
1398 }
1399 #[inline]
1400 pub fn reset_options(&self) -> Option<ResetOptions> {
1401 support::child(&self.syntax)
1402 }
1403 #[inline]
1404 pub fn set_options(&self) -> Option<SetOptions> {
1405 support::child(&self.syntax)
1406 }
1407 #[inline]
1408 pub fn alter_token(&self) -> Option<SyntaxToken> {
1409 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1410 }
1411 #[inline]
1412 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
1413 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
1414 }
1415}
1416
1417#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1418pub struct AlterTextSearchConfiguration {
1419 pub(crate) syntax: SyntaxNode,
1420}
1421impl AlterTextSearchConfiguration {
1422 #[inline]
1423 pub fn owner_to(&self) -> Option<OwnerTo> {
1424 support::child(&self.syntax)
1425 }
1426 #[inline]
1427 pub fn path(&self) -> Option<Path> {
1428 support::child(&self.syntax)
1429 }
1430 #[inline]
1431 pub fn rename_to(&self) -> Option<RenameTo> {
1432 support::child(&self.syntax)
1433 }
1434 #[inline]
1435 pub fn set_schema(&self) -> Option<SetSchema> {
1436 support::child(&self.syntax)
1437 }
1438 #[inline]
1439 pub fn alter_token(&self) -> Option<SyntaxToken> {
1440 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1441 }
1442 #[inline]
1443 pub fn configuration_token(&self) -> Option<SyntaxToken> {
1444 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
1445 }
1446 #[inline]
1447 pub fn search_token(&self) -> Option<SyntaxToken> {
1448 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1449 }
1450 #[inline]
1451 pub fn text_token(&self) -> Option<SyntaxToken> {
1452 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1453 }
1454}
1455
1456#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1457pub struct AlterTextSearchDictionary {
1458 pub(crate) syntax: SyntaxNode,
1459}
1460impl AlterTextSearchDictionary {
1461 #[inline]
1462 pub fn attribute_list(&self) -> Option<AttributeList> {
1463 support::child(&self.syntax)
1464 }
1465 #[inline]
1466 pub fn owner_to(&self) -> Option<OwnerTo> {
1467 support::child(&self.syntax)
1468 }
1469 #[inline]
1470 pub fn path(&self) -> Option<Path> {
1471 support::child(&self.syntax)
1472 }
1473 #[inline]
1474 pub fn rename_to(&self) -> Option<RenameTo> {
1475 support::child(&self.syntax)
1476 }
1477 #[inline]
1478 pub fn set_schema(&self) -> Option<SetSchema> {
1479 support::child(&self.syntax)
1480 }
1481 #[inline]
1482 pub fn alter_token(&self) -> Option<SyntaxToken> {
1483 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1484 }
1485 #[inline]
1486 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
1487 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
1488 }
1489 #[inline]
1490 pub fn search_token(&self) -> Option<SyntaxToken> {
1491 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1492 }
1493 #[inline]
1494 pub fn text_token(&self) -> Option<SyntaxToken> {
1495 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1496 }
1497}
1498
1499#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1500pub struct AlterTextSearchParser {
1501 pub(crate) syntax: SyntaxNode,
1502}
1503impl AlterTextSearchParser {
1504 #[inline]
1505 pub fn path(&self) -> Option<Path> {
1506 support::child(&self.syntax)
1507 }
1508 #[inline]
1509 pub fn rename_to(&self) -> Option<RenameTo> {
1510 support::child(&self.syntax)
1511 }
1512 #[inline]
1513 pub fn set_schema(&self) -> Option<SetSchema> {
1514 support::child(&self.syntax)
1515 }
1516 #[inline]
1517 pub fn alter_token(&self) -> Option<SyntaxToken> {
1518 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1519 }
1520 #[inline]
1521 pub fn parser_token(&self) -> Option<SyntaxToken> {
1522 support::token(&self.syntax, SyntaxKind::PARSER_KW)
1523 }
1524 #[inline]
1525 pub fn search_token(&self) -> Option<SyntaxToken> {
1526 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1527 }
1528 #[inline]
1529 pub fn text_token(&self) -> Option<SyntaxToken> {
1530 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1531 }
1532}
1533
1534#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1535pub struct AlterTextSearchTemplate {
1536 pub(crate) syntax: SyntaxNode,
1537}
1538impl AlterTextSearchTemplate {
1539 #[inline]
1540 pub fn path(&self) -> Option<Path> {
1541 support::child(&self.syntax)
1542 }
1543 #[inline]
1544 pub fn rename_to(&self) -> Option<RenameTo> {
1545 support::child(&self.syntax)
1546 }
1547 #[inline]
1548 pub fn set_schema(&self) -> Option<SetSchema> {
1549 support::child(&self.syntax)
1550 }
1551 #[inline]
1552 pub fn alter_token(&self) -> Option<SyntaxToken> {
1553 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1554 }
1555 #[inline]
1556 pub fn search_token(&self) -> Option<SyntaxToken> {
1557 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
1558 }
1559 #[inline]
1560 pub fn template_token(&self) -> Option<SyntaxToken> {
1561 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
1562 }
1563 #[inline]
1564 pub fn text_token(&self) -> Option<SyntaxToken> {
1565 support::token(&self.syntax, SyntaxKind::TEXT_KW)
1566 }
1567}
1568
1569#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1570pub struct AlterTrigger {
1571 pub(crate) syntax: SyntaxNode,
1572}
1573impl AlterTrigger {
1574 #[inline]
1575 pub fn depends_on_extension(&self) -> Option<DependsOnExtension> {
1576 support::child(&self.syntax)
1577 }
1578 #[inline]
1579 pub fn name_ref(&self) -> Option<NameRef> {
1580 support::child(&self.syntax)
1581 }
1582 #[inline]
1583 pub fn no_depends_on_extension(&self) -> Option<NoDependsOnExtension> {
1584 support::child(&self.syntax)
1585 }
1586 #[inline]
1587 pub fn on_table(&self) -> Option<OnTable> {
1588 support::child(&self.syntax)
1589 }
1590 #[inline]
1591 pub fn rename_to(&self) -> Option<RenameTo> {
1592 support::child(&self.syntax)
1593 }
1594 #[inline]
1595 pub fn alter_token(&self) -> Option<SyntaxToken> {
1596 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1597 }
1598 #[inline]
1599 pub fn trigger_token(&self) -> Option<SyntaxToken> {
1600 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
1601 }
1602}
1603
1604#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1605pub struct AlterType {
1606 pub(crate) syntax: SyntaxNode,
1607}
1608impl AlterType {
1609 #[inline]
1610 pub fn path(&self) -> Option<Path> {
1611 support::child(&self.syntax)
1612 }
1613 #[inline]
1614 pub fn alter_token(&self) -> Option<SyntaxToken> {
1615 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1616 }
1617 #[inline]
1618 pub fn type_token(&self) -> Option<SyntaxToken> {
1619 support::token(&self.syntax, SyntaxKind::TYPE_KW)
1620 }
1621}
1622
1623#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1624pub struct AlterUser {
1625 pub(crate) syntax: SyntaxNode,
1626}
1627impl AlterUser {
1628 #[inline]
1629 pub fn role_ref(&self) -> Option<RoleRef> {
1630 support::child(&self.syntax)
1631 }
1632 #[inline]
1633 pub fn alter_token(&self) -> Option<SyntaxToken> {
1634 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1635 }
1636 #[inline]
1637 pub fn user_token(&self) -> Option<SyntaxToken> {
1638 support::token(&self.syntax, SyntaxKind::USER_KW)
1639 }
1640}
1641
1642#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1643pub struct AlterUserMapping {
1644 pub(crate) syntax: SyntaxNode,
1645}
1646impl AlterUserMapping {
1647 #[inline]
1648 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
1649 support::child(&self.syntax)
1650 }
1651 #[inline]
1652 pub fn role_ref(&self) -> Option<RoleRef> {
1653 support::child(&self.syntax)
1654 }
1655 #[inline]
1656 pub fn server_name(&self) -> Option<ServerName> {
1657 support::child(&self.syntax)
1658 }
1659 #[inline]
1660 pub fn alter_token(&self) -> Option<SyntaxToken> {
1661 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1662 }
1663 #[inline]
1664 pub fn for_token(&self) -> Option<SyntaxToken> {
1665 support::token(&self.syntax, SyntaxKind::FOR_KW)
1666 }
1667 #[inline]
1668 pub fn mapping_token(&self) -> Option<SyntaxToken> {
1669 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
1670 }
1671 #[inline]
1672 pub fn user_token(&self) -> Option<SyntaxToken> {
1673 support::token(&self.syntax, SyntaxKind::USER_KW)
1674 }
1675}
1676
1677#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1678pub struct AlterView {
1679 pub(crate) syntax: SyntaxNode,
1680}
1681impl AlterView {
1682 #[inline]
1683 pub fn path(&self) -> Option<Path> {
1684 support::child(&self.syntax)
1685 }
1686 #[inline]
1687 pub fn alter_token(&self) -> Option<SyntaxToken> {
1688 support::token(&self.syntax, SyntaxKind::ALTER_KW)
1689 }
1690 #[inline]
1691 pub fn view_token(&self) -> Option<SyntaxToken> {
1692 support::token(&self.syntax, SyntaxKind::VIEW_KW)
1693 }
1694}
1695
1696#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1697pub struct Analyze {
1698 pub(crate) syntax: SyntaxNode,
1699}
1700impl Analyze {
1701 #[inline]
1702 pub fn option_item_list(&self) -> Option<OptionItemList> {
1703 support::child(&self.syntax)
1704 }
1705 #[inline]
1706 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
1707 support::child(&self.syntax)
1708 }
1709 #[inline]
1710 pub fn analyse_token(&self) -> Option<SyntaxToken> {
1711 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
1712 }
1713 #[inline]
1714 pub fn analyze_token(&self) -> Option<SyntaxToken> {
1715 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
1716 }
1717 #[inline]
1718 pub fn verbose_token(&self) -> Option<SyntaxToken> {
1719 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
1720 }
1721}
1722
1723#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1724pub struct AnyFn {
1725 pub(crate) syntax: SyntaxNode,
1726}
1727impl AnyFn {
1728 #[inline]
1729 pub fn expr(&self) -> Option<Expr> {
1730 support::child(&self.syntax)
1731 }
1732 #[inline]
1733 pub fn select_variant(&self) -> Option<SelectVariant> {
1734 support::child(&self.syntax)
1735 }
1736 #[inline]
1737 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1738 support::token(&self.syntax, SyntaxKind::L_PAREN)
1739 }
1740 #[inline]
1741 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1742 support::token(&self.syntax, SyntaxKind::R_PAREN)
1743 }
1744 #[inline]
1745 pub fn any_token(&self) -> Option<SyntaxToken> {
1746 support::token(&self.syntax, SyntaxKind::ANY_KW)
1747 }
1748}
1749
1750#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1751pub struct Arg {
1752 pub(crate) syntax: SyntaxNode,
1753}
1754impl Arg {
1755 #[inline]
1756 pub fn expr(&self) -> Option<Expr> {
1757 support::child(&self.syntax)
1758 }
1759}
1760
1761#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1762pub struct ArgList {
1763 pub(crate) syntax: SyntaxNode,
1764}
1765impl ArgList {
1766 #[inline]
1767 pub fn args(&self) -> AstChildren<Expr> {
1768 support::children(&self.syntax)
1769 }
1770 #[inline]
1771 pub fn expr(&self) -> Option<Expr> {
1772 support::child(&self.syntax)
1773 }
1774 #[inline]
1775 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1776 support::token(&self.syntax, SyntaxKind::L_PAREN)
1777 }
1778 #[inline]
1779 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1780 support::token(&self.syntax, SyntaxKind::R_PAREN)
1781 }
1782 #[inline]
1783 pub fn star_token(&self) -> Option<SyntaxToken> {
1784 support::token(&self.syntax, SyntaxKind::STAR)
1785 }
1786 #[inline]
1787 pub fn all_token(&self) -> Option<SyntaxToken> {
1788 support::token(&self.syntax, SyntaxKind::ALL_KW)
1789 }
1790 #[inline]
1791 pub fn distinct_token(&self) -> Option<SyntaxToken> {
1792 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
1793 }
1794 #[inline]
1795 pub fn variadic_token(&self) -> Option<SyntaxToken> {
1796 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
1797 }
1798}
1799
1800#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1801pub struct ArrayExpr {
1802 pub(crate) syntax: SyntaxNode,
1803}
1804impl ArrayExpr {
1805 #[inline]
1806 pub fn exprs(&self) -> AstChildren<Expr> {
1807 support::children(&self.syntax)
1808 }
1809 #[inline]
1810 pub fn select(&self) -> Option<Select> {
1811 support::child(&self.syntax)
1812 }
1813 #[inline]
1814 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1815 support::token(&self.syntax, SyntaxKind::L_PAREN)
1816 }
1817 #[inline]
1818 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1819 support::token(&self.syntax, SyntaxKind::R_PAREN)
1820 }
1821 #[inline]
1822 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
1823 support::token(&self.syntax, SyntaxKind::L_BRACK)
1824 }
1825 #[inline]
1826 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
1827 support::token(&self.syntax, SyntaxKind::R_BRACK)
1828 }
1829 #[inline]
1830 pub fn array_token(&self) -> Option<SyntaxToken> {
1831 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
1832 }
1833}
1834
1835#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1836pub struct ArrayType {
1837 pub(crate) syntax: SyntaxNode,
1838}
1839impl ArrayType {
1840 #[inline]
1841 pub fn expr(&self) -> Option<Expr> {
1842 support::child(&self.syntax)
1843 }
1844 #[inline]
1845 pub fn name_ref(&self) -> Option<NameRef> {
1846 support::child(&self.syntax)
1847 }
1848 #[inline]
1849 pub fn ty(&self) -> Option<Type> {
1850 support::child(&self.syntax)
1851 }
1852 #[inline]
1853 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
1854 support::token(&self.syntax, SyntaxKind::L_BRACK)
1855 }
1856 #[inline]
1857 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
1858 support::token(&self.syntax, SyntaxKind::R_BRACK)
1859 }
1860 #[inline]
1861 pub fn array_token(&self) -> Option<SyntaxToken> {
1862 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
1863 }
1864}
1865
1866#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1867pub struct AsFuncOption {
1868 pub(crate) syntax: SyntaxNode,
1869}
1870impl AsFuncOption {
1871 #[inline]
1872 pub fn definition(&self) -> Option<Literal> {
1873 support::child(&self.syntax)
1874 }
1875 #[inline]
1876 pub fn link_symbol(&self) -> Option<Literal> {
1877 support::child(&self.syntax)
1878 }
1879 #[inline]
1880 pub fn obj_file(&self) -> Option<Literal> {
1881 support::child(&self.syntax)
1882 }
1883 #[inline]
1884 pub fn comma_token(&self) -> Option<SyntaxToken> {
1885 support::token(&self.syntax, SyntaxKind::COMMA)
1886 }
1887 #[inline]
1888 pub fn as_token(&self) -> Option<SyntaxToken> {
1889 support::token(&self.syntax, SyntaxKind::AS_KW)
1890 }
1891}
1892
1893#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1894pub struct AsName {
1895 pub(crate) syntax: SyntaxNode,
1896}
1897impl AsName {
1898 #[inline]
1899 pub fn name(&self) -> Option<Name> {
1900 support::child(&self.syntax)
1901 }
1902 #[inline]
1903 pub fn as_token(&self) -> Option<SyntaxToken> {
1904 support::token(&self.syntax, SyntaxKind::AS_KW)
1905 }
1906}
1907
1908#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1909pub struct AsPolicyType {
1910 pub(crate) syntax: SyntaxNode,
1911}
1912impl AsPolicyType {
1913 #[inline]
1914 pub fn as_token(&self) -> Option<SyntaxToken> {
1915 support::token(&self.syntax, SyntaxKind::AS_KW)
1916 }
1917 #[inline]
1918 pub fn ident_token(&self) -> Option<SyntaxToken> {
1919 support::token(&self.syntax, SyntaxKind::IDENT)
1920 }
1921}
1922
1923#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1924pub struct AtTimeZone {
1925 pub(crate) syntax: SyntaxNode,
1926}
1927impl AtTimeZone {
1928 #[inline]
1929 pub fn at_token(&self) -> Option<SyntaxToken> {
1930 support::token(&self.syntax, SyntaxKind::AT_KW)
1931 }
1932 #[inline]
1933 pub fn time_token(&self) -> Option<SyntaxToken> {
1934 support::token(&self.syntax, SyntaxKind::TIME_KW)
1935 }
1936 #[inline]
1937 pub fn zone_token(&self) -> Option<SyntaxToken> {
1938 support::token(&self.syntax, SyntaxKind::ZONE_KW)
1939 }
1940}
1941
1942#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1943pub struct AttachPartition {
1944 pub(crate) syntax: SyntaxNode,
1945}
1946impl AttachPartition {
1947 #[inline]
1948 pub fn partition_type(&self) -> Option<PartitionType> {
1949 support::child(&self.syntax)
1950 }
1951 #[inline]
1952 pub fn path(&self) -> Option<Path> {
1953 support::child(&self.syntax)
1954 }
1955 #[inline]
1956 pub fn attach_token(&self) -> Option<SyntaxToken> {
1957 support::token(&self.syntax, SyntaxKind::ATTACH_KW)
1958 }
1959 #[inline]
1960 pub fn partition_token(&self) -> Option<SyntaxToken> {
1961 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
1962 }
1963}
1964
1965#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1966pub struct AttributeList {
1967 pub(crate) syntax: SyntaxNode,
1968}
1969impl AttributeList {
1970 #[inline]
1971 pub fn attribute_options(&self) -> AstChildren<AttributeOption> {
1972 support::children(&self.syntax)
1973 }
1974 #[inline]
1975 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
1976 support::token(&self.syntax, SyntaxKind::L_PAREN)
1977 }
1978 #[inline]
1979 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
1980 support::token(&self.syntax, SyntaxKind::R_PAREN)
1981 }
1982}
1983
1984#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1985pub struct AttributeOption {
1986 pub(crate) syntax: SyntaxNode,
1987}
1988impl AttributeOption {
1989 #[inline]
1990 pub fn attribute_value(&self) -> Option<AttributeValue> {
1991 support::child(&self.syntax)
1992 }
1993 #[inline]
1994 pub fn name(&self) -> Option<Name> {
1995 support::child(&self.syntax)
1996 }
1997 #[inline]
1998 pub fn dot_token(&self) -> Option<SyntaxToken> {
1999 support::token(&self.syntax, SyntaxKind::DOT)
2000 }
2001 #[inline]
2002 pub fn eq_token(&self) -> Option<SyntaxToken> {
2003 support::token(&self.syntax, SyntaxKind::EQ)
2004 }
2005}
2006
2007#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2008pub struct AttributeValue {
2009 pub(crate) syntax: SyntaxNode,
2010}
2011impl AttributeValue {
2012 #[inline]
2013 pub fn literal(&self) -> Option<Literal> {
2014 support::child(&self.syntax)
2015 }
2016 #[inline]
2017 pub fn op(&self) -> Option<Op> {
2018 support::child(&self.syntax)
2019 }
2020 #[inline]
2021 pub fn ty(&self) -> Option<Type> {
2022 support::child(&self.syntax)
2023 }
2024 #[inline]
2025 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2026 support::token(&self.syntax, SyntaxKind::L_PAREN)
2027 }
2028 #[inline]
2029 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2030 support::token(&self.syntax, SyntaxKind::R_PAREN)
2031 }
2032 #[inline]
2033 pub fn none_token(&self) -> Option<SyntaxToken> {
2034 support::token(&self.syntax, SyntaxKind::NONE_KW)
2035 }
2036 #[inline]
2037 pub fn operator_token(&self) -> Option<SyntaxToken> {
2038 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
2039 }
2040}
2041
2042#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2043pub struct Begin {
2044 pub(crate) syntax: SyntaxNode,
2045}
2046impl Begin {
2047 #[inline]
2048 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
2049 support::child(&self.syntax)
2050 }
2051 #[inline]
2052 pub fn begin_token(&self) -> Option<SyntaxToken> {
2053 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
2054 }
2055 #[inline]
2056 pub fn start_token(&self) -> Option<SyntaxToken> {
2057 support::token(&self.syntax, SyntaxKind::START_KW)
2058 }
2059 #[inline]
2060 pub fn transaction_token(&self) -> Option<SyntaxToken> {
2061 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
2062 }
2063 #[inline]
2064 pub fn work_token(&self) -> Option<SyntaxToken> {
2065 support::token(&self.syntax, SyntaxKind::WORK_KW)
2066 }
2067}
2068
2069#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2070pub struct BeginFuncOption {
2071 pub(crate) syntax: SyntaxNode,
2072}
2073impl BeginFuncOption {
2074 #[inline]
2075 pub fn return_func_option(&self) -> Option<ReturnFuncOption> {
2076 support::child(&self.syntax)
2077 }
2078 #[inline]
2079 pub fn stmt(&self) -> Option<Stmt> {
2080 support::child(&self.syntax)
2081 }
2082 #[inline]
2083 pub fn semicolon_token(&self) -> Option<SyntaxToken> {
2084 support::token(&self.syntax, SyntaxKind::SEMICOLON)
2085 }
2086}
2087
2088#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2089pub struct BeginFuncOptionList {
2090 pub(crate) syntax: SyntaxNode,
2091}
2092impl BeginFuncOptionList {
2093 #[inline]
2094 pub fn begin_func_options(&self) -> AstChildren<BeginFuncOption> {
2095 support::children(&self.syntax)
2096 }
2097 #[inline]
2098 pub fn atomic_token(&self) -> Option<SyntaxToken> {
2099 support::token(&self.syntax, SyntaxKind::ATOMIC_KW)
2100 }
2101 #[inline]
2102 pub fn begin_token(&self) -> Option<SyntaxToken> {
2103 support::token(&self.syntax, SyntaxKind::BEGIN_KW)
2104 }
2105 #[inline]
2106 pub fn end_token(&self) -> Option<SyntaxToken> {
2107 support::token(&self.syntax, SyntaxKind::END_KW)
2108 }
2109}
2110
2111#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2112pub struct BetweenExpr {
2113 pub(crate) syntax: SyntaxNode,
2114}
2115impl BetweenExpr {
2116 #[inline]
2117 pub fn and_token(&self) -> Option<SyntaxToken> {
2118 support::token(&self.syntax, SyntaxKind::AND_KW)
2119 }
2120 #[inline]
2121 pub fn between_token(&self) -> Option<SyntaxToken> {
2122 support::token(&self.syntax, SyntaxKind::BETWEEN_KW)
2123 }
2124}
2125
2126#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2127pub struct BinExpr {
2128 pub(crate) syntax: SyntaxNode,
2129}
2130impl BinExpr {}
2131
2132#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2133pub struct BitType {
2134 pub(crate) syntax: SyntaxNode,
2135}
2136impl BitType {
2137 #[inline]
2138 pub fn arg_list(&self) -> Option<ArgList> {
2139 support::child(&self.syntax)
2140 }
2141 #[inline]
2142 pub fn bit_token(&self) -> Option<SyntaxToken> {
2143 support::token(&self.syntax, SyntaxKind::BIT_KW)
2144 }
2145 #[inline]
2146 pub fn varying_token(&self) -> Option<SyntaxToken> {
2147 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2148 }
2149}
2150
2151#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2152pub struct Call {
2153 pub(crate) syntax: SyntaxNode,
2154}
2155impl Call {
2156 #[inline]
2157 pub fn arg_list(&self) -> Option<ArgList> {
2158 support::child(&self.syntax)
2159 }
2160 #[inline]
2161 pub fn path(&self) -> Option<Path> {
2162 support::child(&self.syntax)
2163 }
2164 #[inline]
2165 pub fn call_token(&self) -> Option<SyntaxToken> {
2166 support::token(&self.syntax, SyntaxKind::CALL_KW)
2167 }
2168}
2169
2170#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2171pub struct CallExpr {
2172 pub(crate) syntax: SyntaxNode,
2173}
2174impl CallExpr {
2175 #[inline]
2176 pub fn all_fn(&self) -> Option<AllFn> {
2177 support::child(&self.syntax)
2178 }
2179 #[inline]
2180 pub fn any_fn(&self) -> Option<AnyFn> {
2181 support::child(&self.syntax)
2182 }
2183 #[inline]
2184 pub fn arg_list(&self) -> Option<ArgList> {
2185 support::child(&self.syntax)
2186 }
2187 #[inline]
2188 pub fn exists_fn(&self) -> Option<ExistsFn> {
2189 support::child(&self.syntax)
2190 }
2191 #[inline]
2192 pub fn expr(&self) -> Option<Expr> {
2193 support::child(&self.syntax)
2194 }
2195 #[inline]
2196 pub fn extract_fn(&self) -> Option<ExtractFn> {
2197 support::child(&self.syntax)
2198 }
2199 #[inline]
2200 pub fn filter_clause(&self) -> Option<FilterClause> {
2201 support::child(&self.syntax)
2202 }
2203 #[inline]
2204 pub fn json_array_agg_fn(&self) -> Option<JsonArrayAggFn> {
2205 support::child(&self.syntax)
2206 }
2207 #[inline]
2208 pub fn json_array_fn(&self) -> Option<JsonArrayFn> {
2209 support::child(&self.syntax)
2210 }
2211 #[inline]
2212 pub fn json_exists_fn(&self) -> Option<JsonExistsFn> {
2213 support::child(&self.syntax)
2214 }
2215 #[inline]
2216 pub fn json_fn(&self) -> Option<JsonFn> {
2217 support::child(&self.syntax)
2218 }
2219 #[inline]
2220 pub fn json_object_agg_fn(&self) -> Option<JsonObjectAggFn> {
2221 support::child(&self.syntax)
2222 }
2223 #[inline]
2224 pub fn json_object_fn(&self) -> Option<JsonObjectFn> {
2225 support::child(&self.syntax)
2226 }
2227 #[inline]
2228 pub fn json_query_fn(&self) -> Option<JsonQueryFn> {
2229 support::child(&self.syntax)
2230 }
2231 #[inline]
2232 pub fn json_scalar_fn(&self) -> Option<JsonScalarFn> {
2233 support::child(&self.syntax)
2234 }
2235 #[inline]
2236 pub fn json_serialize_fn(&self) -> Option<JsonSerializeFn> {
2237 support::child(&self.syntax)
2238 }
2239 #[inline]
2240 pub fn json_value_fn(&self) -> Option<JsonValueFn> {
2241 support::child(&self.syntax)
2242 }
2243 #[inline]
2244 pub fn over_clause(&self) -> Option<OverClause> {
2245 support::child(&self.syntax)
2246 }
2247 #[inline]
2248 pub fn overlay_fn(&self) -> Option<OverlayFn> {
2249 support::child(&self.syntax)
2250 }
2251 #[inline]
2252 pub fn position_fn(&self) -> Option<PositionFn> {
2253 support::child(&self.syntax)
2254 }
2255 #[inline]
2256 pub fn some_fn(&self) -> Option<SomeFn> {
2257 support::child(&self.syntax)
2258 }
2259 #[inline]
2260 pub fn substring_fn(&self) -> Option<SubstringFn> {
2261 support::child(&self.syntax)
2262 }
2263 #[inline]
2264 pub fn trim_fn(&self) -> Option<TrimFn> {
2265 support::child(&self.syntax)
2266 }
2267 #[inline]
2268 pub fn within_clause(&self) -> Option<WithinClause> {
2269 support::child(&self.syntax)
2270 }
2271 #[inline]
2272 pub fn xml_element_fn(&self) -> Option<XmlElementFn> {
2273 support::child(&self.syntax)
2274 }
2275 #[inline]
2276 pub fn xml_exists_fn(&self) -> Option<XmlExistsFn> {
2277 support::child(&self.syntax)
2278 }
2279 #[inline]
2280 pub fn xml_forest_fn(&self) -> Option<XmlForestFn> {
2281 support::child(&self.syntax)
2282 }
2283 #[inline]
2284 pub fn xml_parse_fn(&self) -> Option<XmlParseFn> {
2285 support::child(&self.syntax)
2286 }
2287 #[inline]
2288 pub fn xml_pi_fn(&self) -> Option<XmlPiFn> {
2289 support::child(&self.syntax)
2290 }
2291 #[inline]
2292 pub fn xml_root_fn(&self) -> Option<XmlRootFn> {
2293 support::child(&self.syntax)
2294 }
2295 #[inline]
2296 pub fn xml_serialize_fn(&self) -> Option<XmlSerializeFn> {
2297 support::child(&self.syntax)
2298 }
2299}
2300
2301#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2302pub struct Cascade {
2303 pub(crate) syntax: SyntaxNode,
2304}
2305impl Cascade {
2306 #[inline]
2307 pub fn cascade_token(&self) -> Option<SyntaxToken> {
2308 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
2309 }
2310}
2311
2312#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2313pub struct CaseExpr {
2314 pub(crate) syntax: SyntaxNode,
2315}
2316impl CaseExpr {
2317 #[inline]
2318 pub fn else_clause(&self) -> Option<ElseClause> {
2319 support::child(&self.syntax)
2320 }
2321 #[inline]
2322 pub fn expr(&self) -> Option<Expr> {
2323 support::child(&self.syntax)
2324 }
2325 #[inline]
2326 pub fn when_clause_list(&self) -> Option<WhenClauseList> {
2327 support::child(&self.syntax)
2328 }
2329 #[inline]
2330 pub fn case_token(&self) -> Option<SyntaxToken> {
2331 support::token(&self.syntax, SyntaxKind::CASE_KW)
2332 }
2333}
2334
2335#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2336pub struct CastExpr {
2337 pub(crate) syntax: SyntaxNode,
2338}
2339impl CastExpr {
2340 #[inline]
2341 pub fn colon_colon(&self) -> Option<ColonColon> {
2342 support::child(&self.syntax)
2343 }
2344 #[inline]
2345 pub fn expr(&self) -> Option<Expr> {
2346 support::child(&self.syntax)
2347 }
2348 #[inline]
2349 pub fn literal(&self) -> Option<Literal> {
2350 support::child(&self.syntax)
2351 }
2352 #[inline]
2353 pub fn ty(&self) -> Option<Type> {
2354 support::child(&self.syntax)
2355 }
2356 #[inline]
2357 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2358 support::token(&self.syntax, SyntaxKind::L_PAREN)
2359 }
2360 #[inline]
2361 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2362 support::token(&self.syntax, SyntaxKind::R_PAREN)
2363 }
2364 #[inline]
2365 pub fn as_token(&self) -> Option<SyntaxToken> {
2366 support::token(&self.syntax, SyntaxKind::AS_KW)
2367 }
2368 #[inline]
2369 pub fn cast_token(&self) -> Option<SyntaxToken> {
2370 support::token(&self.syntax, SyntaxKind::CAST_KW)
2371 }
2372 #[inline]
2373 pub fn treat_token(&self) -> Option<SyntaxToken> {
2374 support::token(&self.syntax, SyntaxKind::TREAT_KW)
2375 }
2376}
2377
2378#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2379pub struct CastSig {
2380 pub(crate) syntax: SyntaxNode,
2381}
2382impl CastSig {
2383 #[inline]
2384 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2385 support::token(&self.syntax, SyntaxKind::L_PAREN)
2386 }
2387 #[inline]
2388 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2389 support::token(&self.syntax, SyntaxKind::R_PAREN)
2390 }
2391 #[inline]
2392 pub fn as_token(&self) -> Option<SyntaxToken> {
2393 support::token(&self.syntax, SyntaxKind::AS_KW)
2394 }
2395}
2396
2397#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2398pub struct CharType {
2399 pub(crate) syntax: SyntaxNode,
2400}
2401impl CharType {
2402 #[inline]
2403 pub fn arg_list(&self) -> Option<ArgList> {
2404 support::child(&self.syntax)
2405 }
2406 #[inline]
2407 pub fn char_token(&self) -> Option<SyntaxToken> {
2408 support::token(&self.syntax, SyntaxKind::CHAR_KW)
2409 }
2410 #[inline]
2411 pub fn character_token(&self) -> Option<SyntaxToken> {
2412 support::token(&self.syntax, SyntaxKind::CHARACTER_KW)
2413 }
2414 #[inline]
2415 pub fn nchar_token(&self) -> Option<SyntaxToken> {
2416 support::token(&self.syntax, SyntaxKind::NCHAR_KW)
2417 }
2418 #[inline]
2419 pub fn varchar_token(&self) -> Option<SyntaxToken> {
2420 support::token(&self.syntax, SyntaxKind::VARCHAR_KW)
2421 }
2422 #[inline]
2423 pub fn varying_token(&self) -> Option<SyntaxToken> {
2424 support::token(&self.syntax, SyntaxKind::VARYING_KW)
2425 }
2426}
2427
2428#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2429pub struct CheckConstraint {
2430 pub(crate) syntax: SyntaxNode,
2431}
2432impl CheckConstraint {
2433 #[inline]
2434 pub fn constraint_name(&self) -> Option<ConstraintName> {
2435 support::child(&self.syntax)
2436 }
2437 #[inline]
2438 pub fn expr(&self) -> Option<Expr> {
2439 support::child(&self.syntax)
2440 }
2441 #[inline]
2442 pub fn no_inherit(&self) -> Option<NoInherit> {
2443 support::child(&self.syntax)
2444 }
2445 #[inline]
2446 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2447 support::token(&self.syntax, SyntaxKind::L_PAREN)
2448 }
2449 #[inline]
2450 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2451 support::token(&self.syntax, SyntaxKind::R_PAREN)
2452 }
2453 #[inline]
2454 pub fn check_token(&self) -> Option<SyntaxToken> {
2455 support::token(&self.syntax, SyntaxKind::CHECK_KW)
2456 }
2457}
2458
2459#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2460pub struct Checkpoint {
2461 pub(crate) syntax: SyntaxNode,
2462}
2463impl Checkpoint {
2464 #[inline]
2465 pub fn checkpoint_token(&self) -> Option<SyntaxToken> {
2466 support::token(&self.syntax, SyntaxKind::CHECKPOINT_KW)
2467 }
2468}
2469
2470#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2471pub struct Close {
2472 pub(crate) syntax: SyntaxNode,
2473}
2474impl Close {
2475 #[inline]
2476 pub fn name_ref(&self) -> Option<NameRef> {
2477 support::child(&self.syntax)
2478 }
2479 #[inline]
2480 pub fn close_token(&self) -> Option<SyntaxToken> {
2481 support::token(&self.syntax, SyntaxKind::CLOSE_KW)
2482 }
2483}
2484
2485#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2486pub struct Cluster {
2487 pub(crate) syntax: SyntaxNode,
2488}
2489impl Cluster {
2490 #[inline]
2491 pub fn option_item_list(&self) -> Option<OptionItemList> {
2492 support::child(&self.syntax)
2493 }
2494 #[inline]
2495 pub fn path(&self) -> Option<Path> {
2496 support::child(&self.syntax)
2497 }
2498 #[inline]
2499 pub fn using_method(&self) -> Option<UsingMethod> {
2500 support::child(&self.syntax)
2501 }
2502 #[inline]
2503 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2504 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2505 }
2506 #[inline]
2507 pub fn verbose_token(&self) -> Option<SyntaxToken> {
2508 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
2509 }
2510}
2511
2512#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2513pub struct ClusterOn {
2514 pub(crate) syntax: SyntaxNode,
2515}
2516impl ClusterOn {
2517 #[inline]
2518 pub fn cluster_token(&self) -> Option<SyntaxToken> {
2519 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
2520 }
2521 #[inline]
2522 pub fn on_token(&self) -> Option<SyntaxToken> {
2523 support::token(&self.syntax, SyntaxKind::ON_KW)
2524 }
2525}
2526
2527#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2528pub struct Collate {
2529 pub(crate) syntax: SyntaxNode,
2530}
2531impl Collate {
2532 #[inline]
2533 pub fn path(&self) -> Option<Path> {
2534 support::child(&self.syntax)
2535 }
2536 #[inline]
2537 pub fn collate_token(&self) -> Option<SyntaxToken> {
2538 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
2539 }
2540}
2541
2542#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2543pub struct ColonColon {
2544 pub(crate) syntax: SyntaxNode,
2545}
2546impl ColonColon {
2547 #[inline]
2548 pub fn colon_token(&self) -> Option<SyntaxToken> {
2549 support::token(&self.syntax, SyntaxKind::COLON)
2550 }
2551}
2552
2553#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2554pub struct ColonEq {
2555 pub(crate) syntax: SyntaxNode,
2556}
2557impl ColonEq {
2558 #[inline]
2559 pub fn colon_token(&self) -> Option<SyntaxToken> {
2560 support::token(&self.syntax, SyntaxKind::COLON)
2561 }
2562 #[inline]
2563 pub fn eq_token(&self) -> Option<SyntaxToken> {
2564 support::token(&self.syntax, SyntaxKind::EQ)
2565 }
2566}
2567
2568#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2569pub struct Column {
2570 pub(crate) syntax: SyntaxNode,
2571}
2572impl Column {
2573 #[inline]
2574 pub fn collate(&self) -> Option<Collate> {
2575 support::child(&self.syntax)
2576 }
2577 #[inline]
2578 pub fn compression_method(&self) -> Option<CompressionMethod> {
2579 support::child(&self.syntax)
2580 }
2581 #[inline]
2582 pub fn constraints(&self) -> AstChildren<ColumnConstraint> {
2583 support::children(&self.syntax)
2584 }
2585 #[inline]
2586 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
2587 support::child(&self.syntax)
2588 }
2589 #[inline]
2590 pub fn enforced(&self) -> Option<Enforced> {
2591 support::child(&self.syntax)
2592 }
2593 #[inline]
2594 pub fn index_expr(&self) -> Option<IndexExpr> {
2595 support::child(&self.syntax)
2596 }
2597 #[inline]
2598 pub fn initially_deferred_constraint_option(
2599 &self,
2600 ) -> Option<InitiallyDeferredConstraintOption> {
2601 support::child(&self.syntax)
2602 }
2603 #[inline]
2604 pub fn initially_immediate_constraint_option(
2605 &self,
2606 ) -> Option<InitiallyImmediateConstraintOption> {
2607 support::child(&self.syntax)
2608 }
2609 #[inline]
2610 pub fn name(&self) -> Option<Name> {
2611 support::child(&self.syntax)
2612 }
2613 #[inline]
2614 pub fn name_ref(&self) -> Option<NameRef> {
2615 support::child(&self.syntax)
2616 }
2617 #[inline]
2618 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
2619 support::child(&self.syntax)
2620 }
2621 #[inline]
2622 pub fn not_enforced(&self) -> Option<NotEnforced> {
2623 support::child(&self.syntax)
2624 }
2625 #[inline]
2626 pub fn storage(&self) -> Option<Storage> {
2627 support::child(&self.syntax)
2628 }
2629 #[inline]
2630 pub fn ty(&self) -> Option<Type> {
2631 support::child(&self.syntax)
2632 }
2633 #[inline]
2634 pub fn with_options(&self) -> Option<WithOptions> {
2635 support::child(&self.syntax)
2636 }
2637 #[inline]
2638 pub fn period_token(&self) -> Option<SyntaxToken> {
2639 support::token(&self.syntax, SyntaxKind::PERIOD_KW)
2640 }
2641}
2642
2643#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2644pub struct ColumnList {
2645 pub(crate) syntax: SyntaxNode,
2646}
2647impl ColumnList {
2648 #[inline]
2649 pub fn columns(&self) -> AstChildren<Column> {
2650 support::children(&self.syntax)
2651 }
2652 #[inline]
2653 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2654 support::token(&self.syntax, SyntaxKind::L_PAREN)
2655 }
2656 #[inline]
2657 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2658 support::token(&self.syntax, SyntaxKind::R_PAREN)
2659 }
2660}
2661
2662#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2663pub struct CommentOn {
2664 pub(crate) syntax: SyntaxNode,
2665}
2666impl CommentOn {
2667 #[inline]
2668 pub fn aggregate(&self) -> Option<Aggregate> {
2669 support::child(&self.syntax)
2670 }
2671 #[inline]
2672 pub fn cast_sig(&self) -> Option<CastSig> {
2673 support::child(&self.syntax)
2674 }
2675 #[inline]
2676 pub fn function_sig(&self) -> Option<FunctionSig> {
2677 support::child(&self.syntax)
2678 }
2679 #[inline]
2680 pub fn literal(&self) -> Option<Literal> {
2681 support::child(&self.syntax)
2682 }
2683 #[inline]
2684 pub fn name_ref(&self) -> Option<NameRef> {
2685 support::child(&self.syntax)
2686 }
2687 #[inline]
2688 pub fn op(&self) -> Option<Op> {
2689 support::child(&self.syntax)
2690 }
2691 #[inline]
2692 pub fn path(&self) -> Option<Path> {
2693 support::child(&self.syntax)
2694 }
2695 #[inline]
2696 pub fn ty(&self) -> Option<Type> {
2697 support::child(&self.syntax)
2698 }
2699 #[inline]
2700 pub fn using_method(&self) -> Option<UsingMethod> {
2701 support::child(&self.syntax)
2702 }
2703 #[inline]
2704 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
2705 support::token(&self.syntax, SyntaxKind::L_PAREN)
2706 }
2707 #[inline]
2708 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
2709 support::token(&self.syntax, SyntaxKind::R_PAREN)
2710 }
2711 #[inline]
2712 pub fn comma_token(&self) -> Option<SyntaxToken> {
2713 support::token(&self.syntax, SyntaxKind::COMMA)
2714 }
2715 #[inline]
2716 pub fn access_token(&self) -> Option<SyntaxToken> {
2717 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
2718 }
2719 #[inline]
2720 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
2721 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
2722 }
2723 #[inline]
2724 pub fn cast_token(&self) -> Option<SyntaxToken> {
2725 support::token(&self.syntax, SyntaxKind::CAST_KW)
2726 }
2727 #[inline]
2728 pub fn class_token(&self) -> Option<SyntaxToken> {
2729 support::token(&self.syntax, SyntaxKind::CLASS_KW)
2730 }
2731 #[inline]
2732 pub fn collation_token(&self) -> Option<SyntaxToken> {
2733 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
2734 }
2735 #[inline]
2736 pub fn column_token(&self) -> Option<SyntaxToken> {
2737 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
2738 }
2739 #[inline]
2740 pub fn comment_token(&self) -> Option<SyntaxToken> {
2741 support::token(&self.syntax, SyntaxKind::COMMENT_KW)
2742 }
2743 #[inline]
2744 pub fn configuration_token(&self) -> Option<SyntaxToken> {
2745 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
2746 }
2747 #[inline]
2748 pub fn constraint_token(&self) -> Option<SyntaxToken> {
2749 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
2750 }
2751 #[inline]
2752 pub fn conversion_token(&self) -> Option<SyntaxToken> {
2753 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
2754 }
2755 #[inline]
2756 pub fn data_token(&self) -> Option<SyntaxToken> {
2757 support::token(&self.syntax, SyntaxKind::DATA_KW)
2758 }
2759 #[inline]
2760 pub fn database_token(&self) -> Option<SyntaxToken> {
2761 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
2762 }
2763 #[inline]
2764 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
2765 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
2766 }
2767 #[inline]
2768 pub fn domain_token(&self) -> Option<SyntaxToken> {
2769 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
2770 }
2771 #[inline]
2772 pub fn event_token(&self) -> Option<SyntaxToken> {
2773 support::token(&self.syntax, SyntaxKind::EVENT_KW)
2774 }
2775 #[inline]
2776 pub fn extension_token(&self) -> Option<SyntaxToken> {
2777 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
2778 }
2779 #[inline]
2780 pub fn family_token(&self) -> Option<SyntaxToken> {
2781 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
2782 }
2783 #[inline]
2784 pub fn for_token(&self) -> Option<SyntaxToken> {
2785 support::token(&self.syntax, SyntaxKind::FOR_KW)
2786 }
2787 #[inline]
2788 pub fn foreign_token(&self) -> Option<SyntaxToken> {
2789 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
2790 }
2791 #[inline]
2792 pub fn function_token(&self) -> Option<SyntaxToken> {
2793 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
2794 }
2795 #[inline]
2796 pub fn index_token(&self) -> Option<SyntaxToken> {
2797 support::token(&self.syntax, SyntaxKind::INDEX_KW)
2798 }
2799 #[inline]
2800 pub fn is_token(&self) -> Option<SyntaxToken> {
2801 support::token(&self.syntax, SyntaxKind::IS_KW)
2802 }
2803 #[inline]
2804 pub fn language_token(&self) -> Option<SyntaxToken> {
2805 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
2806 }
2807 #[inline]
2808 pub fn large_token(&self) -> Option<SyntaxToken> {
2809 support::token(&self.syntax, SyntaxKind::LARGE_KW)
2810 }
2811 #[inline]
2812 pub fn materialized_token(&self) -> Option<SyntaxToken> {
2813 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
2814 }
2815 #[inline]
2816 pub fn method_token(&self) -> Option<SyntaxToken> {
2817 support::token(&self.syntax, SyntaxKind::METHOD_KW)
2818 }
2819 #[inline]
2820 pub fn null_token(&self) -> Option<SyntaxToken> {
2821 support::token(&self.syntax, SyntaxKind::NULL_KW)
2822 }
2823 #[inline]
2824 pub fn object_token(&self) -> Option<SyntaxToken> {
2825 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
2826 }
2827 #[inline]
2828 pub fn on_token(&self) -> Option<SyntaxToken> {
2829 support::token(&self.syntax, SyntaxKind::ON_KW)
2830 }
2831 #[inline]
2832 pub fn operator_token(&self) -> Option<SyntaxToken> {
2833 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
2834 }
2835 #[inline]
2836 pub fn parser_token(&self) -> Option<SyntaxToken> {
2837 support::token(&self.syntax, SyntaxKind::PARSER_KW)
2838 }
2839 #[inline]
2840 pub fn policy_token(&self) -> Option<SyntaxToken> {
2841 support::token(&self.syntax, SyntaxKind::POLICY_KW)
2842 }
2843 #[inline]
2844 pub fn procedural_token(&self) -> Option<SyntaxToken> {
2845 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
2846 }
2847 #[inline]
2848 pub fn procedure_token(&self) -> Option<SyntaxToken> {
2849 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
2850 }
2851 #[inline]
2852 pub fn publication_token(&self) -> Option<SyntaxToken> {
2853 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
2854 }
2855 #[inline]
2856 pub fn role_token(&self) -> Option<SyntaxToken> {
2857 support::token(&self.syntax, SyntaxKind::ROLE_KW)
2858 }
2859 #[inline]
2860 pub fn routine_token(&self) -> Option<SyntaxToken> {
2861 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
2862 }
2863 #[inline]
2864 pub fn rule_token(&self) -> Option<SyntaxToken> {
2865 support::token(&self.syntax, SyntaxKind::RULE_KW)
2866 }
2867 #[inline]
2868 pub fn schema_token(&self) -> Option<SyntaxToken> {
2869 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
2870 }
2871 #[inline]
2872 pub fn search_token(&self) -> Option<SyntaxToken> {
2873 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
2874 }
2875 #[inline]
2876 pub fn sequence_token(&self) -> Option<SyntaxToken> {
2877 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
2878 }
2879 #[inline]
2880 pub fn server_token(&self) -> Option<SyntaxToken> {
2881 support::token(&self.syntax, SyntaxKind::SERVER_KW)
2882 }
2883 #[inline]
2884 pub fn statistics_token(&self) -> Option<SyntaxToken> {
2885 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
2886 }
2887 #[inline]
2888 pub fn subscription_token(&self) -> Option<SyntaxToken> {
2889 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
2890 }
2891 #[inline]
2892 pub fn table_token(&self) -> Option<SyntaxToken> {
2893 support::token(&self.syntax, SyntaxKind::TABLE_KW)
2894 }
2895 #[inline]
2896 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
2897 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
2898 }
2899 #[inline]
2900 pub fn template_token(&self) -> Option<SyntaxToken> {
2901 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
2902 }
2903 #[inline]
2904 pub fn text_token(&self) -> Option<SyntaxToken> {
2905 support::token(&self.syntax, SyntaxKind::TEXT_KW)
2906 }
2907 #[inline]
2908 pub fn transform_token(&self) -> Option<SyntaxToken> {
2909 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
2910 }
2911 #[inline]
2912 pub fn trigger_token(&self) -> Option<SyntaxToken> {
2913 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
2914 }
2915 #[inline]
2916 pub fn type_token(&self) -> Option<SyntaxToken> {
2917 support::token(&self.syntax, SyntaxKind::TYPE_KW)
2918 }
2919 #[inline]
2920 pub fn view_token(&self) -> Option<SyntaxToken> {
2921 support::token(&self.syntax, SyntaxKind::VIEW_KW)
2922 }
2923 #[inline]
2924 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
2925 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
2926 }
2927}
2928
2929#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2930pub struct Commit {
2931 pub(crate) syntax: SyntaxNode,
2932}
2933impl Commit {
2934 #[inline]
2935 pub fn literal(&self) -> Option<Literal> {
2936 support::child(&self.syntax)
2937 }
2938 #[inline]
2939 pub fn and_token(&self) -> Option<SyntaxToken> {
2940 support::token(&self.syntax, SyntaxKind::AND_KW)
2941 }
2942 #[inline]
2943 pub fn chain_token(&self) -> Option<SyntaxToken> {
2944 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
2945 }
2946 #[inline]
2947 pub fn commit_token(&self) -> Option<SyntaxToken> {
2948 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
2949 }
2950 #[inline]
2951 pub fn no_token(&self) -> Option<SyntaxToken> {
2952 support::token(&self.syntax, SyntaxKind::NO_KW)
2953 }
2954 #[inline]
2955 pub fn prepared_token(&self) -> Option<SyntaxToken> {
2956 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
2957 }
2958 #[inline]
2959 pub fn transaction_token(&self) -> Option<SyntaxToken> {
2960 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
2961 }
2962 #[inline]
2963 pub fn work_token(&self) -> Option<SyntaxToken> {
2964 support::token(&self.syntax, SyntaxKind::WORK_KW)
2965 }
2966}
2967
2968#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2969pub struct CompoundSelect {
2970 pub(crate) syntax: SyntaxNode,
2971}
2972impl CompoundSelect {
2973 #[inline]
2974 pub fn all_token(&self) -> Option<SyntaxToken> {
2975 support::token(&self.syntax, SyntaxKind::ALL_KW)
2976 }
2977 #[inline]
2978 pub fn except_token(&self) -> Option<SyntaxToken> {
2979 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
2980 }
2981 #[inline]
2982 pub fn intersect_token(&self) -> Option<SyntaxToken> {
2983 support::token(&self.syntax, SyntaxKind::INTERSECT_KW)
2984 }
2985 #[inline]
2986 pub fn union_token(&self) -> Option<SyntaxToken> {
2987 support::token(&self.syntax, SyntaxKind::UNION_KW)
2988 }
2989}
2990
2991#[derive(Debug, Clone, PartialEq, Eq, Hash)]
2992pub struct CompressionMethod {
2993 pub(crate) syntax: SyntaxNode,
2994}
2995impl CompressionMethod {
2996 #[inline]
2997 pub fn compression_token(&self) -> Option<SyntaxToken> {
2998 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
2999 }
3000 #[inline]
3001 pub fn default_token(&self) -> Option<SyntaxToken> {
3002 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3003 }
3004 #[inline]
3005 pub fn ident_token(&self) -> Option<SyntaxToken> {
3006 support::token(&self.syntax, SyntaxKind::IDENT)
3007 }
3008}
3009
3010#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3011pub struct ConflictDoNothing {
3012 pub(crate) syntax: SyntaxNode,
3013}
3014impl ConflictDoNothing {
3015 #[inline]
3016 pub fn do_token(&self) -> Option<SyntaxToken> {
3017 support::token(&self.syntax, SyntaxKind::DO_KW)
3018 }
3019 #[inline]
3020 pub fn nothing_token(&self) -> Option<SyntaxToken> {
3021 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
3022 }
3023}
3024
3025#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3026pub struct ConflictDoSelect {
3027 pub(crate) syntax: SyntaxNode,
3028}
3029impl ConflictDoSelect {
3030 #[inline]
3031 pub fn locking_clause(&self) -> Option<LockingClause> {
3032 support::child(&self.syntax)
3033 }
3034 #[inline]
3035 pub fn where_clause(&self) -> Option<WhereClause> {
3036 support::child(&self.syntax)
3037 }
3038 #[inline]
3039 pub fn do_token(&self) -> Option<SyntaxToken> {
3040 support::token(&self.syntax, SyntaxKind::DO_KW)
3041 }
3042 #[inline]
3043 pub fn select_token(&self) -> Option<SyntaxToken> {
3044 support::token(&self.syntax, SyntaxKind::SELECT_KW)
3045 }
3046}
3047
3048#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3049pub struct ConflictDoUpdateSet {
3050 pub(crate) syntax: SyntaxNode,
3051}
3052impl ConflictDoUpdateSet {
3053 #[inline]
3054 pub fn set_clause(&self) -> Option<SetClause> {
3055 support::child(&self.syntax)
3056 }
3057 #[inline]
3058 pub fn where_clause(&self) -> Option<WhereClause> {
3059 support::child(&self.syntax)
3060 }
3061 #[inline]
3062 pub fn do_token(&self) -> Option<SyntaxToken> {
3063 support::token(&self.syntax, SyntaxKind::DO_KW)
3064 }
3065 #[inline]
3066 pub fn update_token(&self) -> Option<SyntaxToken> {
3067 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
3068 }
3069}
3070
3071#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3072pub struct ConflictIndexItem {
3073 pub(crate) syntax: SyntaxNode,
3074}
3075impl ConflictIndexItem {
3076 #[inline]
3077 pub fn collate(&self) -> Option<Collate> {
3078 support::child(&self.syntax)
3079 }
3080 #[inline]
3081 pub fn expr(&self) -> Option<Expr> {
3082 support::child(&self.syntax)
3083 }
3084 #[inline]
3085 pub fn ident_token(&self) -> Option<SyntaxToken> {
3086 support::token(&self.syntax, SyntaxKind::IDENT)
3087 }
3088}
3089
3090#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3091pub struct ConflictIndexItemList {
3092 pub(crate) syntax: SyntaxNode,
3093}
3094impl ConflictIndexItemList {
3095 #[inline]
3096 pub fn conflict_index_items(&self) -> AstChildren<ConflictIndexItem> {
3097 support::children(&self.syntax)
3098 }
3099 #[inline]
3100 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3101 support::token(&self.syntax, SyntaxKind::L_PAREN)
3102 }
3103 #[inline]
3104 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3105 support::token(&self.syntax, SyntaxKind::R_PAREN)
3106 }
3107}
3108
3109#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3110pub struct ConflictOnConstraint {
3111 pub(crate) syntax: SyntaxNode,
3112}
3113impl ConflictOnConstraint {
3114 #[inline]
3115 pub fn name_ref(&self) -> Option<NameRef> {
3116 support::child(&self.syntax)
3117 }
3118 #[inline]
3119 pub fn constraint_token(&self) -> Option<SyntaxToken> {
3120 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
3121 }
3122 #[inline]
3123 pub fn on_token(&self) -> Option<SyntaxToken> {
3124 support::token(&self.syntax, SyntaxKind::ON_KW)
3125 }
3126}
3127
3128#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3129pub struct ConflictOnIndex {
3130 pub(crate) syntax: SyntaxNode,
3131}
3132impl ConflictOnIndex {
3133 #[inline]
3134 pub fn conflict_index_item_list(&self) -> Option<ConflictIndexItemList> {
3135 support::child(&self.syntax)
3136 }
3137 #[inline]
3138 pub fn where_clause(&self) -> Option<WhereClause> {
3139 support::child(&self.syntax)
3140 }
3141}
3142
3143#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3144pub struct ConstraintExclusion {
3145 pub(crate) syntax: SyntaxNode,
3146}
3147impl ConstraintExclusion {
3148 #[inline]
3149 pub fn expr(&self) -> Option<Expr> {
3150 support::child(&self.syntax)
3151 }
3152 #[inline]
3153 pub fn op(&self) -> Option<Op> {
3154 support::child(&self.syntax)
3155 }
3156 #[inline]
3157 pub fn with_token(&self) -> Option<SyntaxToken> {
3158 support::token(&self.syntax, SyntaxKind::WITH_KW)
3159 }
3160}
3161
3162#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3163pub struct ConstraintExclusionList {
3164 pub(crate) syntax: SyntaxNode,
3165}
3166impl ConstraintExclusionList {
3167 #[inline]
3168 pub fn constraint_exclusions(&self) -> AstChildren<ConstraintExclusion> {
3169 support::children(&self.syntax)
3170 }
3171 #[inline]
3172 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3173 support::token(&self.syntax, SyntaxKind::L_PAREN)
3174 }
3175 #[inline]
3176 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3177 support::token(&self.syntax, SyntaxKind::R_PAREN)
3178 }
3179}
3180
3181#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3182pub struct ConstraintIncludeClause {
3183 pub(crate) syntax: SyntaxNode,
3184}
3185impl ConstraintIncludeClause {
3186 #[inline]
3187 pub fn include_token(&self) -> Option<SyntaxToken> {
3188 support::token(&self.syntax, SyntaxKind::INCLUDE_KW)
3189 }
3190}
3191
3192#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3193pub struct ConstraintIndexMethod {
3194 pub(crate) syntax: SyntaxNode,
3195}
3196impl ConstraintIndexMethod {
3197 #[inline]
3198 pub fn using_token(&self) -> Option<SyntaxToken> {
3199 support::token(&self.syntax, SyntaxKind::USING_KW)
3200 }
3201}
3202
3203#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3204pub struct ConstraintIndexTablespace {
3205 pub(crate) syntax: SyntaxNode,
3206}
3207impl ConstraintIndexTablespace {
3208 #[inline]
3209 pub fn name_ref(&self) -> Option<NameRef> {
3210 support::child(&self.syntax)
3211 }
3212 #[inline]
3213 pub fn index_token(&self) -> Option<SyntaxToken> {
3214 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3215 }
3216 #[inline]
3217 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
3218 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
3219 }
3220 #[inline]
3221 pub fn using_token(&self) -> Option<SyntaxToken> {
3222 support::token(&self.syntax, SyntaxKind::USING_KW)
3223 }
3224}
3225
3226#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3227pub struct ConstraintName {
3228 pub(crate) syntax: SyntaxNode,
3229}
3230impl ConstraintName {
3231 #[inline]
3232 pub fn name(&self) -> Option<Name> {
3233 support::child(&self.syntax)
3234 }
3235 #[inline]
3236 pub fn constraint_token(&self) -> Option<SyntaxToken> {
3237 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
3238 }
3239}
3240
3241#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3242pub struct Copy {
3243 pub(crate) syntax: SyntaxNode,
3244}
3245impl Copy {
3246 #[inline]
3247 pub fn column_list(&self) -> Option<ColumnList> {
3248 support::child(&self.syntax)
3249 }
3250 #[inline]
3251 pub fn literal(&self) -> Option<Literal> {
3252 support::child(&self.syntax)
3253 }
3254 #[inline]
3255 pub fn path(&self) -> Option<Path> {
3256 support::child(&self.syntax)
3257 }
3258 #[inline]
3259 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
3260 support::child(&self.syntax)
3261 }
3262 #[inline]
3263 pub fn where_clause(&self) -> Option<WhereClause> {
3264 support::child(&self.syntax)
3265 }
3266 #[inline]
3267 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3268 support::token(&self.syntax, SyntaxKind::L_PAREN)
3269 }
3270 #[inline]
3271 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3272 support::token(&self.syntax, SyntaxKind::R_PAREN)
3273 }
3274 #[inline]
3275 pub fn binary_token(&self) -> Option<SyntaxToken> {
3276 support::token(&self.syntax, SyntaxKind::BINARY_KW)
3277 }
3278 #[inline]
3279 pub fn copy_token(&self) -> Option<SyntaxToken> {
3280 support::token(&self.syntax, SyntaxKind::COPY_KW)
3281 }
3282 #[inline]
3283 pub fn from_token(&self) -> Option<SyntaxToken> {
3284 support::token(&self.syntax, SyntaxKind::FROM_KW)
3285 }
3286 #[inline]
3287 pub fn program_token(&self) -> Option<SyntaxToken> {
3288 support::token(&self.syntax, SyntaxKind::PROGRAM_KW)
3289 }
3290 #[inline]
3291 pub fn stdin_token(&self) -> Option<SyntaxToken> {
3292 support::token(&self.syntax, SyntaxKind::STDIN_KW)
3293 }
3294 #[inline]
3295 pub fn stdout_token(&self) -> Option<SyntaxToken> {
3296 support::token(&self.syntax, SyntaxKind::STDOUT_KW)
3297 }
3298 #[inline]
3299 pub fn to_token(&self) -> Option<SyntaxToken> {
3300 support::token(&self.syntax, SyntaxKind::TO_KW)
3301 }
3302 #[inline]
3303 pub fn with_token(&self) -> Option<SyntaxToken> {
3304 support::token(&self.syntax, SyntaxKind::WITH_KW)
3305 }
3306}
3307
3308#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3309pub struct CopyOption {
3310 pub(crate) syntax: SyntaxNode,
3311}
3312impl CopyOption {
3313 #[inline]
3314 pub fn name(&self) -> Option<Name> {
3315 support::child(&self.syntax)
3316 }
3317}
3318
3319#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3320pub struct CopyOptionList {
3321 pub(crate) syntax: SyntaxNode,
3322}
3323impl CopyOptionList {
3324 #[inline]
3325 pub fn copy_options(&self) -> AstChildren<CopyOption> {
3326 support::children(&self.syntax)
3327 }
3328 #[inline]
3329 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
3330 support::token(&self.syntax, SyntaxKind::L_PAREN)
3331 }
3332 #[inline]
3333 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
3334 support::token(&self.syntax, SyntaxKind::R_PAREN)
3335 }
3336}
3337
3338#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3339pub struct CostFuncOption {
3340 pub(crate) syntax: SyntaxNode,
3341}
3342impl CostFuncOption {
3343 #[inline]
3344 pub fn cost_token(&self) -> Option<SyntaxToken> {
3345 support::token(&self.syntax, SyntaxKind::COST_KW)
3346 }
3347}
3348
3349#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3350pub struct CreateAccessMethod {
3351 pub(crate) syntax: SyntaxNode,
3352}
3353impl CreateAccessMethod {
3354 #[inline]
3355 pub fn handler_clause(&self) -> Option<HandlerClause> {
3356 support::child(&self.syntax)
3357 }
3358 #[inline]
3359 pub fn name(&self) -> Option<Path> {
3360 support::child(&self.syntax)
3361 }
3362 #[inline]
3363 pub fn access_token(&self) -> Option<SyntaxToken> {
3364 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
3365 }
3366 #[inline]
3367 pub fn create_token(&self) -> Option<SyntaxToken> {
3368 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3369 }
3370 #[inline]
3371 pub fn index_token(&self) -> Option<SyntaxToken> {
3372 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3373 }
3374 #[inline]
3375 pub fn method_token(&self) -> Option<SyntaxToken> {
3376 support::token(&self.syntax, SyntaxKind::METHOD_KW)
3377 }
3378 #[inline]
3379 pub fn table_token(&self) -> Option<SyntaxToken> {
3380 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3381 }
3382 #[inline]
3383 pub fn type_token(&self) -> Option<SyntaxToken> {
3384 support::token(&self.syntax, SyntaxKind::TYPE_KW)
3385 }
3386}
3387
3388#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3389pub struct CreateAggregate {
3390 pub(crate) syntax: SyntaxNode,
3391}
3392impl CreateAggregate {
3393 #[inline]
3394 pub fn or_replace(&self) -> Option<OrReplace> {
3395 support::child(&self.syntax)
3396 }
3397 #[inline]
3398 pub fn param_list(&self) -> Option<ParamList> {
3399 support::child(&self.syntax)
3400 }
3401 #[inline]
3402 pub fn path(&self) -> Option<Path> {
3403 support::child(&self.syntax)
3404 }
3405 #[inline]
3406 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
3407 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
3408 }
3409 #[inline]
3410 pub fn create_token(&self) -> Option<SyntaxToken> {
3411 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3412 }
3413}
3414
3415#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3416pub struct CreateCast {
3417 pub(crate) syntax: SyntaxNode,
3418}
3419impl CreateCast {
3420 #[inline]
3421 pub fn cast_sig(&self) -> Option<CastSig> {
3422 support::child(&self.syntax)
3423 }
3424 #[inline]
3425 pub fn function_sig(&self) -> Option<FunctionSig> {
3426 support::child(&self.syntax)
3427 }
3428 #[inline]
3429 pub fn as_token(&self) -> Option<SyntaxToken> {
3430 support::token(&self.syntax, SyntaxKind::AS_KW)
3431 }
3432 #[inline]
3433 pub fn assignment_token(&self) -> Option<SyntaxToken> {
3434 support::token(&self.syntax, SyntaxKind::ASSIGNMENT_KW)
3435 }
3436 #[inline]
3437 pub fn cast_token(&self) -> Option<SyntaxToken> {
3438 support::token(&self.syntax, SyntaxKind::CAST_KW)
3439 }
3440 #[inline]
3441 pub fn create_token(&self) -> Option<SyntaxToken> {
3442 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3443 }
3444 #[inline]
3445 pub fn function_token(&self) -> Option<SyntaxToken> {
3446 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3447 }
3448 #[inline]
3449 pub fn implicit_token(&self) -> Option<SyntaxToken> {
3450 support::token(&self.syntax, SyntaxKind::IMPLICIT_KW)
3451 }
3452 #[inline]
3453 pub fn inout_token(&self) -> Option<SyntaxToken> {
3454 support::token(&self.syntax, SyntaxKind::INOUT_KW)
3455 }
3456 #[inline]
3457 pub fn with_token(&self) -> Option<SyntaxToken> {
3458 support::token(&self.syntax, SyntaxKind::WITH_KW)
3459 }
3460 #[inline]
3461 pub fn without_token(&self) -> Option<SyntaxToken> {
3462 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
3463 }
3464}
3465
3466#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3467pub struct CreateCollation {
3468 pub(crate) syntax: SyntaxNode,
3469}
3470impl CreateCollation {
3471 #[inline]
3472 pub fn path(&self) -> Option<Path> {
3473 support::child(&self.syntax)
3474 }
3475 #[inline]
3476 pub fn collation_token(&self) -> Option<SyntaxToken> {
3477 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
3478 }
3479 #[inline]
3480 pub fn create_token(&self) -> Option<SyntaxToken> {
3481 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3482 }
3483}
3484
3485#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3486pub struct CreateConversion {
3487 pub(crate) syntax: SyntaxNode,
3488}
3489impl CreateConversion {
3490 #[inline]
3491 pub fn literal(&self) -> Option<Literal> {
3492 support::child(&self.syntax)
3493 }
3494 #[inline]
3495 pub fn path(&self) -> Option<Path> {
3496 support::child(&self.syntax)
3497 }
3498 #[inline]
3499 pub fn conversion_token(&self) -> Option<SyntaxToken> {
3500 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
3501 }
3502 #[inline]
3503 pub fn create_token(&self) -> Option<SyntaxToken> {
3504 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3505 }
3506 #[inline]
3507 pub fn default_token(&self) -> Option<SyntaxToken> {
3508 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3509 }
3510 #[inline]
3511 pub fn for_token(&self) -> Option<SyntaxToken> {
3512 support::token(&self.syntax, SyntaxKind::FOR_KW)
3513 }
3514 #[inline]
3515 pub fn from_token(&self) -> Option<SyntaxToken> {
3516 support::token(&self.syntax, SyntaxKind::FROM_KW)
3517 }
3518 #[inline]
3519 pub fn to_token(&self) -> Option<SyntaxToken> {
3520 support::token(&self.syntax, SyntaxKind::TO_KW)
3521 }
3522}
3523
3524#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3525pub struct CreateDatabase {
3526 pub(crate) syntax: SyntaxNode,
3527}
3528impl CreateDatabase {
3529 #[inline]
3530 pub fn create_database_option_list(&self) -> Option<CreateDatabaseOptionList> {
3531 support::child(&self.syntax)
3532 }
3533 #[inline]
3534 pub fn name(&self) -> Option<Name> {
3535 support::child(&self.syntax)
3536 }
3537 #[inline]
3538 pub fn create_token(&self) -> Option<SyntaxToken> {
3539 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3540 }
3541 #[inline]
3542 pub fn database_token(&self) -> Option<SyntaxToken> {
3543 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
3544 }
3545}
3546
3547#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3548pub struct CreateDatabaseOption {
3549 pub(crate) syntax: SyntaxNode,
3550}
3551impl CreateDatabaseOption {
3552 #[inline]
3553 pub fn literal(&self) -> Option<Literal> {
3554 support::child(&self.syntax)
3555 }
3556 #[inline]
3557 pub fn eq_token(&self) -> Option<SyntaxToken> {
3558 support::token(&self.syntax, SyntaxKind::EQ)
3559 }
3560 #[inline]
3561 pub fn connection_token(&self) -> Option<SyntaxToken> {
3562 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
3563 }
3564 #[inline]
3565 pub fn default_token(&self) -> Option<SyntaxToken> {
3566 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
3567 }
3568 #[inline]
3569 pub fn encoding_token(&self) -> Option<SyntaxToken> {
3570 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
3571 }
3572 #[inline]
3573 pub fn ident_token(&self) -> Option<SyntaxToken> {
3574 support::token(&self.syntax, SyntaxKind::IDENT)
3575 }
3576 #[inline]
3577 pub fn limit_token(&self) -> Option<SyntaxToken> {
3578 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
3579 }
3580 #[inline]
3581 pub fn owner_token(&self) -> Option<SyntaxToken> {
3582 support::token(&self.syntax, SyntaxKind::OWNER_KW)
3583 }
3584 #[inline]
3585 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
3586 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
3587 }
3588 #[inline]
3589 pub fn template_token(&self) -> Option<SyntaxToken> {
3590 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
3591 }
3592}
3593
3594#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3595pub struct CreateDatabaseOptionList {
3596 pub(crate) syntax: SyntaxNode,
3597}
3598impl CreateDatabaseOptionList {
3599 #[inline]
3600 pub fn create_database_options(&self) -> AstChildren<CreateDatabaseOption> {
3601 support::children(&self.syntax)
3602 }
3603 #[inline]
3604 pub fn with_token(&self) -> Option<SyntaxToken> {
3605 support::token(&self.syntax, SyntaxKind::WITH_KW)
3606 }
3607}
3608
3609#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3610pub struct CreateDomain {
3611 pub(crate) syntax: SyntaxNode,
3612}
3613impl CreateDomain {
3614 #[inline]
3615 pub fn collate(&self) -> Option<Collate> {
3616 support::child(&self.syntax)
3617 }
3618 #[inline]
3619 pub fn constraints(&self) -> AstChildren<Constraint> {
3620 support::children(&self.syntax)
3621 }
3622 #[inline]
3623 pub fn path(&self) -> Option<Path> {
3624 support::child(&self.syntax)
3625 }
3626 #[inline]
3627 pub fn ty(&self) -> Option<Type> {
3628 support::child(&self.syntax)
3629 }
3630 #[inline]
3631 pub fn as_token(&self) -> Option<SyntaxToken> {
3632 support::token(&self.syntax, SyntaxKind::AS_KW)
3633 }
3634 #[inline]
3635 pub fn create_token(&self) -> Option<SyntaxToken> {
3636 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3637 }
3638 #[inline]
3639 pub fn domain_token(&self) -> Option<SyntaxToken> {
3640 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
3641 }
3642}
3643
3644#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3645pub struct CreateEventTrigger {
3646 pub(crate) syntax: SyntaxNode,
3647}
3648impl CreateEventTrigger {
3649 #[inline]
3650 pub fn call_expr(&self) -> Option<CallExpr> {
3651 support::child(&self.syntax)
3652 }
3653 #[inline]
3654 pub fn event_trigger_when_clause(&self) -> Option<EventTriggerWhenClause> {
3655 support::child(&self.syntax)
3656 }
3657 #[inline]
3658 pub fn name(&self) -> Option<Name> {
3659 support::child(&self.syntax)
3660 }
3661 #[inline]
3662 pub fn name_ref(&self) -> Option<NameRef> {
3663 support::child(&self.syntax)
3664 }
3665 #[inline]
3666 pub fn create_token(&self) -> Option<SyntaxToken> {
3667 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3668 }
3669 #[inline]
3670 pub fn event_token(&self) -> Option<SyntaxToken> {
3671 support::token(&self.syntax, SyntaxKind::EVENT_KW)
3672 }
3673 #[inline]
3674 pub fn execute_token(&self) -> Option<SyntaxToken> {
3675 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
3676 }
3677 #[inline]
3678 pub fn function_token(&self) -> Option<SyntaxToken> {
3679 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3680 }
3681 #[inline]
3682 pub fn on_token(&self) -> Option<SyntaxToken> {
3683 support::token(&self.syntax, SyntaxKind::ON_KW)
3684 }
3685 #[inline]
3686 pub fn procedure_token(&self) -> Option<SyntaxToken> {
3687 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
3688 }
3689 #[inline]
3690 pub fn trigger_token(&self) -> Option<SyntaxToken> {
3691 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
3692 }
3693}
3694
3695#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3696pub struct CreateExtension {
3697 pub(crate) syntax: SyntaxNode,
3698}
3699impl CreateExtension {
3700 #[inline]
3701 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3702 support::child(&self.syntax)
3703 }
3704 #[inline]
3705 pub fn name(&self) -> Option<Name> {
3706 support::child(&self.syntax)
3707 }
3708 #[inline]
3709 pub fn create_token(&self) -> Option<SyntaxToken> {
3710 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3711 }
3712 #[inline]
3713 pub fn extension_token(&self) -> Option<SyntaxToken> {
3714 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
3715 }
3716}
3717
3718#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3719pub struct CreateForeignDataWrapper {
3720 pub(crate) syntax: SyntaxNode,
3721}
3722impl CreateForeignDataWrapper {
3723 #[inline]
3724 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3725 support::child(&self.syntax)
3726 }
3727 #[inline]
3728 pub fn fdw_option_list(&self) -> Option<FdwOptionList> {
3729 support::child(&self.syntax)
3730 }
3731 #[inline]
3732 pub fn name(&self) -> Option<Name> {
3733 support::child(&self.syntax)
3734 }
3735 #[inline]
3736 pub fn create_token(&self) -> Option<SyntaxToken> {
3737 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3738 }
3739 #[inline]
3740 pub fn data_token(&self) -> Option<SyntaxToken> {
3741 support::token(&self.syntax, SyntaxKind::DATA_KW)
3742 }
3743 #[inline]
3744 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3745 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3746 }
3747 #[inline]
3748 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
3749 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
3750 }
3751}
3752
3753#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3754pub struct CreateForeignTable {
3755 pub(crate) syntax: SyntaxNode,
3756}
3757impl CreateForeignTable {
3758 #[inline]
3759 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
3760 support::child(&self.syntax)
3761 }
3762 #[inline]
3763 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3764 support::child(&self.syntax)
3765 }
3766 #[inline]
3767 pub fn inherits(&self) -> Option<Inherits> {
3768 support::child(&self.syntax)
3769 }
3770 #[inline]
3771 pub fn partition_of(&self) -> Option<PartitionOf> {
3772 support::child(&self.syntax)
3773 }
3774 #[inline]
3775 pub fn partition_type(&self) -> Option<PartitionType> {
3776 support::child(&self.syntax)
3777 }
3778 #[inline]
3779 pub fn path(&self) -> Option<Path> {
3780 support::child(&self.syntax)
3781 }
3782 #[inline]
3783 pub fn server_name(&self) -> Option<ServerName> {
3784 support::child(&self.syntax)
3785 }
3786 #[inline]
3787 pub fn table_arg_list(&self) -> Option<TableArgList> {
3788 support::child(&self.syntax)
3789 }
3790 #[inline]
3791 pub fn create_token(&self) -> Option<SyntaxToken> {
3792 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3793 }
3794 #[inline]
3795 pub fn foreign_token(&self) -> Option<SyntaxToken> {
3796 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
3797 }
3798 #[inline]
3799 pub fn table_token(&self) -> Option<SyntaxToken> {
3800 support::token(&self.syntax, SyntaxKind::TABLE_KW)
3801 }
3802}
3803
3804#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3805pub struct CreateFunction {
3806 pub(crate) syntax: SyntaxNode,
3807}
3808impl CreateFunction {
3809 #[inline]
3810 pub fn option_list(&self) -> Option<FuncOptionList> {
3811 support::child(&self.syntax)
3812 }
3813 #[inline]
3814 pub fn or_replace(&self) -> Option<OrReplace> {
3815 support::child(&self.syntax)
3816 }
3817 #[inline]
3818 pub fn param_list(&self) -> Option<ParamList> {
3819 support::child(&self.syntax)
3820 }
3821 #[inline]
3822 pub fn path(&self) -> Option<Path> {
3823 support::child(&self.syntax)
3824 }
3825 #[inline]
3826 pub fn ret_type(&self) -> Option<RetType> {
3827 support::child(&self.syntax)
3828 }
3829 #[inline]
3830 pub fn create_token(&self) -> Option<SyntaxToken> {
3831 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3832 }
3833 #[inline]
3834 pub fn function_token(&self) -> Option<SyntaxToken> {
3835 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
3836 }
3837}
3838
3839#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3840pub struct CreateGroup {
3841 pub(crate) syntax: SyntaxNode,
3842}
3843impl CreateGroup {
3844 #[inline]
3845 pub fn name(&self) -> Option<Name> {
3846 support::child(&self.syntax)
3847 }
3848 #[inline]
3849 pub fn role_option_list(&self) -> Option<RoleOptionList> {
3850 support::child(&self.syntax)
3851 }
3852 #[inline]
3853 pub fn create_token(&self) -> Option<SyntaxToken> {
3854 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3855 }
3856 #[inline]
3857 pub fn group_token(&self) -> Option<SyntaxToken> {
3858 support::token(&self.syntax, SyntaxKind::GROUP_KW)
3859 }
3860}
3861
3862#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3863pub struct CreateIndex {
3864 pub(crate) syntax: SyntaxNode,
3865}
3866impl CreateIndex {
3867 #[inline]
3868 pub fn constraint_include_clause(&self) -> Option<ConstraintIncludeClause> {
3869 support::child(&self.syntax)
3870 }
3871 #[inline]
3872 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3873 support::child(&self.syntax)
3874 }
3875 #[inline]
3876 pub fn name(&self) -> Option<Name> {
3877 support::child(&self.syntax)
3878 }
3879 #[inline]
3880 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
3881 support::child(&self.syntax)
3882 }
3883 #[inline]
3884 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
3885 support::child(&self.syntax)
3886 }
3887 #[inline]
3888 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
3889 support::child(&self.syntax)
3890 }
3891 #[inline]
3892 pub fn relation_name(&self) -> Option<RelationName> {
3893 support::child(&self.syntax)
3894 }
3895 #[inline]
3896 pub fn tablespace(&self) -> Option<Tablespace> {
3897 support::child(&self.syntax)
3898 }
3899 #[inline]
3900 pub fn using_method(&self) -> Option<UsingMethod> {
3901 support::child(&self.syntax)
3902 }
3903 #[inline]
3904 pub fn where_clause(&self) -> Option<WhereClause> {
3905 support::child(&self.syntax)
3906 }
3907 #[inline]
3908 pub fn with_params(&self) -> Option<WithParams> {
3909 support::child(&self.syntax)
3910 }
3911 #[inline]
3912 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
3913 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
3914 }
3915 #[inline]
3916 pub fn create_token(&self) -> Option<SyntaxToken> {
3917 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3918 }
3919 #[inline]
3920 pub fn index_token(&self) -> Option<SyntaxToken> {
3921 support::token(&self.syntax, SyntaxKind::INDEX_KW)
3922 }
3923 #[inline]
3924 pub fn on_token(&self) -> Option<SyntaxToken> {
3925 support::token(&self.syntax, SyntaxKind::ON_KW)
3926 }
3927 #[inline]
3928 pub fn unique_token(&self) -> Option<SyntaxToken> {
3929 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
3930 }
3931}
3932
3933#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3934pub struct CreateLanguage {
3935 pub(crate) syntax: SyntaxNode,
3936}
3937impl CreateLanguage {
3938 #[inline]
3939 pub fn name(&self) -> Option<Name> {
3940 support::child(&self.syntax)
3941 }
3942 #[inline]
3943 pub fn or_replace(&self) -> Option<OrReplace> {
3944 support::child(&self.syntax)
3945 }
3946 #[inline]
3947 pub fn path(&self) -> Option<Path> {
3948 support::child(&self.syntax)
3949 }
3950 #[inline]
3951 pub fn create_token(&self) -> Option<SyntaxToken> {
3952 support::token(&self.syntax, SyntaxKind::CREATE_KW)
3953 }
3954 #[inline]
3955 pub fn handler_token(&self) -> Option<SyntaxToken> {
3956 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
3957 }
3958 #[inline]
3959 pub fn inline_token(&self) -> Option<SyntaxToken> {
3960 support::token(&self.syntax, SyntaxKind::INLINE_KW)
3961 }
3962 #[inline]
3963 pub fn language_token(&self) -> Option<SyntaxToken> {
3964 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
3965 }
3966 #[inline]
3967 pub fn procedural_token(&self) -> Option<SyntaxToken> {
3968 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
3969 }
3970 #[inline]
3971 pub fn trusted_token(&self) -> Option<SyntaxToken> {
3972 support::token(&self.syntax, SyntaxKind::TRUSTED_KW)
3973 }
3974 #[inline]
3975 pub fn validator_token(&self) -> Option<SyntaxToken> {
3976 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
3977 }
3978}
3979
3980#[derive(Debug, Clone, PartialEq, Eq, Hash)]
3981pub struct CreateMaterializedView {
3982 pub(crate) syntax: SyntaxNode,
3983}
3984impl CreateMaterializedView {
3985 #[inline]
3986 pub fn column_list(&self) -> Option<ColumnList> {
3987 support::child(&self.syntax)
3988 }
3989 #[inline]
3990 pub fn if_not_exists(&self) -> Option<IfNotExists> {
3991 support::child(&self.syntax)
3992 }
3993 #[inline]
3994 pub fn path(&self) -> Option<Path> {
3995 support::child(&self.syntax)
3996 }
3997 #[inline]
3998 pub fn query(&self) -> Option<SelectVariant> {
3999 support::child(&self.syntax)
4000 }
4001 #[inline]
4002 pub fn tablespace(&self) -> Option<Tablespace> {
4003 support::child(&self.syntax)
4004 }
4005 #[inline]
4006 pub fn using_method(&self) -> Option<UsingMethod> {
4007 support::child(&self.syntax)
4008 }
4009 #[inline]
4010 pub fn with_data(&self) -> Option<WithData> {
4011 support::child(&self.syntax)
4012 }
4013 #[inline]
4014 pub fn with_no_data(&self) -> Option<WithNoData> {
4015 support::child(&self.syntax)
4016 }
4017 #[inline]
4018 pub fn with_params(&self) -> Option<WithParams> {
4019 support::child(&self.syntax)
4020 }
4021 #[inline]
4022 pub fn as_token(&self) -> Option<SyntaxToken> {
4023 support::token(&self.syntax, SyntaxKind::AS_KW)
4024 }
4025 #[inline]
4026 pub fn create_token(&self) -> Option<SyntaxToken> {
4027 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4028 }
4029 #[inline]
4030 pub fn materialized_token(&self) -> Option<SyntaxToken> {
4031 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
4032 }
4033 #[inline]
4034 pub fn view_token(&self) -> Option<SyntaxToken> {
4035 support::token(&self.syntax, SyntaxKind::VIEW_KW)
4036 }
4037}
4038
4039#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4040pub struct CreateOperator {
4041 pub(crate) syntax: SyntaxNode,
4042}
4043impl CreateOperator {
4044 #[inline]
4045 pub fn attribute_list(&self) -> Option<AttributeList> {
4046 support::child(&self.syntax)
4047 }
4048 #[inline]
4049 pub fn op(&self) -> Option<Op> {
4050 support::child(&self.syntax)
4051 }
4052 #[inline]
4053 pub fn path(&self) -> Option<Path> {
4054 support::child(&self.syntax)
4055 }
4056 #[inline]
4057 pub fn create_token(&self) -> Option<SyntaxToken> {
4058 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4059 }
4060 #[inline]
4061 pub fn operator_token(&self) -> Option<SyntaxToken> {
4062 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
4063 }
4064}
4065
4066#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4067pub struct CreateOperatorClass {
4068 pub(crate) syntax: SyntaxNode,
4069}
4070impl CreateOperatorClass {
4071 #[inline]
4072 pub fn name_ref(&self) -> Option<NameRef> {
4073 support::child(&self.syntax)
4074 }
4075 #[inline]
4076 pub fn operator_class_option_list(&self) -> Option<OperatorClassOptionList> {
4077 support::child(&self.syntax)
4078 }
4079 #[inline]
4080 pub fn path(&self) -> Option<Path> {
4081 support::child(&self.syntax)
4082 }
4083 #[inline]
4084 pub fn ty(&self) -> Option<Type> {
4085 support::child(&self.syntax)
4086 }
4087 #[inline]
4088 pub fn as_token(&self) -> Option<SyntaxToken> {
4089 support::token(&self.syntax, SyntaxKind::AS_KW)
4090 }
4091 #[inline]
4092 pub fn class_token(&self) -> Option<SyntaxToken> {
4093 support::token(&self.syntax, SyntaxKind::CLASS_KW)
4094 }
4095 #[inline]
4096 pub fn create_token(&self) -> Option<SyntaxToken> {
4097 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4098 }
4099 #[inline]
4100 pub fn default_token(&self) -> Option<SyntaxToken> {
4101 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
4102 }
4103 #[inline]
4104 pub fn family_token(&self) -> Option<SyntaxToken> {
4105 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
4106 }
4107 #[inline]
4108 pub fn for_token(&self) -> Option<SyntaxToken> {
4109 support::token(&self.syntax, SyntaxKind::FOR_KW)
4110 }
4111 #[inline]
4112 pub fn operator_token(&self) -> Option<SyntaxToken> {
4113 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
4114 }
4115 #[inline]
4116 pub fn type_token(&self) -> Option<SyntaxToken> {
4117 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4118 }
4119 #[inline]
4120 pub fn using_token(&self) -> Option<SyntaxToken> {
4121 support::token(&self.syntax, SyntaxKind::USING_KW)
4122 }
4123}
4124
4125#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4126pub struct CreateOperatorFamily {
4127 pub(crate) syntax: SyntaxNode,
4128}
4129impl CreateOperatorFamily {
4130 #[inline]
4131 pub fn name_ref(&self) -> Option<NameRef> {
4132 support::child(&self.syntax)
4133 }
4134 #[inline]
4135 pub fn path(&self) -> Option<Path> {
4136 support::child(&self.syntax)
4137 }
4138 #[inline]
4139 pub fn create_token(&self) -> Option<SyntaxToken> {
4140 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4141 }
4142 #[inline]
4143 pub fn family_token(&self) -> Option<SyntaxToken> {
4144 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
4145 }
4146 #[inline]
4147 pub fn operator_token(&self) -> Option<SyntaxToken> {
4148 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
4149 }
4150 #[inline]
4151 pub fn using_token(&self) -> Option<SyntaxToken> {
4152 support::token(&self.syntax, SyntaxKind::USING_KW)
4153 }
4154}
4155
4156#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4157pub struct CreatePolicy {
4158 pub(crate) syntax: SyntaxNode,
4159}
4160impl CreatePolicy {
4161 #[inline]
4162 pub fn as_policy_type(&self) -> Option<AsPolicyType> {
4163 support::child(&self.syntax)
4164 }
4165 #[inline]
4166 pub fn name(&self) -> Option<Name> {
4167 support::child(&self.syntax)
4168 }
4169 #[inline]
4170 pub fn on_table(&self) -> Option<OnTable> {
4171 support::child(&self.syntax)
4172 }
4173 #[inline]
4174 pub fn role_ref_list(&self) -> Option<RoleRefList> {
4175 support::child(&self.syntax)
4176 }
4177 #[inline]
4178 pub fn using_expr_clause(&self) -> Option<UsingExprClause> {
4179 support::child(&self.syntax)
4180 }
4181 #[inline]
4182 pub fn with_check_expr_clause(&self) -> Option<WithCheckExprClause> {
4183 support::child(&self.syntax)
4184 }
4185 #[inline]
4186 pub fn all_token(&self) -> Option<SyntaxToken> {
4187 support::token(&self.syntax, SyntaxKind::ALL_KW)
4188 }
4189 #[inline]
4190 pub fn create_token(&self) -> Option<SyntaxToken> {
4191 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4192 }
4193 #[inline]
4194 pub fn delete_token(&self) -> Option<SyntaxToken> {
4195 support::token(&self.syntax, SyntaxKind::DELETE_KW)
4196 }
4197 #[inline]
4198 pub fn for_token(&self) -> Option<SyntaxToken> {
4199 support::token(&self.syntax, SyntaxKind::FOR_KW)
4200 }
4201 #[inline]
4202 pub fn insert_token(&self) -> Option<SyntaxToken> {
4203 support::token(&self.syntax, SyntaxKind::INSERT_KW)
4204 }
4205 #[inline]
4206 pub fn policy_token(&self) -> Option<SyntaxToken> {
4207 support::token(&self.syntax, SyntaxKind::POLICY_KW)
4208 }
4209 #[inline]
4210 pub fn select_token(&self) -> Option<SyntaxToken> {
4211 support::token(&self.syntax, SyntaxKind::SELECT_KW)
4212 }
4213 #[inline]
4214 pub fn to_token(&self) -> Option<SyntaxToken> {
4215 support::token(&self.syntax, SyntaxKind::TO_KW)
4216 }
4217 #[inline]
4218 pub fn update_token(&self) -> Option<SyntaxToken> {
4219 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
4220 }
4221}
4222
4223#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4224pub struct CreateProcedure {
4225 pub(crate) syntax: SyntaxNode,
4226}
4227impl CreateProcedure {
4228 #[inline]
4229 pub fn option_list(&self) -> Option<FuncOptionList> {
4230 support::child(&self.syntax)
4231 }
4232 #[inline]
4233 pub fn or_replace(&self) -> Option<OrReplace> {
4234 support::child(&self.syntax)
4235 }
4236 #[inline]
4237 pub fn param_list(&self) -> Option<ParamList> {
4238 support::child(&self.syntax)
4239 }
4240 #[inline]
4241 pub fn path(&self) -> Option<Path> {
4242 support::child(&self.syntax)
4243 }
4244 #[inline]
4245 pub fn create_token(&self) -> Option<SyntaxToken> {
4246 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4247 }
4248 #[inline]
4249 pub fn procedure_token(&self) -> Option<SyntaxToken> {
4250 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
4251 }
4252}
4253
4254#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4255pub struct CreatePublication {
4256 pub(crate) syntax: SyntaxNode,
4257}
4258impl CreatePublication {
4259 #[inline]
4260 pub fn name(&self) -> Option<Name> {
4261 support::child(&self.syntax)
4262 }
4263 #[inline]
4264 pub fn publication_objects(&self) -> AstChildren<PublicationObject> {
4265 support::children(&self.syntax)
4266 }
4267 #[inline]
4268 pub fn with_params(&self) -> Option<WithParams> {
4269 support::child(&self.syntax)
4270 }
4271 #[inline]
4272 pub fn all_token(&self) -> Option<SyntaxToken> {
4273 support::token(&self.syntax, SyntaxKind::ALL_KW)
4274 }
4275 #[inline]
4276 pub fn create_token(&self) -> Option<SyntaxToken> {
4277 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4278 }
4279 #[inline]
4280 pub fn for_token(&self) -> Option<SyntaxToken> {
4281 support::token(&self.syntax, SyntaxKind::FOR_KW)
4282 }
4283 #[inline]
4284 pub fn publication_token(&self) -> Option<SyntaxToken> {
4285 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4286 }
4287 #[inline]
4288 pub fn tables_token(&self) -> Option<SyntaxToken> {
4289 support::token(&self.syntax, SyntaxKind::TABLES_KW)
4290 }
4291}
4292
4293#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4294pub struct CreateRole {
4295 pub(crate) syntax: SyntaxNode,
4296}
4297impl CreateRole {
4298 #[inline]
4299 pub fn name(&self) -> Option<Name> {
4300 support::child(&self.syntax)
4301 }
4302 #[inline]
4303 pub fn role_option_list(&self) -> Option<RoleOptionList> {
4304 support::child(&self.syntax)
4305 }
4306 #[inline]
4307 pub fn create_token(&self) -> Option<SyntaxToken> {
4308 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4309 }
4310 #[inline]
4311 pub fn role_token(&self) -> Option<SyntaxToken> {
4312 support::token(&self.syntax, SyntaxKind::ROLE_KW)
4313 }
4314}
4315
4316#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4317pub struct CreateRule {
4318 pub(crate) syntax: SyntaxNode,
4319}
4320impl CreateRule {
4321 #[inline]
4322 pub fn name(&self) -> Option<Name> {
4323 support::child(&self.syntax)
4324 }
4325 #[inline]
4326 pub fn or_replace(&self) -> Option<OrReplace> {
4327 support::child(&self.syntax)
4328 }
4329 #[inline]
4330 pub fn path(&self) -> Option<Path> {
4331 support::child(&self.syntax)
4332 }
4333 #[inline]
4334 pub fn stmt(&self) -> Option<Stmt> {
4335 support::child(&self.syntax)
4336 }
4337 #[inline]
4338 pub fn stmts(&self) -> AstChildren<Stmt> {
4339 support::children(&self.syntax)
4340 }
4341 #[inline]
4342 pub fn where_clause(&self) -> Option<WhereClause> {
4343 support::child(&self.syntax)
4344 }
4345 #[inline]
4346 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4347 support::token(&self.syntax, SyntaxKind::L_PAREN)
4348 }
4349 #[inline]
4350 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4351 support::token(&self.syntax, SyntaxKind::R_PAREN)
4352 }
4353 #[inline]
4354 pub fn also_token(&self) -> Option<SyntaxToken> {
4355 support::token(&self.syntax, SyntaxKind::ALSO_KW)
4356 }
4357 #[inline]
4358 pub fn as_token(&self) -> Option<SyntaxToken> {
4359 support::token(&self.syntax, SyntaxKind::AS_KW)
4360 }
4361 #[inline]
4362 pub fn create_token(&self) -> Option<SyntaxToken> {
4363 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4364 }
4365 #[inline]
4366 pub fn delete_token(&self) -> Option<SyntaxToken> {
4367 support::token(&self.syntax, SyntaxKind::DELETE_KW)
4368 }
4369 #[inline]
4370 pub fn do_token(&self) -> Option<SyntaxToken> {
4371 support::token(&self.syntax, SyntaxKind::DO_KW)
4372 }
4373 #[inline]
4374 pub fn ident_token(&self) -> Option<SyntaxToken> {
4375 support::token(&self.syntax, SyntaxKind::IDENT)
4376 }
4377 #[inline]
4378 pub fn insert_token(&self) -> Option<SyntaxToken> {
4379 support::token(&self.syntax, SyntaxKind::INSERT_KW)
4380 }
4381 #[inline]
4382 pub fn instead_token(&self) -> Option<SyntaxToken> {
4383 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
4384 }
4385 #[inline]
4386 pub fn nothing_token(&self) -> Option<SyntaxToken> {
4387 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
4388 }
4389 #[inline]
4390 pub fn on_token(&self) -> Option<SyntaxToken> {
4391 support::token(&self.syntax, SyntaxKind::ON_KW)
4392 }
4393 #[inline]
4394 pub fn rule_token(&self) -> Option<SyntaxToken> {
4395 support::token(&self.syntax, SyntaxKind::RULE_KW)
4396 }
4397 #[inline]
4398 pub fn select_token(&self) -> Option<SyntaxToken> {
4399 support::token(&self.syntax, SyntaxKind::SELECT_KW)
4400 }
4401 #[inline]
4402 pub fn to_token(&self) -> Option<SyntaxToken> {
4403 support::token(&self.syntax, SyntaxKind::TO_KW)
4404 }
4405 #[inline]
4406 pub fn update_token(&self) -> Option<SyntaxToken> {
4407 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
4408 }
4409}
4410
4411#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4412pub struct CreateSchema {
4413 pub(crate) syntax: SyntaxNode,
4414}
4415impl CreateSchema {
4416 #[inline]
4417 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4418 support::child(&self.syntax)
4419 }
4420 #[inline]
4421 pub fn name(&self) -> Option<Name> {
4422 support::child(&self.syntax)
4423 }
4424 #[inline]
4425 pub fn role(&self) -> Option<Role> {
4426 support::child(&self.syntax)
4427 }
4428 #[inline]
4429 pub fn role_ref(&self) -> Option<RoleRef> {
4430 support::child(&self.syntax)
4431 }
4432 #[inline]
4433 pub fn schema_elements(&self) -> AstChildren<SchemaElement> {
4434 support::children(&self.syntax)
4435 }
4436 #[inline]
4437 pub fn authorization_token(&self) -> Option<SyntaxToken> {
4438 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
4439 }
4440 #[inline]
4441 pub fn create_token(&self) -> Option<SyntaxToken> {
4442 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4443 }
4444 #[inline]
4445 pub fn schema_token(&self) -> Option<SyntaxToken> {
4446 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
4447 }
4448}
4449
4450#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4451pub struct CreateSequence {
4452 pub(crate) syntax: SyntaxNode,
4453}
4454impl CreateSequence {
4455 #[inline]
4456 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4457 support::child(&self.syntax)
4458 }
4459 #[inline]
4460 pub fn path(&self) -> Option<Path> {
4461 support::child(&self.syntax)
4462 }
4463 #[inline]
4464 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
4465 support::children(&self.syntax)
4466 }
4467 #[inline]
4468 pub fn create_token(&self) -> Option<SyntaxToken> {
4469 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4470 }
4471 #[inline]
4472 pub fn sequence_token(&self) -> Option<SyntaxToken> {
4473 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
4474 }
4475 #[inline]
4476 pub fn temp_token(&self) -> Option<SyntaxToken> {
4477 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4478 }
4479 #[inline]
4480 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4481 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4482 }
4483 #[inline]
4484 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4485 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4486 }
4487}
4488
4489#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4490pub struct CreateServer {
4491 pub(crate) syntax: SyntaxNode,
4492}
4493impl CreateServer {
4494 #[inline]
4495 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
4496 support::child(&self.syntax)
4497 }
4498 #[inline]
4499 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4500 support::child(&self.syntax)
4501 }
4502 #[inline]
4503 pub fn literal(&self) -> Option<Literal> {
4504 support::child(&self.syntax)
4505 }
4506 #[inline]
4507 pub fn name(&self) -> Option<Name> {
4508 support::child(&self.syntax)
4509 }
4510 #[inline]
4511 pub fn name_ref(&self) -> Option<NameRef> {
4512 support::child(&self.syntax)
4513 }
4514 #[inline]
4515 pub fn create_token(&self) -> Option<SyntaxToken> {
4516 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4517 }
4518 #[inline]
4519 pub fn data_token(&self) -> Option<SyntaxToken> {
4520 support::token(&self.syntax, SyntaxKind::DATA_KW)
4521 }
4522 #[inline]
4523 pub fn foreign_token(&self) -> Option<SyntaxToken> {
4524 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
4525 }
4526 #[inline]
4527 pub fn server_token(&self) -> Option<SyntaxToken> {
4528 support::token(&self.syntax, SyntaxKind::SERVER_KW)
4529 }
4530 #[inline]
4531 pub fn type_token(&self) -> Option<SyntaxToken> {
4532 support::token(&self.syntax, SyntaxKind::TYPE_KW)
4533 }
4534 #[inline]
4535 pub fn version_token(&self) -> Option<SyntaxToken> {
4536 support::token(&self.syntax, SyntaxKind::VERSION_KW)
4537 }
4538 #[inline]
4539 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
4540 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
4541 }
4542}
4543
4544#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4545pub struct CreateStatistics {
4546 pub(crate) syntax: SyntaxNode,
4547}
4548impl CreateStatistics {
4549 #[inline]
4550 pub fn from_table(&self) -> Option<FromTable> {
4551 support::child(&self.syntax)
4552 }
4553 #[inline]
4554 pub fn name_refs(&self) -> AstChildren<NameRef> {
4555 support::children(&self.syntax)
4556 }
4557 #[inline]
4558 pub fn path(&self) -> Option<Path> {
4559 support::child(&self.syntax)
4560 }
4561 #[inline]
4562 pub fn create_token(&self) -> Option<SyntaxToken> {
4563 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4564 }
4565 #[inline]
4566 pub fn on_token(&self) -> Option<SyntaxToken> {
4567 support::token(&self.syntax, SyntaxKind::ON_KW)
4568 }
4569 #[inline]
4570 pub fn statistics_token(&self) -> Option<SyntaxToken> {
4571 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
4572 }
4573}
4574
4575#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4576pub struct CreateSubscription {
4577 pub(crate) syntax: SyntaxNode,
4578}
4579impl CreateSubscription {
4580 #[inline]
4581 pub fn literal(&self) -> Option<Literal> {
4582 support::child(&self.syntax)
4583 }
4584 #[inline]
4585 pub fn name(&self) -> Option<Name> {
4586 support::child(&self.syntax)
4587 }
4588 #[inline]
4589 pub fn name_refs(&self) -> AstChildren<NameRef> {
4590 support::children(&self.syntax)
4591 }
4592 #[inline]
4593 pub fn with_params(&self) -> Option<WithParams> {
4594 support::child(&self.syntax)
4595 }
4596 #[inline]
4597 pub fn connection_token(&self) -> Option<SyntaxToken> {
4598 support::token(&self.syntax, SyntaxKind::CONNECTION_KW)
4599 }
4600 #[inline]
4601 pub fn create_token(&self) -> Option<SyntaxToken> {
4602 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4603 }
4604 #[inline]
4605 pub fn publication_token(&self) -> Option<SyntaxToken> {
4606 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
4607 }
4608 #[inline]
4609 pub fn subscription_token(&self) -> Option<SyntaxToken> {
4610 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
4611 }
4612}
4613
4614#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4615pub struct CreateTable {
4616 pub(crate) syntax: SyntaxNode,
4617}
4618impl CreateTable {
4619 #[inline]
4620 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4621 support::child(&self.syntax)
4622 }
4623 #[inline]
4624 pub fn inherits(&self) -> Option<Inherits> {
4625 support::child(&self.syntax)
4626 }
4627 #[inline]
4628 pub fn of_type(&self) -> Option<OfType> {
4629 support::child(&self.syntax)
4630 }
4631 #[inline]
4632 pub fn on_commit(&self) -> Option<OnCommit> {
4633 support::child(&self.syntax)
4634 }
4635 #[inline]
4636 pub fn partition_by(&self) -> Option<PartitionBy> {
4637 support::child(&self.syntax)
4638 }
4639 #[inline]
4640 pub fn partition_of(&self) -> Option<PartitionOf> {
4641 support::child(&self.syntax)
4642 }
4643 #[inline]
4644 pub fn path(&self) -> Option<Path> {
4645 support::child(&self.syntax)
4646 }
4647 #[inline]
4648 pub fn table_arg_list(&self) -> Option<TableArgList> {
4649 support::child(&self.syntax)
4650 }
4651 #[inline]
4652 pub fn tablespace(&self) -> Option<Tablespace> {
4653 support::child(&self.syntax)
4654 }
4655 #[inline]
4656 pub fn using_method(&self) -> Option<UsingMethod> {
4657 support::child(&self.syntax)
4658 }
4659 #[inline]
4660 pub fn with_params(&self) -> Option<WithParams> {
4661 support::child(&self.syntax)
4662 }
4663 #[inline]
4664 pub fn without_oids(&self) -> Option<WithoutOids> {
4665 support::child(&self.syntax)
4666 }
4667 #[inline]
4668 pub fn create_token(&self) -> Option<SyntaxToken> {
4669 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4670 }
4671 #[inline]
4672 pub fn global_token(&self) -> Option<SyntaxToken> {
4673 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4674 }
4675 #[inline]
4676 pub fn local_token(&self) -> Option<SyntaxToken> {
4677 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4678 }
4679 #[inline]
4680 pub fn table_token(&self) -> Option<SyntaxToken> {
4681 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4682 }
4683 #[inline]
4684 pub fn temp_token(&self) -> Option<SyntaxToken> {
4685 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4686 }
4687 #[inline]
4688 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4689 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4690 }
4691 #[inline]
4692 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4693 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4694 }
4695}
4696
4697#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4698pub struct CreateTableAs {
4699 pub(crate) syntax: SyntaxNode,
4700}
4701impl CreateTableAs {
4702 #[inline]
4703 pub fn if_not_exists(&self) -> Option<IfNotExists> {
4704 support::child(&self.syntax)
4705 }
4706 #[inline]
4707 pub fn on_commit(&self) -> Option<OnCommit> {
4708 support::child(&self.syntax)
4709 }
4710 #[inline]
4711 pub fn path(&self) -> Option<Path> {
4712 support::child(&self.syntax)
4713 }
4714 #[inline]
4715 pub fn query(&self) -> Option<SelectVariant> {
4716 support::child(&self.syntax)
4717 }
4718 #[inline]
4719 pub fn tablespace(&self) -> Option<Tablespace> {
4720 support::child(&self.syntax)
4721 }
4722 #[inline]
4723 pub fn using_method(&self) -> Option<UsingMethod> {
4724 support::child(&self.syntax)
4725 }
4726 #[inline]
4727 pub fn with_data(&self) -> Option<WithData> {
4728 support::child(&self.syntax)
4729 }
4730 #[inline]
4731 pub fn with_no_data(&self) -> Option<WithNoData> {
4732 support::child(&self.syntax)
4733 }
4734 #[inline]
4735 pub fn with_params(&self) -> Option<WithParams> {
4736 support::child(&self.syntax)
4737 }
4738 #[inline]
4739 pub fn without_oids(&self) -> Option<WithoutOids> {
4740 support::child(&self.syntax)
4741 }
4742 #[inline]
4743 pub fn as_token(&self) -> Option<SyntaxToken> {
4744 support::token(&self.syntax, SyntaxKind::AS_KW)
4745 }
4746 #[inline]
4747 pub fn create_token(&self) -> Option<SyntaxToken> {
4748 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4749 }
4750 #[inline]
4751 pub fn global_token(&self) -> Option<SyntaxToken> {
4752 support::token(&self.syntax, SyntaxKind::GLOBAL_KW)
4753 }
4754 #[inline]
4755 pub fn local_token(&self) -> Option<SyntaxToken> {
4756 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
4757 }
4758 #[inline]
4759 pub fn table_token(&self) -> Option<SyntaxToken> {
4760 support::token(&self.syntax, SyntaxKind::TABLE_KW)
4761 }
4762 #[inline]
4763 pub fn temp_token(&self) -> Option<SyntaxToken> {
4764 support::token(&self.syntax, SyntaxKind::TEMP_KW)
4765 }
4766 #[inline]
4767 pub fn temporary_token(&self) -> Option<SyntaxToken> {
4768 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
4769 }
4770 #[inline]
4771 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
4772 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
4773 }
4774}
4775
4776#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4777pub struct CreateTablespace {
4778 pub(crate) syntax: SyntaxNode,
4779}
4780impl CreateTablespace {
4781 #[inline]
4782 pub fn literal(&self) -> Option<Literal> {
4783 support::child(&self.syntax)
4784 }
4785 #[inline]
4786 pub fn name(&self) -> Option<Name> {
4787 support::child(&self.syntax)
4788 }
4789 #[inline]
4790 pub fn role_ref(&self) -> Option<RoleRef> {
4791 support::child(&self.syntax)
4792 }
4793 #[inline]
4794 pub fn with_params(&self) -> Option<WithParams> {
4795 support::child(&self.syntax)
4796 }
4797 #[inline]
4798 pub fn create_token(&self) -> Option<SyntaxToken> {
4799 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4800 }
4801 #[inline]
4802 pub fn location_token(&self) -> Option<SyntaxToken> {
4803 support::token(&self.syntax, SyntaxKind::LOCATION_KW)
4804 }
4805 #[inline]
4806 pub fn owner_token(&self) -> Option<SyntaxToken> {
4807 support::token(&self.syntax, SyntaxKind::OWNER_KW)
4808 }
4809 #[inline]
4810 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
4811 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
4812 }
4813}
4814
4815#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4816pub struct CreateTextSearchConfiguration {
4817 pub(crate) syntax: SyntaxNode,
4818}
4819impl CreateTextSearchConfiguration {
4820 #[inline]
4821 pub fn attribute_list(&self) -> Option<AttributeList> {
4822 support::child(&self.syntax)
4823 }
4824 #[inline]
4825 pub fn path(&self) -> Option<Path> {
4826 support::child(&self.syntax)
4827 }
4828 #[inline]
4829 pub fn configuration_token(&self) -> Option<SyntaxToken> {
4830 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
4831 }
4832 #[inline]
4833 pub fn create_token(&self) -> Option<SyntaxToken> {
4834 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4835 }
4836 #[inline]
4837 pub fn search_token(&self) -> Option<SyntaxToken> {
4838 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4839 }
4840 #[inline]
4841 pub fn text_token(&self) -> Option<SyntaxToken> {
4842 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4843 }
4844}
4845
4846#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4847pub struct CreateTextSearchDictionary {
4848 pub(crate) syntax: SyntaxNode,
4849}
4850impl CreateTextSearchDictionary {
4851 #[inline]
4852 pub fn attribute_list(&self) -> Option<AttributeList> {
4853 support::child(&self.syntax)
4854 }
4855 #[inline]
4856 pub fn path(&self) -> Option<Path> {
4857 support::child(&self.syntax)
4858 }
4859 #[inline]
4860 pub fn create_token(&self) -> Option<SyntaxToken> {
4861 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4862 }
4863 #[inline]
4864 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
4865 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
4866 }
4867 #[inline]
4868 pub fn search_token(&self) -> Option<SyntaxToken> {
4869 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4870 }
4871 #[inline]
4872 pub fn text_token(&self) -> Option<SyntaxToken> {
4873 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4874 }
4875}
4876
4877#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4878pub struct CreateTextSearchParser {
4879 pub(crate) syntax: SyntaxNode,
4880}
4881impl CreateTextSearchParser {
4882 #[inline]
4883 pub fn attribute_list(&self) -> Option<AttributeList> {
4884 support::child(&self.syntax)
4885 }
4886 #[inline]
4887 pub fn path(&self) -> Option<Path> {
4888 support::child(&self.syntax)
4889 }
4890 #[inline]
4891 pub fn create_token(&self) -> Option<SyntaxToken> {
4892 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4893 }
4894 #[inline]
4895 pub fn parser_token(&self) -> Option<SyntaxToken> {
4896 support::token(&self.syntax, SyntaxKind::PARSER_KW)
4897 }
4898 #[inline]
4899 pub fn search_token(&self) -> Option<SyntaxToken> {
4900 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4901 }
4902 #[inline]
4903 pub fn text_token(&self) -> Option<SyntaxToken> {
4904 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4905 }
4906}
4907
4908#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4909pub struct CreateTextSearchTemplate {
4910 pub(crate) syntax: SyntaxNode,
4911}
4912impl CreateTextSearchTemplate {
4913 #[inline]
4914 pub fn attribute_list(&self) -> Option<AttributeList> {
4915 support::child(&self.syntax)
4916 }
4917 #[inline]
4918 pub fn path(&self) -> Option<Path> {
4919 support::child(&self.syntax)
4920 }
4921 #[inline]
4922 pub fn create_token(&self) -> Option<SyntaxToken> {
4923 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4924 }
4925 #[inline]
4926 pub fn search_token(&self) -> Option<SyntaxToken> {
4927 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
4928 }
4929 #[inline]
4930 pub fn template_token(&self) -> Option<SyntaxToken> {
4931 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
4932 }
4933 #[inline]
4934 pub fn text_token(&self) -> Option<SyntaxToken> {
4935 support::token(&self.syntax, SyntaxKind::TEXT_KW)
4936 }
4937}
4938
4939#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4940pub struct CreateTransform {
4941 pub(crate) syntax: SyntaxNode,
4942}
4943impl CreateTransform {
4944 #[inline]
4945 pub fn from_func(&self) -> Option<TransformFromFunc> {
4946 support::child(&self.syntax)
4947 }
4948 #[inline]
4949 pub fn language(&self) -> Option<NameRef> {
4950 support::child(&self.syntax)
4951 }
4952 #[inline]
4953 pub fn or_replace(&self) -> Option<OrReplace> {
4954 support::child(&self.syntax)
4955 }
4956 #[inline]
4957 pub fn to_func(&self) -> Option<TransformToFunc> {
4958 support::child(&self.syntax)
4959 }
4960 #[inline]
4961 pub fn ty(&self) -> Option<Type> {
4962 support::child(&self.syntax)
4963 }
4964 #[inline]
4965 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
4966 support::token(&self.syntax, SyntaxKind::L_PAREN)
4967 }
4968 #[inline]
4969 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
4970 support::token(&self.syntax, SyntaxKind::R_PAREN)
4971 }
4972 #[inline]
4973 pub fn comma_token(&self) -> Option<SyntaxToken> {
4974 support::token(&self.syntax, SyntaxKind::COMMA)
4975 }
4976 #[inline]
4977 pub fn create_token(&self) -> Option<SyntaxToken> {
4978 support::token(&self.syntax, SyntaxKind::CREATE_KW)
4979 }
4980 #[inline]
4981 pub fn for_token(&self) -> Option<SyntaxToken> {
4982 support::token(&self.syntax, SyntaxKind::FOR_KW)
4983 }
4984 #[inline]
4985 pub fn language_token(&self) -> Option<SyntaxToken> {
4986 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
4987 }
4988 #[inline]
4989 pub fn transform_token(&self) -> Option<SyntaxToken> {
4990 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
4991 }
4992}
4993
4994#[derive(Debug, Clone, PartialEq, Eq, Hash)]
4995pub struct CreateTrigger {
4996 pub(crate) syntax: SyntaxNode,
4997}
4998impl CreateTrigger {
4999 #[inline]
5000 pub fn call_expr(&self) -> Option<CallExpr> {
5001 support::child(&self.syntax)
5002 }
5003 #[inline]
5004 pub fn deferrable_constraint_option(&self) -> Option<DeferrableConstraintOption> {
5005 support::child(&self.syntax)
5006 }
5007 #[inline]
5008 pub fn from_table(&self) -> Option<FromTable> {
5009 support::child(&self.syntax)
5010 }
5011 #[inline]
5012 pub fn initially_deferred_constraint_option(
5013 &self,
5014 ) -> Option<InitiallyDeferredConstraintOption> {
5015 support::child(&self.syntax)
5016 }
5017 #[inline]
5018 pub fn initially_immediate_constraint_option(
5019 &self,
5020 ) -> Option<InitiallyImmediateConstraintOption> {
5021 support::child(&self.syntax)
5022 }
5023 #[inline]
5024 pub fn name(&self) -> Option<Name> {
5025 support::child(&self.syntax)
5026 }
5027 #[inline]
5028 pub fn not_deferrable_constraint_option(&self) -> Option<NotDeferrableConstraintOption> {
5029 support::child(&self.syntax)
5030 }
5031 #[inline]
5032 pub fn on_table(&self) -> Option<OnTable> {
5033 support::child(&self.syntax)
5034 }
5035 #[inline]
5036 pub fn or_replace(&self) -> Option<OrReplace> {
5037 support::child(&self.syntax)
5038 }
5039 #[inline]
5040 pub fn referencing(&self) -> Option<Referencing> {
5041 support::child(&self.syntax)
5042 }
5043 #[inline]
5044 pub fn timing(&self) -> Option<Timing> {
5045 support::child(&self.syntax)
5046 }
5047 #[inline]
5048 pub fn trigger_event_list(&self) -> Option<TriggerEventList> {
5049 support::child(&self.syntax)
5050 }
5051 #[inline]
5052 pub fn when_condition(&self) -> Option<WhenCondition> {
5053 support::child(&self.syntax)
5054 }
5055 #[inline]
5056 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5057 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5058 }
5059 #[inline]
5060 pub fn create_token(&self) -> Option<SyntaxToken> {
5061 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5062 }
5063 #[inline]
5064 pub fn each_token(&self) -> Option<SyntaxToken> {
5065 support::token(&self.syntax, SyntaxKind::EACH_KW)
5066 }
5067 #[inline]
5068 pub fn execute_token(&self) -> Option<SyntaxToken> {
5069 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
5070 }
5071 #[inline]
5072 pub fn for_token(&self) -> Option<SyntaxToken> {
5073 support::token(&self.syntax, SyntaxKind::FOR_KW)
5074 }
5075 #[inline]
5076 pub fn function_token(&self) -> Option<SyntaxToken> {
5077 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
5078 }
5079 #[inline]
5080 pub fn procedure_token(&self) -> Option<SyntaxToken> {
5081 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
5082 }
5083 #[inline]
5084 pub fn row_token(&self) -> Option<SyntaxToken> {
5085 support::token(&self.syntax, SyntaxKind::ROW_KW)
5086 }
5087 #[inline]
5088 pub fn statement_token(&self) -> Option<SyntaxToken> {
5089 support::token(&self.syntax, SyntaxKind::STATEMENT_KW)
5090 }
5091 #[inline]
5092 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5093 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5094 }
5095}
5096
5097#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5098pub struct CreateType {
5099 pub(crate) syntax: SyntaxNode,
5100}
5101impl CreateType {
5102 #[inline]
5103 pub fn attribute_list(&self) -> Option<AttributeList> {
5104 support::child(&self.syntax)
5105 }
5106 #[inline]
5107 pub fn column_list(&self) -> Option<ColumnList> {
5108 support::child(&self.syntax)
5109 }
5110 #[inline]
5111 pub fn path(&self) -> Option<Path> {
5112 support::child(&self.syntax)
5113 }
5114 #[inline]
5115 pub fn variant_list(&self) -> Option<VariantList> {
5116 support::child(&self.syntax)
5117 }
5118 #[inline]
5119 pub fn as_token(&self) -> Option<SyntaxToken> {
5120 support::token(&self.syntax, SyntaxKind::AS_KW)
5121 }
5122 #[inline]
5123 pub fn create_token(&self) -> Option<SyntaxToken> {
5124 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5125 }
5126 #[inline]
5127 pub fn enum_token(&self) -> Option<SyntaxToken> {
5128 support::token(&self.syntax, SyntaxKind::ENUM_KW)
5129 }
5130 #[inline]
5131 pub fn range_token(&self) -> Option<SyntaxToken> {
5132 support::token(&self.syntax, SyntaxKind::RANGE_KW)
5133 }
5134 #[inline]
5135 pub fn type_token(&self) -> Option<SyntaxToken> {
5136 support::token(&self.syntax, SyntaxKind::TYPE_KW)
5137 }
5138}
5139
5140#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5141pub struct CreateUser {
5142 pub(crate) syntax: SyntaxNode,
5143}
5144impl CreateUser {
5145 #[inline]
5146 pub fn name(&self) -> Option<Name> {
5147 support::child(&self.syntax)
5148 }
5149 #[inline]
5150 pub fn role_option_list(&self) -> Option<RoleOptionList> {
5151 support::child(&self.syntax)
5152 }
5153 #[inline]
5154 pub fn create_token(&self) -> Option<SyntaxToken> {
5155 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5156 }
5157 #[inline]
5158 pub fn user_token(&self) -> Option<SyntaxToken> {
5159 support::token(&self.syntax, SyntaxKind::USER_KW)
5160 }
5161}
5162
5163#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5164pub struct CreateUserMapping {
5165 pub(crate) syntax: SyntaxNode,
5166}
5167impl CreateUserMapping {
5168 #[inline]
5169 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
5170 support::child(&self.syntax)
5171 }
5172 #[inline]
5173 pub fn if_not_exists(&self) -> Option<IfNotExists> {
5174 support::child(&self.syntax)
5175 }
5176 #[inline]
5177 pub fn role_ref(&self) -> Option<RoleRef> {
5178 support::child(&self.syntax)
5179 }
5180 #[inline]
5181 pub fn server_name(&self) -> Option<ServerName> {
5182 support::child(&self.syntax)
5183 }
5184 #[inline]
5185 pub fn create_token(&self) -> Option<SyntaxToken> {
5186 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5187 }
5188 #[inline]
5189 pub fn for_token(&self) -> Option<SyntaxToken> {
5190 support::token(&self.syntax, SyntaxKind::FOR_KW)
5191 }
5192 #[inline]
5193 pub fn mapping_token(&self) -> Option<SyntaxToken> {
5194 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
5195 }
5196 #[inline]
5197 pub fn user_token(&self) -> Option<SyntaxToken> {
5198 support::token(&self.syntax, SyntaxKind::USER_KW)
5199 }
5200}
5201
5202#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5203pub struct CreateView {
5204 pub(crate) syntax: SyntaxNode,
5205}
5206impl CreateView {
5207 #[inline]
5208 pub fn column_list(&self) -> Option<ColumnList> {
5209 support::child(&self.syntax)
5210 }
5211 #[inline]
5212 pub fn or_replace(&self) -> Option<OrReplace> {
5213 support::child(&self.syntax)
5214 }
5215 #[inline]
5216 pub fn path(&self) -> Option<Path> {
5217 support::child(&self.syntax)
5218 }
5219 #[inline]
5220 pub fn query(&self) -> Option<SelectVariant> {
5221 support::child(&self.syntax)
5222 }
5223 #[inline]
5224 pub fn with_params(&self) -> Option<WithParams> {
5225 support::child(&self.syntax)
5226 }
5227 #[inline]
5228 pub fn as_token(&self) -> Option<SyntaxToken> {
5229 support::token(&self.syntax, SyntaxKind::AS_KW)
5230 }
5231 #[inline]
5232 pub fn cascaded_token(&self) -> Option<SyntaxToken> {
5233 support::token(&self.syntax, SyntaxKind::CASCADED_KW)
5234 }
5235 #[inline]
5236 pub fn check_token(&self) -> Option<SyntaxToken> {
5237 support::token(&self.syntax, SyntaxKind::CHECK_KW)
5238 }
5239 #[inline]
5240 pub fn create_token(&self) -> Option<SyntaxToken> {
5241 support::token(&self.syntax, SyntaxKind::CREATE_KW)
5242 }
5243 #[inline]
5244 pub fn local_token(&self) -> Option<SyntaxToken> {
5245 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
5246 }
5247 #[inline]
5248 pub fn option_token(&self) -> Option<SyntaxToken> {
5249 support::token(&self.syntax, SyntaxKind::OPTION_KW)
5250 }
5251 #[inline]
5252 pub fn recursive_token(&self) -> Option<SyntaxToken> {
5253 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
5254 }
5255 #[inline]
5256 pub fn temp_token(&self) -> Option<SyntaxToken> {
5257 support::token(&self.syntax, SyntaxKind::TEMP_KW)
5258 }
5259 #[inline]
5260 pub fn temporary_token(&self) -> Option<SyntaxToken> {
5261 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
5262 }
5263 #[inline]
5264 pub fn view_token(&self) -> Option<SyntaxToken> {
5265 support::token(&self.syntax, SyntaxKind::VIEW_KW)
5266 }
5267 #[inline]
5268 pub fn with_token(&self) -> Option<SyntaxToken> {
5269 support::token(&self.syntax, SyntaxKind::WITH_KW)
5270 }
5271}
5272
5273#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5274pub struct CustomOp {
5275 pub(crate) syntax: SyntaxNode,
5276}
5277impl CustomOp {
5278 #[inline]
5279 pub fn bang_token(&self) -> Option<SyntaxToken> {
5280 support::token(&self.syntax, SyntaxKind::BANG)
5281 }
5282 #[inline]
5283 pub fn pound_token(&self) -> Option<SyntaxToken> {
5284 support::token(&self.syntax, SyntaxKind::POUND)
5285 }
5286 #[inline]
5287 pub fn percent_token(&self) -> Option<SyntaxToken> {
5288 support::token(&self.syntax, SyntaxKind::PERCENT)
5289 }
5290 #[inline]
5291 pub fn amp_token(&self) -> Option<SyntaxToken> {
5292 support::token(&self.syntax, SyntaxKind::AMP)
5293 }
5294 #[inline]
5295 pub fn star_token(&self) -> Option<SyntaxToken> {
5296 support::token(&self.syntax, SyntaxKind::STAR)
5297 }
5298 #[inline]
5299 pub fn plus_token(&self) -> Option<SyntaxToken> {
5300 support::token(&self.syntax, SyntaxKind::PLUS)
5301 }
5302 #[inline]
5303 pub fn minus_token(&self) -> Option<SyntaxToken> {
5304 support::token(&self.syntax, SyntaxKind::MINUS)
5305 }
5306 #[inline]
5307 pub fn slash_token(&self) -> Option<SyntaxToken> {
5308 support::token(&self.syntax, SyntaxKind::SLASH)
5309 }
5310 #[inline]
5311 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
5312 support::token(&self.syntax, SyntaxKind::L_ANGLE)
5313 }
5314 #[inline]
5315 pub fn eq_token(&self) -> Option<SyntaxToken> {
5316 support::token(&self.syntax, SyntaxKind::EQ)
5317 }
5318 #[inline]
5319 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
5320 support::token(&self.syntax, SyntaxKind::R_ANGLE)
5321 }
5322 #[inline]
5323 pub fn question_token(&self) -> Option<SyntaxToken> {
5324 support::token(&self.syntax, SyntaxKind::QUESTION)
5325 }
5326 #[inline]
5327 pub fn at_token(&self) -> Option<SyntaxToken> {
5328 support::token(&self.syntax, SyntaxKind::AT)
5329 }
5330 #[inline]
5331 pub fn caret_token(&self) -> Option<SyntaxToken> {
5332 support::token(&self.syntax, SyntaxKind::CARET)
5333 }
5334 #[inline]
5335 pub fn backtick_token(&self) -> Option<SyntaxToken> {
5336 support::token(&self.syntax, SyntaxKind::BACKTICK)
5337 }
5338 #[inline]
5339 pub fn pipe_token(&self) -> Option<SyntaxToken> {
5340 support::token(&self.syntax, SyntaxKind::PIPE)
5341 }
5342 #[inline]
5343 pub fn tilde_token(&self) -> Option<SyntaxToken> {
5344 support::token(&self.syntax, SyntaxKind::TILDE)
5345 }
5346}
5347
5348#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5349pub struct Deallocate {
5350 pub(crate) syntax: SyntaxNode,
5351}
5352impl Deallocate {
5353 #[inline]
5354 pub fn name_ref(&self) -> Option<NameRef> {
5355 support::child(&self.syntax)
5356 }
5357 #[inline]
5358 pub fn all_token(&self) -> Option<SyntaxToken> {
5359 support::token(&self.syntax, SyntaxKind::ALL_KW)
5360 }
5361 #[inline]
5362 pub fn deallocate_token(&self) -> Option<SyntaxToken> {
5363 support::token(&self.syntax, SyntaxKind::DEALLOCATE_KW)
5364 }
5365 #[inline]
5366 pub fn prepare_token(&self) -> Option<SyntaxToken> {
5367 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
5368 }
5369}
5370
5371#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5372pub struct Declare {
5373 pub(crate) syntax: SyntaxNode,
5374}
5375impl Declare {
5376 #[inline]
5377 pub fn name(&self) -> Option<Name> {
5378 support::child(&self.syntax)
5379 }
5380 #[inline]
5381 pub fn query(&self) -> Option<SelectVariant> {
5382 support::child(&self.syntax)
5383 }
5384 #[inline]
5385 pub fn asensitive_token(&self) -> Option<SyntaxToken> {
5386 support::token(&self.syntax, SyntaxKind::ASENSITIVE_KW)
5387 }
5388 #[inline]
5389 pub fn binary_token(&self) -> Option<SyntaxToken> {
5390 support::token(&self.syntax, SyntaxKind::BINARY_KW)
5391 }
5392 #[inline]
5393 pub fn cursor_token(&self) -> Option<SyntaxToken> {
5394 support::token(&self.syntax, SyntaxKind::CURSOR_KW)
5395 }
5396 #[inline]
5397 pub fn declare_token(&self) -> Option<SyntaxToken> {
5398 support::token(&self.syntax, SyntaxKind::DECLARE_KW)
5399 }
5400 #[inline]
5401 pub fn for_token(&self) -> Option<SyntaxToken> {
5402 support::token(&self.syntax, SyntaxKind::FOR_KW)
5403 }
5404 #[inline]
5405 pub fn hold_token(&self) -> Option<SyntaxToken> {
5406 support::token(&self.syntax, SyntaxKind::HOLD_KW)
5407 }
5408 #[inline]
5409 pub fn insensitive_token(&self) -> Option<SyntaxToken> {
5410 support::token(&self.syntax, SyntaxKind::INSENSITIVE_KW)
5411 }
5412 #[inline]
5413 pub fn no_token(&self) -> Option<SyntaxToken> {
5414 support::token(&self.syntax, SyntaxKind::NO_KW)
5415 }
5416 #[inline]
5417 pub fn scroll_token(&self) -> Option<SyntaxToken> {
5418 support::token(&self.syntax, SyntaxKind::SCROLL_KW)
5419 }
5420 #[inline]
5421 pub fn with_token(&self) -> Option<SyntaxToken> {
5422 support::token(&self.syntax, SyntaxKind::WITH_KW)
5423 }
5424 #[inline]
5425 pub fn without_token(&self) -> Option<SyntaxToken> {
5426 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
5427 }
5428}
5429
5430#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5431pub struct DefaultConstraint {
5432 pub(crate) syntax: SyntaxNode,
5433}
5434impl DefaultConstraint {
5435 #[inline]
5436 pub fn expr(&self) -> Option<Expr> {
5437 support::child(&self.syntax)
5438 }
5439 #[inline]
5440 pub fn name_ref(&self) -> Option<NameRef> {
5441 support::child(&self.syntax)
5442 }
5443 #[inline]
5444 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5445 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5446 }
5447 #[inline]
5448 pub fn default_token(&self) -> Option<SyntaxToken> {
5449 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5450 }
5451}
5452
5453#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5454pub struct Deferrable {
5455 pub(crate) syntax: SyntaxNode,
5456}
5457impl Deferrable {
5458 #[inline]
5459 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5460 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5461 }
5462}
5463
5464#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5465pub struct DeferrableConstraintOption {
5466 pub(crate) syntax: SyntaxNode,
5467}
5468impl DeferrableConstraintOption {
5469 #[inline]
5470 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
5471 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
5472 }
5473}
5474
5475#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5476pub struct Delete {
5477 pub(crate) syntax: SyntaxNode,
5478}
5479impl Delete {
5480 #[inline]
5481 pub fn alias(&self) -> Option<Alias> {
5482 support::child(&self.syntax)
5483 }
5484 #[inline]
5485 pub fn relation_name(&self) -> Option<RelationName> {
5486 support::child(&self.syntax)
5487 }
5488 #[inline]
5489 pub fn returning_clause(&self) -> Option<ReturningClause> {
5490 support::child(&self.syntax)
5491 }
5492 #[inline]
5493 pub fn using_clause(&self) -> Option<UsingClause> {
5494 support::child(&self.syntax)
5495 }
5496 #[inline]
5497 pub fn where_clause(&self) -> Option<WhereClause> {
5498 support::child(&self.syntax)
5499 }
5500 #[inline]
5501 pub fn where_current_of(&self) -> Option<WhereCurrentOf> {
5502 support::child(&self.syntax)
5503 }
5504 #[inline]
5505 pub fn with_clause(&self) -> Option<WithClause> {
5506 support::child(&self.syntax)
5507 }
5508 #[inline]
5509 pub fn delete_token(&self) -> Option<SyntaxToken> {
5510 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5511 }
5512 #[inline]
5513 pub fn from_token(&self) -> Option<SyntaxToken> {
5514 support::token(&self.syntax, SyntaxKind::FROM_KW)
5515 }
5516}
5517
5518#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5519pub struct DeleteRows {
5520 pub(crate) syntax: SyntaxNode,
5521}
5522impl DeleteRows {
5523 #[inline]
5524 pub fn delete_token(&self) -> Option<SyntaxToken> {
5525 support::token(&self.syntax, SyntaxKind::DELETE_KW)
5526 }
5527 #[inline]
5528 pub fn rows_token(&self) -> Option<SyntaxToken> {
5529 support::token(&self.syntax, SyntaxKind::ROWS_KW)
5530 }
5531}
5532
5533#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5534pub struct DependsOnExtension {
5535 pub(crate) syntax: SyntaxNode,
5536}
5537impl DependsOnExtension {
5538 #[inline]
5539 pub fn name_ref(&self) -> Option<NameRef> {
5540 support::child(&self.syntax)
5541 }
5542 #[inline]
5543 pub fn depends_token(&self) -> Option<SyntaxToken> {
5544 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
5545 }
5546 #[inline]
5547 pub fn extension_token(&self) -> Option<SyntaxToken> {
5548 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
5549 }
5550 #[inline]
5551 pub fn on_token(&self) -> Option<SyntaxToken> {
5552 support::token(&self.syntax, SyntaxKind::ON_KW)
5553 }
5554}
5555
5556#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5557pub struct DetachPartition {
5558 pub(crate) syntax: SyntaxNode,
5559}
5560impl DetachPartition {
5561 #[inline]
5562 pub fn detach_token(&self) -> Option<SyntaxToken> {
5563 support::token(&self.syntax, SyntaxKind::DETACH_KW)
5564 }
5565 #[inline]
5566 pub fn partition_token(&self) -> Option<SyntaxToken> {
5567 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
5568 }
5569}
5570
5571#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5572pub struct DisableRls {
5573 pub(crate) syntax: SyntaxNode,
5574}
5575impl DisableRls {
5576 #[inline]
5577 pub fn disable_token(&self) -> Option<SyntaxToken> {
5578 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5579 }
5580 #[inline]
5581 pub fn level_token(&self) -> Option<SyntaxToken> {
5582 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
5583 }
5584 #[inline]
5585 pub fn row_token(&self) -> Option<SyntaxToken> {
5586 support::token(&self.syntax, SyntaxKind::ROW_KW)
5587 }
5588 #[inline]
5589 pub fn security_token(&self) -> Option<SyntaxToken> {
5590 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
5591 }
5592}
5593
5594#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5595pub struct DisableRule {
5596 pub(crate) syntax: SyntaxNode,
5597}
5598impl DisableRule {
5599 #[inline]
5600 pub fn disable_token(&self) -> Option<SyntaxToken> {
5601 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5602 }
5603 #[inline]
5604 pub fn rule_token(&self) -> Option<SyntaxToken> {
5605 support::token(&self.syntax, SyntaxKind::RULE_KW)
5606 }
5607}
5608
5609#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5610pub struct DisableTrigger {
5611 pub(crate) syntax: SyntaxNode,
5612}
5613impl DisableTrigger {
5614 #[inline]
5615 pub fn disable_token(&self) -> Option<SyntaxToken> {
5616 support::token(&self.syntax, SyntaxKind::DISABLE_KW)
5617 }
5618 #[inline]
5619 pub fn trigger_token(&self) -> Option<SyntaxToken> {
5620 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
5621 }
5622}
5623
5624#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5625pub struct Discard {
5626 pub(crate) syntax: SyntaxNode,
5627}
5628impl Discard {
5629 #[inline]
5630 pub fn all_token(&self) -> Option<SyntaxToken> {
5631 support::token(&self.syntax, SyntaxKind::ALL_KW)
5632 }
5633 #[inline]
5634 pub fn discard_token(&self) -> Option<SyntaxToken> {
5635 support::token(&self.syntax, SyntaxKind::DISCARD_KW)
5636 }
5637 #[inline]
5638 pub fn plans_token(&self) -> Option<SyntaxToken> {
5639 support::token(&self.syntax, SyntaxKind::PLANS_KW)
5640 }
5641 #[inline]
5642 pub fn sequences_token(&self) -> Option<SyntaxToken> {
5643 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
5644 }
5645 #[inline]
5646 pub fn temp_token(&self) -> Option<SyntaxToken> {
5647 support::token(&self.syntax, SyntaxKind::TEMP_KW)
5648 }
5649 #[inline]
5650 pub fn temporary_token(&self) -> Option<SyntaxToken> {
5651 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
5652 }
5653}
5654
5655#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5656pub struct DistinctClause {
5657 pub(crate) syntax: SyntaxNode,
5658}
5659impl DistinctClause {
5660 #[inline]
5661 pub fn exprs(&self) -> AstChildren<Expr> {
5662 support::children(&self.syntax)
5663 }
5664 #[inline]
5665 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
5666 support::token(&self.syntax, SyntaxKind::L_PAREN)
5667 }
5668 #[inline]
5669 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
5670 support::token(&self.syntax, SyntaxKind::R_PAREN)
5671 }
5672 #[inline]
5673 pub fn distinct_token(&self) -> Option<SyntaxToken> {
5674 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
5675 }
5676 #[inline]
5677 pub fn on_token(&self) -> Option<SyntaxToken> {
5678 support::token(&self.syntax, SyntaxKind::ON_KW)
5679 }
5680}
5681
5682#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5683pub struct Do {
5684 pub(crate) syntax: SyntaxNode,
5685}
5686impl Do {
5687 #[inline]
5688 pub fn do_token(&self) -> Option<SyntaxToken> {
5689 support::token(&self.syntax, SyntaxKind::DO_KW)
5690 }
5691}
5692
5693#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5694pub struct DoubleType {
5695 pub(crate) syntax: SyntaxNode,
5696}
5697impl DoubleType {
5698 #[inline]
5699 pub fn double_token(&self) -> Option<SyntaxToken> {
5700 support::token(&self.syntax, SyntaxKind::DOUBLE_KW)
5701 }
5702 #[inline]
5703 pub fn precision_token(&self) -> Option<SyntaxToken> {
5704 support::token(&self.syntax, SyntaxKind::PRECISION_KW)
5705 }
5706}
5707
5708#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5709pub struct Drop {
5710 pub(crate) syntax: SyntaxNode,
5711}
5712impl Drop {
5713 #[inline]
5714 pub fn drop_token(&self) -> Option<SyntaxToken> {
5715 support::token(&self.syntax, SyntaxKind::DROP_KW)
5716 }
5717}
5718
5719#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5720pub struct DropAccessMethod {
5721 pub(crate) syntax: SyntaxNode,
5722}
5723impl DropAccessMethod {
5724 #[inline]
5725 pub fn if_exists(&self) -> Option<IfExists> {
5726 support::child(&self.syntax)
5727 }
5728 #[inline]
5729 pub fn name_ref(&self) -> Option<NameRef> {
5730 support::child(&self.syntax)
5731 }
5732 #[inline]
5733 pub fn access_token(&self) -> Option<SyntaxToken> {
5734 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
5735 }
5736 #[inline]
5737 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5738 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5739 }
5740 #[inline]
5741 pub fn drop_token(&self) -> Option<SyntaxToken> {
5742 support::token(&self.syntax, SyntaxKind::DROP_KW)
5743 }
5744 #[inline]
5745 pub fn method_token(&self) -> Option<SyntaxToken> {
5746 support::token(&self.syntax, SyntaxKind::METHOD_KW)
5747 }
5748 #[inline]
5749 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5750 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5751 }
5752}
5753
5754#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5755pub struct DropAggregate {
5756 pub(crate) syntax: SyntaxNode,
5757}
5758impl DropAggregate {
5759 #[inline]
5760 pub fn aggregates(&self) -> AstChildren<Aggregate> {
5761 support::children(&self.syntax)
5762 }
5763 #[inline]
5764 pub fn if_exists(&self) -> Option<IfExists> {
5765 support::child(&self.syntax)
5766 }
5767 #[inline]
5768 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
5769 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
5770 }
5771 #[inline]
5772 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5773 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5774 }
5775 #[inline]
5776 pub fn drop_token(&self) -> Option<SyntaxToken> {
5777 support::token(&self.syntax, SyntaxKind::DROP_KW)
5778 }
5779 #[inline]
5780 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5781 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5782 }
5783}
5784
5785#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5786pub struct DropCast {
5787 pub(crate) syntax: SyntaxNode,
5788}
5789impl DropCast {
5790 #[inline]
5791 pub fn cast_sig(&self) -> Option<CastSig> {
5792 support::child(&self.syntax)
5793 }
5794 #[inline]
5795 pub fn if_exists(&self) -> Option<IfExists> {
5796 support::child(&self.syntax)
5797 }
5798 #[inline]
5799 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5800 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5801 }
5802 #[inline]
5803 pub fn cast_token(&self) -> Option<SyntaxToken> {
5804 support::token(&self.syntax, SyntaxKind::CAST_KW)
5805 }
5806 #[inline]
5807 pub fn drop_token(&self) -> Option<SyntaxToken> {
5808 support::token(&self.syntax, SyntaxKind::DROP_KW)
5809 }
5810 #[inline]
5811 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5812 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5813 }
5814}
5815
5816#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5817pub struct DropCollation {
5818 pub(crate) syntax: SyntaxNode,
5819}
5820impl DropCollation {
5821 #[inline]
5822 pub fn if_exists(&self) -> Option<IfExists> {
5823 support::child(&self.syntax)
5824 }
5825 #[inline]
5826 pub fn paths(&self) -> AstChildren<Path> {
5827 support::children(&self.syntax)
5828 }
5829 #[inline]
5830 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5831 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5832 }
5833 #[inline]
5834 pub fn collation_token(&self) -> Option<SyntaxToken> {
5835 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
5836 }
5837 #[inline]
5838 pub fn drop_token(&self) -> Option<SyntaxToken> {
5839 support::token(&self.syntax, SyntaxKind::DROP_KW)
5840 }
5841 #[inline]
5842 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5843 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5844 }
5845}
5846
5847#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5848pub struct DropColumn {
5849 pub(crate) syntax: SyntaxNode,
5850}
5851impl DropColumn {
5852 #[inline]
5853 pub fn if_exists(&self) -> Option<IfExists> {
5854 support::child(&self.syntax)
5855 }
5856 #[inline]
5857 pub fn name_ref(&self) -> Option<NameRef> {
5858 support::child(&self.syntax)
5859 }
5860 #[inline]
5861 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5862 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5863 }
5864 #[inline]
5865 pub fn column_token(&self) -> Option<SyntaxToken> {
5866 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
5867 }
5868 #[inline]
5869 pub fn drop_token(&self) -> Option<SyntaxToken> {
5870 support::token(&self.syntax, SyntaxKind::DROP_KW)
5871 }
5872 #[inline]
5873 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5874 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5875 }
5876}
5877
5878#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5879pub struct DropConstraint {
5880 pub(crate) syntax: SyntaxNode,
5881}
5882impl DropConstraint {
5883 #[inline]
5884 pub fn if_exists(&self) -> Option<IfExists> {
5885 support::child(&self.syntax)
5886 }
5887 #[inline]
5888 pub fn name_ref(&self) -> Option<NameRef> {
5889 support::child(&self.syntax)
5890 }
5891 #[inline]
5892 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5893 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5894 }
5895 #[inline]
5896 pub fn constraint_token(&self) -> Option<SyntaxToken> {
5897 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
5898 }
5899 #[inline]
5900 pub fn drop_token(&self) -> Option<SyntaxToken> {
5901 support::token(&self.syntax, SyntaxKind::DROP_KW)
5902 }
5903 #[inline]
5904 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5905 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5906 }
5907}
5908
5909#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5910pub struct DropConversion {
5911 pub(crate) syntax: SyntaxNode,
5912}
5913impl DropConversion {
5914 #[inline]
5915 pub fn if_exists(&self) -> Option<IfExists> {
5916 support::child(&self.syntax)
5917 }
5918 #[inline]
5919 pub fn path(&self) -> Option<Path> {
5920 support::child(&self.syntax)
5921 }
5922 #[inline]
5923 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5924 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5925 }
5926 #[inline]
5927 pub fn conversion_token(&self) -> Option<SyntaxToken> {
5928 support::token(&self.syntax, SyntaxKind::CONVERSION_KW)
5929 }
5930 #[inline]
5931 pub fn drop_token(&self) -> Option<SyntaxToken> {
5932 support::token(&self.syntax, SyntaxKind::DROP_KW)
5933 }
5934 #[inline]
5935 pub fn restrict_token(&self) -> Option<SyntaxToken> {
5936 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
5937 }
5938}
5939
5940#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5941pub struct DropDatabase {
5942 pub(crate) syntax: SyntaxNode,
5943}
5944impl DropDatabase {
5945 #[inline]
5946 pub fn if_exists(&self) -> Option<IfExists> {
5947 support::child(&self.syntax)
5948 }
5949 #[inline]
5950 pub fn name_ref(&self) -> Option<NameRef> {
5951 support::child(&self.syntax)
5952 }
5953 #[inline]
5954 pub fn database_token(&self) -> Option<SyntaxToken> {
5955 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
5956 }
5957 #[inline]
5958 pub fn drop_token(&self) -> Option<SyntaxToken> {
5959 support::token(&self.syntax, SyntaxKind::DROP_KW)
5960 }
5961}
5962
5963#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5964pub struct DropDefault {
5965 pub(crate) syntax: SyntaxNode,
5966}
5967impl DropDefault {
5968 #[inline]
5969 pub fn default_token(&self) -> Option<SyntaxToken> {
5970 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
5971 }
5972 #[inline]
5973 pub fn drop_token(&self) -> Option<SyntaxToken> {
5974 support::token(&self.syntax, SyntaxKind::DROP_KW)
5975 }
5976}
5977
5978#[derive(Debug, Clone, PartialEq, Eq, Hash)]
5979pub struct DropDomain {
5980 pub(crate) syntax: SyntaxNode,
5981}
5982impl DropDomain {
5983 #[inline]
5984 pub fn if_exists(&self) -> Option<IfExists> {
5985 support::child(&self.syntax)
5986 }
5987 #[inline]
5988 pub fn paths(&self) -> AstChildren<Path> {
5989 support::children(&self.syntax)
5990 }
5991 #[inline]
5992 pub fn cascade_token(&self) -> Option<SyntaxToken> {
5993 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
5994 }
5995 #[inline]
5996 pub fn domain_token(&self) -> Option<SyntaxToken> {
5997 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
5998 }
5999 #[inline]
6000 pub fn drop_token(&self) -> Option<SyntaxToken> {
6001 support::token(&self.syntax, SyntaxKind::DROP_KW)
6002 }
6003 #[inline]
6004 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6005 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6006 }
6007}
6008
6009#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6010pub struct DropEventTrigger {
6011 pub(crate) syntax: SyntaxNode,
6012}
6013impl DropEventTrigger {
6014 #[inline]
6015 pub fn if_exists(&self) -> Option<IfExists> {
6016 support::child(&self.syntax)
6017 }
6018 #[inline]
6019 pub fn name_ref(&self) -> Option<NameRef> {
6020 support::child(&self.syntax)
6021 }
6022 #[inline]
6023 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6024 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6025 }
6026 #[inline]
6027 pub fn drop_token(&self) -> Option<SyntaxToken> {
6028 support::token(&self.syntax, SyntaxKind::DROP_KW)
6029 }
6030 #[inline]
6031 pub fn event_token(&self) -> Option<SyntaxToken> {
6032 support::token(&self.syntax, SyntaxKind::EVENT_KW)
6033 }
6034 #[inline]
6035 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6036 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6037 }
6038 #[inline]
6039 pub fn trigger_token(&self) -> Option<SyntaxToken> {
6040 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
6041 }
6042}
6043
6044#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6045pub struct DropExpression {
6046 pub(crate) syntax: SyntaxNode,
6047}
6048impl DropExpression {
6049 #[inline]
6050 pub fn if_exists(&self) -> Option<IfExists> {
6051 support::child(&self.syntax)
6052 }
6053 #[inline]
6054 pub fn drop_token(&self) -> Option<SyntaxToken> {
6055 support::token(&self.syntax, SyntaxKind::DROP_KW)
6056 }
6057 #[inline]
6058 pub fn expression_token(&self) -> Option<SyntaxToken> {
6059 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
6060 }
6061}
6062
6063#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6064pub struct DropExtension {
6065 pub(crate) syntax: SyntaxNode,
6066}
6067impl DropExtension {
6068 #[inline]
6069 pub fn if_exists(&self) -> Option<IfExists> {
6070 support::child(&self.syntax)
6071 }
6072 #[inline]
6073 pub fn name_refs(&self) -> AstChildren<NameRef> {
6074 support::children(&self.syntax)
6075 }
6076 #[inline]
6077 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6078 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6079 }
6080 #[inline]
6081 pub fn drop_token(&self) -> Option<SyntaxToken> {
6082 support::token(&self.syntax, SyntaxKind::DROP_KW)
6083 }
6084 #[inline]
6085 pub fn extension_token(&self) -> Option<SyntaxToken> {
6086 support::token(&self.syntax, SyntaxKind::EXTENSION_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 DropForeignDataWrapper {
6096 pub(crate) syntax: SyntaxNode,
6097}
6098impl DropForeignDataWrapper {
6099 #[inline]
6100 pub fn if_exists(&self) -> Option<IfExists> {
6101 support::child(&self.syntax)
6102 }
6103 #[inline]
6104 pub fn name_refs(&self) -> AstChildren<NameRef> {
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 data_token(&self) -> Option<SyntaxToken> {
6113 support::token(&self.syntax, SyntaxKind::DATA_KW)
6114 }
6115 #[inline]
6116 pub fn drop_token(&self) -> Option<SyntaxToken> {
6117 support::token(&self.syntax, SyntaxKind::DROP_KW)
6118 }
6119 #[inline]
6120 pub fn foreign_token(&self) -> Option<SyntaxToken> {
6121 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
6122 }
6123 #[inline]
6124 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6125 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6126 }
6127 #[inline]
6128 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
6129 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
6130 }
6131}
6132
6133#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6134pub struct DropForeignTable {
6135 pub(crate) syntax: SyntaxNode,
6136}
6137impl DropForeignTable {
6138 #[inline]
6139 pub fn if_exists(&self) -> Option<IfExists> {
6140 support::child(&self.syntax)
6141 }
6142 #[inline]
6143 pub fn path(&self) -> Option<Path> {
6144 support::child(&self.syntax)
6145 }
6146 #[inline]
6147 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6148 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6149 }
6150 #[inline]
6151 pub fn drop_token(&self) -> Option<SyntaxToken> {
6152 support::token(&self.syntax, SyntaxKind::DROP_KW)
6153 }
6154 #[inline]
6155 pub fn foreign_token(&self) -> Option<SyntaxToken> {
6156 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
6157 }
6158 #[inline]
6159 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6160 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6161 }
6162 #[inline]
6163 pub fn table_token(&self) -> Option<SyntaxToken> {
6164 support::token(&self.syntax, SyntaxKind::TABLE_KW)
6165 }
6166}
6167
6168#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6169pub struct DropFunction {
6170 pub(crate) syntax: SyntaxNode,
6171}
6172impl DropFunction {
6173 #[inline]
6174 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6175 support::child(&self.syntax)
6176 }
6177 #[inline]
6178 pub fn if_exists(&self) -> Option<IfExists> {
6179 support::child(&self.syntax)
6180 }
6181 #[inline]
6182 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6183 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6184 }
6185 #[inline]
6186 pub fn drop_token(&self) -> Option<SyntaxToken> {
6187 support::token(&self.syntax, SyntaxKind::DROP_KW)
6188 }
6189 #[inline]
6190 pub fn function_token(&self) -> Option<SyntaxToken> {
6191 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
6192 }
6193 #[inline]
6194 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6195 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6196 }
6197}
6198
6199#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6200pub struct DropGroup {
6201 pub(crate) syntax: SyntaxNode,
6202}
6203impl DropGroup {
6204 #[inline]
6205 pub fn if_exists(&self) -> Option<IfExists> {
6206 support::child(&self.syntax)
6207 }
6208 #[inline]
6209 pub fn name_refs(&self) -> AstChildren<NameRef> {
6210 support::children(&self.syntax)
6211 }
6212 #[inline]
6213 pub fn drop_token(&self) -> Option<SyntaxToken> {
6214 support::token(&self.syntax, SyntaxKind::DROP_KW)
6215 }
6216 #[inline]
6217 pub fn group_token(&self) -> Option<SyntaxToken> {
6218 support::token(&self.syntax, SyntaxKind::GROUP_KW)
6219 }
6220}
6221
6222#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6223pub struct DropIdentity {
6224 pub(crate) syntax: SyntaxNode,
6225}
6226impl DropIdentity {
6227 #[inline]
6228 pub fn if_exists(&self) -> Option<IfExists> {
6229 support::child(&self.syntax)
6230 }
6231 #[inline]
6232 pub fn drop_token(&self) -> Option<SyntaxToken> {
6233 support::token(&self.syntax, SyntaxKind::DROP_KW)
6234 }
6235 #[inline]
6236 pub fn identity_token(&self) -> Option<SyntaxToken> {
6237 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
6238 }
6239}
6240
6241#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6242pub struct DropIndex {
6243 pub(crate) syntax: SyntaxNode,
6244}
6245impl DropIndex {
6246 #[inline]
6247 pub fn if_exists(&self) -> Option<IfExists> {
6248 support::child(&self.syntax)
6249 }
6250 #[inline]
6251 pub fn paths(&self) -> AstChildren<Path> {
6252 support::children(&self.syntax)
6253 }
6254 #[inline]
6255 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6256 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6257 }
6258 #[inline]
6259 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
6260 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
6261 }
6262 #[inline]
6263 pub fn drop_token(&self) -> Option<SyntaxToken> {
6264 support::token(&self.syntax, SyntaxKind::DROP_KW)
6265 }
6266 #[inline]
6267 pub fn index_token(&self) -> Option<SyntaxToken> {
6268 support::token(&self.syntax, SyntaxKind::INDEX_KW)
6269 }
6270 #[inline]
6271 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6272 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6273 }
6274}
6275
6276#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6277pub struct DropLanguage {
6278 pub(crate) syntax: SyntaxNode,
6279}
6280impl DropLanguage {
6281 #[inline]
6282 pub fn if_exists(&self) -> Option<IfExists> {
6283 support::child(&self.syntax)
6284 }
6285 #[inline]
6286 pub fn name_ref(&self) -> Option<NameRef> {
6287 support::child(&self.syntax)
6288 }
6289 #[inline]
6290 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6291 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6292 }
6293 #[inline]
6294 pub fn drop_token(&self) -> Option<SyntaxToken> {
6295 support::token(&self.syntax, SyntaxKind::DROP_KW)
6296 }
6297 #[inline]
6298 pub fn language_token(&self) -> Option<SyntaxToken> {
6299 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
6300 }
6301 #[inline]
6302 pub fn procedural_token(&self) -> Option<SyntaxToken> {
6303 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
6304 }
6305 #[inline]
6306 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6307 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6308 }
6309}
6310
6311#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6312pub struct DropMaterializedView {
6313 pub(crate) syntax: SyntaxNode,
6314}
6315impl DropMaterializedView {
6316 #[inline]
6317 pub fn if_exists(&self) -> Option<IfExists> {
6318 support::child(&self.syntax)
6319 }
6320 #[inline]
6321 pub fn paths(&self) -> AstChildren<Path> {
6322 support::children(&self.syntax)
6323 }
6324 #[inline]
6325 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6326 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6327 }
6328 #[inline]
6329 pub fn drop_token(&self) -> Option<SyntaxToken> {
6330 support::token(&self.syntax, SyntaxKind::DROP_KW)
6331 }
6332 #[inline]
6333 pub fn materialized_token(&self) -> Option<SyntaxToken> {
6334 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
6335 }
6336 #[inline]
6337 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6338 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6339 }
6340 #[inline]
6341 pub fn view_token(&self) -> Option<SyntaxToken> {
6342 support::token(&self.syntax, SyntaxKind::VIEW_KW)
6343 }
6344}
6345
6346#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6347pub struct DropNotNull {
6348 pub(crate) syntax: SyntaxNode,
6349}
6350impl DropNotNull {
6351 #[inline]
6352 pub fn drop_token(&self) -> Option<SyntaxToken> {
6353 support::token(&self.syntax, SyntaxKind::DROP_KW)
6354 }
6355 #[inline]
6356 pub fn not_token(&self) -> Option<SyntaxToken> {
6357 support::token(&self.syntax, SyntaxKind::NOT_KW)
6358 }
6359 #[inline]
6360 pub fn null_token(&self) -> Option<SyntaxToken> {
6361 support::token(&self.syntax, SyntaxKind::NULL_KW)
6362 }
6363}
6364
6365#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6366pub struct DropOpClassOption {
6367 pub(crate) syntax: SyntaxNode,
6368}
6369impl DropOpClassOption {
6370 #[inline]
6371 pub fn literal(&self) -> Option<Literal> {
6372 support::child(&self.syntax)
6373 }
6374 #[inline]
6375 pub fn param_list(&self) -> Option<ParamList> {
6376 support::child(&self.syntax)
6377 }
6378 #[inline]
6379 pub fn function_token(&self) -> Option<SyntaxToken> {
6380 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
6381 }
6382 #[inline]
6383 pub fn operator_token(&self) -> Option<SyntaxToken> {
6384 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6385 }
6386}
6387
6388#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6389pub struct DropOpClassOptionList {
6390 pub(crate) syntax: SyntaxNode,
6391}
6392impl DropOpClassOptionList {
6393 #[inline]
6394 pub fn drop_op_class_options(&self) -> AstChildren<DropOpClassOption> {
6395 support::children(&self.syntax)
6396 }
6397}
6398
6399#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6400pub struct DropOpClassOptions {
6401 pub(crate) syntax: SyntaxNode,
6402}
6403impl DropOpClassOptions {
6404 #[inline]
6405 pub fn drop_op_class_option_list(&self) -> Option<DropOpClassOptionList> {
6406 support::child(&self.syntax)
6407 }
6408 #[inline]
6409 pub fn drop_token(&self) -> Option<SyntaxToken> {
6410 support::token(&self.syntax, SyntaxKind::DROP_KW)
6411 }
6412}
6413
6414#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6415pub struct DropOperator {
6416 pub(crate) syntax: SyntaxNode,
6417}
6418impl DropOperator {
6419 #[inline]
6420 pub fn if_exists(&self) -> Option<IfExists> {
6421 support::child(&self.syntax)
6422 }
6423 #[inline]
6424 pub fn op_sig_list(&self) -> Option<OpSigList> {
6425 support::child(&self.syntax)
6426 }
6427 #[inline]
6428 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6429 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6430 }
6431 #[inline]
6432 pub fn drop_token(&self) -> Option<SyntaxToken> {
6433 support::token(&self.syntax, SyntaxKind::DROP_KW)
6434 }
6435 #[inline]
6436 pub fn operator_token(&self) -> Option<SyntaxToken> {
6437 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6438 }
6439 #[inline]
6440 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6441 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6442 }
6443}
6444
6445#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6446pub struct DropOperatorClass {
6447 pub(crate) syntax: SyntaxNode,
6448}
6449impl DropOperatorClass {
6450 #[inline]
6451 pub fn if_exists(&self) -> Option<IfExists> {
6452 support::child(&self.syntax)
6453 }
6454 #[inline]
6455 pub fn name_ref(&self) -> Option<NameRef> {
6456 support::child(&self.syntax)
6457 }
6458 #[inline]
6459 pub fn path(&self) -> Option<Path> {
6460 support::child(&self.syntax)
6461 }
6462 #[inline]
6463 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6464 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6465 }
6466 #[inline]
6467 pub fn class_token(&self) -> Option<SyntaxToken> {
6468 support::token(&self.syntax, SyntaxKind::CLASS_KW)
6469 }
6470 #[inline]
6471 pub fn drop_token(&self) -> Option<SyntaxToken> {
6472 support::token(&self.syntax, SyntaxKind::DROP_KW)
6473 }
6474 #[inline]
6475 pub fn operator_token(&self) -> Option<SyntaxToken> {
6476 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
6477 }
6478 #[inline]
6479 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6480 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6481 }
6482 #[inline]
6483 pub fn using_token(&self) -> Option<SyntaxToken> {
6484 support::token(&self.syntax, SyntaxKind::USING_KW)
6485 }
6486}
6487
6488#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6489pub struct DropOperatorFamily {
6490 pub(crate) syntax: SyntaxNode,
6491}
6492impl DropOperatorFamily {
6493 #[inline]
6494 pub fn if_exists(&self) -> Option<IfExists> {
6495 support::child(&self.syntax)
6496 }
6497 #[inline]
6498 pub fn name_ref(&self) -> Option<NameRef> {
6499 support::child(&self.syntax)
6500 }
6501 #[inline]
6502 pub fn path(&self) -> Option<Path> {
6503 support::child(&self.syntax)
6504 }
6505 #[inline]
6506 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6507 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6508 }
6509 #[inline]
6510 pub fn drop_token(&self) -> Option<SyntaxToken> {
6511 support::token(&self.syntax, SyntaxKind::DROP_KW)
6512 }
6513 #[inline]
6514 pub fn family_token(&self) -> Option<SyntaxToken> {
6515 support::token(&self.syntax, SyntaxKind::FAMILY_KW)
6516 }
6517 #[inline]
6518 pub fn operator_token(&self) -> Option<SyntaxToken> {
6519 support::token(&self.syntax, SyntaxKind::OPERATOR_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 using_token(&self) -> Option<SyntaxToken> {
6527 support::token(&self.syntax, SyntaxKind::USING_KW)
6528 }
6529}
6530
6531#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6532pub struct DropOwned {
6533 pub(crate) syntax: SyntaxNode,
6534}
6535impl DropOwned {
6536 #[inline]
6537 pub fn role_ref_list(&self) -> Option<RoleRefList> {
6538 support::child(&self.syntax)
6539 }
6540 #[inline]
6541 pub fn by_token(&self) -> Option<SyntaxToken> {
6542 support::token(&self.syntax, SyntaxKind::BY_KW)
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 owned_token(&self) -> Option<SyntaxToken> {
6554 support::token(&self.syntax, SyntaxKind::OWNED_KW)
6555 }
6556 #[inline]
6557 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6558 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6559 }
6560}
6561
6562#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6563pub struct DropPolicy {
6564 pub(crate) syntax: SyntaxNode,
6565}
6566impl DropPolicy {
6567 #[inline]
6568 pub fn if_exists(&self) -> Option<IfExists> {
6569 support::child(&self.syntax)
6570 }
6571 #[inline]
6572 pub fn name_ref(&self) -> Option<NameRef> {
6573 support::child(&self.syntax)
6574 }
6575 #[inline]
6576 pub fn on_table(&self) -> Option<OnTable> {
6577 support::child(&self.syntax)
6578 }
6579 #[inline]
6580 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6581 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6582 }
6583 #[inline]
6584 pub fn drop_token(&self) -> Option<SyntaxToken> {
6585 support::token(&self.syntax, SyntaxKind::DROP_KW)
6586 }
6587 #[inline]
6588 pub fn policy_token(&self) -> Option<SyntaxToken> {
6589 support::token(&self.syntax, SyntaxKind::POLICY_KW)
6590 }
6591 #[inline]
6592 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6593 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6594 }
6595}
6596
6597#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6598pub struct DropProcedure {
6599 pub(crate) syntax: SyntaxNode,
6600}
6601impl DropProcedure {
6602 #[inline]
6603 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6604 support::child(&self.syntax)
6605 }
6606 #[inline]
6607 pub fn if_exists(&self) -> Option<IfExists> {
6608 support::child(&self.syntax)
6609 }
6610 #[inline]
6611 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6612 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6613 }
6614 #[inline]
6615 pub fn drop_token(&self) -> Option<SyntaxToken> {
6616 support::token(&self.syntax, SyntaxKind::DROP_KW)
6617 }
6618 #[inline]
6619 pub fn procedure_token(&self) -> Option<SyntaxToken> {
6620 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
6621 }
6622 #[inline]
6623 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6624 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6625 }
6626}
6627
6628#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6629pub struct DropPublication {
6630 pub(crate) syntax: SyntaxNode,
6631}
6632impl DropPublication {
6633 #[inline]
6634 pub fn if_exists(&self) -> Option<IfExists> {
6635 support::child(&self.syntax)
6636 }
6637 #[inline]
6638 pub fn name_refs(&self) -> AstChildren<NameRef> {
6639 support::children(&self.syntax)
6640 }
6641 #[inline]
6642 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6643 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6644 }
6645 #[inline]
6646 pub fn drop_token(&self) -> Option<SyntaxToken> {
6647 support::token(&self.syntax, SyntaxKind::DROP_KW)
6648 }
6649 #[inline]
6650 pub fn publication_token(&self) -> Option<SyntaxToken> {
6651 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
6652 }
6653 #[inline]
6654 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6655 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6656 }
6657}
6658
6659#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6660pub struct DropRole {
6661 pub(crate) syntax: SyntaxNode,
6662}
6663impl DropRole {
6664 #[inline]
6665 pub fn if_exists(&self) -> Option<IfExists> {
6666 support::child(&self.syntax)
6667 }
6668 #[inline]
6669 pub fn name_refs(&self) -> AstChildren<NameRef> {
6670 support::children(&self.syntax)
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 role_token(&self) -> Option<SyntaxToken> {
6678 support::token(&self.syntax, SyntaxKind::ROLE_KW)
6679 }
6680}
6681
6682#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6683pub struct DropRoutine {
6684 pub(crate) syntax: SyntaxNode,
6685}
6686impl DropRoutine {
6687 #[inline]
6688 pub fn function_sig_list(&self) -> Option<FunctionSigList> {
6689 support::child(&self.syntax)
6690 }
6691 #[inline]
6692 pub fn if_exists(&self) -> Option<IfExists> {
6693 support::child(&self.syntax)
6694 }
6695 #[inline]
6696 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6697 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6698 }
6699 #[inline]
6700 pub fn drop_token(&self) -> Option<SyntaxToken> {
6701 support::token(&self.syntax, SyntaxKind::DROP_KW)
6702 }
6703 #[inline]
6704 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6705 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6706 }
6707 #[inline]
6708 pub fn routine_token(&self) -> Option<SyntaxToken> {
6709 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
6710 }
6711}
6712
6713#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6714pub struct DropRule {
6715 pub(crate) syntax: SyntaxNode,
6716}
6717impl DropRule {
6718 #[inline]
6719 pub fn if_exists(&self) -> Option<IfExists> {
6720 support::child(&self.syntax)
6721 }
6722 #[inline]
6723 pub fn name_ref(&self) -> Option<NameRef> {
6724 support::child(&self.syntax)
6725 }
6726 #[inline]
6727 pub fn on_table(&self) -> Option<OnTable> {
6728 support::child(&self.syntax)
6729 }
6730 #[inline]
6731 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6732 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
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 restrict_token(&self) -> Option<SyntaxToken> {
6740 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6741 }
6742 #[inline]
6743 pub fn rule_token(&self) -> Option<SyntaxToken> {
6744 support::token(&self.syntax, SyntaxKind::RULE_KW)
6745 }
6746}
6747
6748#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6749pub struct DropSchema {
6750 pub(crate) syntax: SyntaxNode,
6751}
6752impl DropSchema {
6753 #[inline]
6754 pub fn if_exists(&self) -> Option<IfExists> {
6755 support::child(&self.syntax)
6756 }
6757 #[inline]
6758 pub fn name_refs(&self) -> AstChildren<NameRef> {
6759 support::children(&self.syntax)
6760 }
6761 #[inline]
6762 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6763 support::token(&self.syntax, SyntaxKind::CASCADE_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 schema_token(&self) -> Option<SyntaxToken> {
6775 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
6776 }
6777}
6778
6779#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6780pub struct DropSequence {
6781 pub(crate) syntax: SyntaxNode,
6782}
6783impl DropSequence {
6784 #[inline]
6785 pub fn if_exists(&self) -> Option<IfExists> {
6786 support::child(&self.syntax)
6787 }
6788 #[inline]
6789 pub fn paths(&self) -> AstChildren<Path> {
6790 support::children(&self.syntax)
6791 }
6792 #[inline]
6793 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6794 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6795 }
6796 #[inline]
6797 pub fn drop_token(&self) -> Option<SyntaxToken> {
6798 support::token(&self.syntax, SyntaxKind::DROP_KW)
6799 }
6800 #[inline]
6801 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6802 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6803 }
6804 #[inline]
6805 pub fn sequence_token(&self) -> Option<SyntaxToken> {
6806 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
6807 }
6808}
6809
6810#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6811pub struct DropServer {
6812 pub(crate) syntax: SyntaxNode,
6813}
6814impl DropServer {
6815 #[inline]
6816 pub fn if_exists(&self) -> Option<IfExists> {
6817 support::child(&self.syntax)
6818 }
6819 #[inline]
6820 pub fn name_ref(&self) -> Option<NameRef> {
6821 support::child(&self.syntax)
6822 }
6823 #[inline]
6824 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6825 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6826 }
6827 #[inline]
6828 pub fn drop_token(&self) -> Option<SyntaxToken> {
6829 support::token(&self.syntax, SyntaxKind::DROP_KW)
6830 }
6831 #[inline]
6832 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6833 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6834 }
6835 #[inline]
6836 pub fn server_token(&self) -> Option<SyntaxToken> {
6837 support::token(&self.syntax, SyntaxKind::SERVER_KW)
6838 }
6839}
6840
6841#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6842pub struct DropStatistics {
6843 pub(crate) syntax: SyntaxNode,
6844}
6845impl DropStatistics {
6846 #[inline]
6847 pub fn if_exists(&self) -> Option<IfExists> {
6848 support::child(&self.syntax)
6849 }
6850 #[inline]
6851 pub fn paths(&self) -> AstChildren<Path> {
6852 support::children(&self.syntax)
6853 }
6854 #[inline]
6855 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6856 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6857 }
6858 #[inline]
6859 pub fn drop_token(&self) -> Option<SyntaxToken> {
6860 support::token(&self.syntax, SyntaxKind::DROP_KW)
6861 }
6862 #[inline]
6863 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6864 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6865 }
6866 #[inline]
6867 pub fn statistics_token(&self) -> Option<SyntaxToken> {
6868 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
6869 }
6870}
6871
6872#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6873pub struct DropSubscription {
6874 pub(crate) syntax: SyntaxNode,
6875}
6876impl DropSubscription {
6877 #[inline]
6878 pub fn if_exists(&self) -> Option<IfExists> {
6879 support::child(&self.syntax)
6880 }
6881 #[inline]
6882 pub fn name_ref(&self) -> Option<NameRef> {
6883 support::child(&self.syntax)
6884 }
6885 #[inline]
6886 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6887 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6888 }
6889 #[inline]
6890 pub fn drop_token(&self) -> Option<SyntaxToken> {
6891 support::token(&self.syntax, SyntaxKind::DROP_KW)
6892 }
6893 #[inline]
6894 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6895 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6896 }
6897 #[inline]
6898 pub fn subscription_token(&self) -> Option<SyntaxToken> {
6899 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
6900 }
6901}
6902
6903#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6904pub struct DropTable {
6905 pub(crate) syntax: SyntaxNode,
6906}
6907impl DropTable {
6908 #[inline]
6909 pub fn if_exists(&self) -> Option<IfExists> {
6910 support::child(&self.syntax)
6911 }
6912 #[inline]
6913 pub fn path(&self) -> Option<Path> {
6914 support::child(&self.syntax)
6915 }
6916 #[inline]
6917 pub fn comma_token(&self) -> Option<SyntaxToken> {
6918 support::token(&self.syntax, SyntaxKind::COMMA)
6919 }
6920 #[inline]
6921 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6922 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6923 }
6924 #[inline]
6925 pub fn drop_token(&self) -> Option<SyntaxToken> {
6926 support::token(&self.syntax, SyntaxKind::DROP_KW)
6927 }
6928 #[inline]
6929 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6930 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6931 }
6932 #[inline]
6933 pub fn table_token(&self) -> Option<SyntaxToken> {
6934 support::token(&self.syntax, SyntaxKind::TABLE_KW)
6935 }
6936}
6937
6938#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6939pub struct DropTablespace {
6940 pub(crate) syntax: SyntaxNode,
6941}
6942impl DropTablespace {
6943 #[inline]
6944 pub fn if_exists(&self) -> Option<IfExists> {
6945 support::child(&self.syntax)
6946 }
6947 #[inline]
6948 pub fn name_ref(&self) -> Option<NameRef> {
6949 support::child(&self.syntax)
6950 }
6951 #[inline]
6952 pub fn drop_token(&self) -> Option<SyntaxToken> {
6953 support::token(&self.syntax, SyntaxKind::DROP_KW)
6954 }
6955 #[inline]
6956 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
6957 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
6958 }
6959}
6960
6961#[derive(Debug, Clone, PartialEq, Eq, Hash)]
6962pub struct DropTextSearchConfig {
6963 pub(crate) syntax: SyntaxNode,
6964}
6965impl DropTextSearchConfig {
6966 #[inline]
6967 pub fn if_exists(&self) -> Option<IfExists> {
6968 support::child(&self.syntax)
6969 }
6970 #[inline]
6971 pub fn path(&self) -> Option<Path> {
6972 support::child(&self.syntax)
6973 }
6974 #[inline]
6975 pub fn cascade_token(&self) -> Option<SyntaxToken> {
6976 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
6977 }
6978 #[inline]
6979 pub fn configuration_token(&self) -> Option<SyntaxToken> {
6980 support::token(&self.syntax, SyntaxKind::CONFIGURATION_KW)
6981 }
6982 #[inline]
6983 pub fn drop_token(&self) -> Option<SyntaxToken> {
6984 support::token(&self.syntax, SyntaxKind::DROP_KW)
6985 }
6986 #[inline]
6987 pub fn restrict_token(&self) -> Option<SyntaxToken> {
6988 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
6989 }
6990 #[inline]
6991 pub fn search_token(&self) -> Option<SyntaxToken> {
6992 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
6993 }
6994 #[inline]
6995 pub fn text_token(&self) -> Option<SyntaxToken> {
6996 support::token(&self.syntax, SyntaxKind::TEXT_KW)
6997 }
6998}
6999
7000#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7001pub struct DropTextSearchDict {
7002 pub(crate) syntax: SyntaxNode,
7003}
7004impl DropTextSearchDict {
7005 #[inline]
7006 pub fn if_exists(&self) -> Option<IfExists> {
7007 support::child(&self.syntax)
7008 }
7009 #[inline]
7010 pub fn path(&self) -> Option<Path> {
7011 support::child(&self.syntax)
7012 }
7013 #[inline]
7014 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7015 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7016 }
7017 #[inline]
7018 pub fn dictionary_token(&self) -> Option<SyntaxToken> {
7019 support::token(&self.syntax, SyntaxKind::DICTIONARY_KW)
7020 }
7021 #[inline]
7022 pub fn drop_token(&self) -> Option<SyntaxToken> {
7023 support::token(&self.syntax, SyntaxKind::DROP_KW)
7024 }
7025 #[inline]
7026 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7027 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7028 }
7029 #[inline]
7030 pub fn search_token(&self) -> Option<SyntaxToken> {
7031 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
7032 }
7033 #[inline]
7034 pub fn text_token(&self) -> Option<SyntaxToken> {
7035 support::token(&self.syntax, SyntaxKind::TEXT_KW)
7036 }
7037}
7038
7039#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7040pub struct DropTextSearchParser {
7041 pub(crate) syntax: SyntaxNode,
7042}
7043impl DropTextSearchParser {
7044 #[inline]
7045 pub fn if_exists(&self) -> Option<IfExists> {
7046 support::child(&self.syntax)
7047 }
7048 #[inline]
7049 pub fn path(&self) -> Option<Path> {
7050 support::child(&self.syntax)
7051 }
7052 #[inline]
7053 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7054 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7055 }
7056 #[inline]
7057 pub fn drop_token(&self) -> Option<SyntaxToken> {
7058 support::token(&self.syntax, SyntaxKind::DROP_KW)
7059 }
7060 #[inline]
7061 pub fn parser_token(&self) -> Option<SyntaxToken> {
7062 support::token(&self.syntax, SyntaxKind::PARSER_KW)
7063 }
7064 #[inline]
7065 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7066 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7067 }
7068 #[inline]
7069 pub fn search_token(&self) -> Option<SyntaxToken> {
7070 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
7071 }
7072 #[inline]
7073 pub fn text_token(&self) -> Option<SyntaxToken> {
7074 support::token(&self.syntax, SyntaxKind::TEXT_KW)
7075 }
7076}
7077
7078#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7079pub struct DropTextSearchTemplate {
7080 pub(crate) syntax: SyntaxNode,
7081}
7082impl DropTextSearchTemplate {
7083 #[inline]
7084 pub fn if_exists(&self) -> Option<IfExists> {
7085 support::child(&self.syntax)
7086 }
7087 #[inline]
7088 pub fn path(&self) -> Option<Path> {
7089 support::child(&self.syntax)
7090 }
7091 #[inline]
7092 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7093 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7094 }
7095 #[inline]
7096 pub fn drop_token(&self) -> Option<SyntaxToken> {
7097 support::token(&self.syntax, SyntaxKind::DROP_KW)
7098 }
7099 #[inline]
7100 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7101 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7102 }
7103 #[inline]
7104 pub fn search_token(&self) -> Option<SyntaxToken> {
7105 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
7106 }
7107 #[inline]
7108 pub fn template_token(&self) -> Option<SyntaxToken> {
7109 support::token(&self.syntax, SyntaxKind::TEMPLATE_KW)
7110 }
7111 #[inline]
7112 pub fn text_token(&self) -> Option<SyntaxToken> {
7113 support::token(&self.syntax, SyntaxKind::TEXT_KW)
7114 }
7115}
7116
7117#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7118pub struct DropTransform {
7119 pub(crate) syntax: SyntaxNode,
7120}
7121impl DropTransform {
7122 #[inline]
7123 pub fn if_exists(&self) -> Option<IfExists> {
7124 support::child(&self.syntax)
7125 }
7126 #[inline]
7127 pub fn language(&self) -> Option<NameRef> {
7128 support::child(&self.syntax)
7129 }
7130 #[inline]
7131 pub fn ty(&self) -> Option<Type> {
7132 support::child(&self.syntax)
7133 }
7134 #[inline]
7135 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7136 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7137 }
7138 #[inline]
7139 pub fn drop_token(&self) -> Option<SyntaxToken> {
7140 support::token(&self.syntax, SyntaxKind::DROP_KW)
7141 }
7142 #[inline]
7143 pub fn for_token(&self) -> Option<SyntaxToken> {
7144 support::token(&self.syntax, SyntaxKind::FOR_KW)
7145 }
7146 #[inline]
7147 pub fn language_token(&self) -> Option<SyntaxToken> {
7148 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
7149 }
7150 #[inline]
7151 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7152 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7153 }
7154 #[inline]
7155 pub fn transform_token(&self) -> Option<SyntaxToken> {
7156 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
7157 }
7158}
7159
7160#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7161pub struct DropTrigger {
7162 pub(crate) syntax: SyntaxNode,
7163}
7164impl DropTrigger {
7165 #[inline]
7166 pub fn if_exists(&self) -> Option<IfExists> {
7167 support::child(&self.syntax)
7168 }
7169 #[inline]
7170 pub fn on_table(&self) -> Option<OnTable> {
7171 support::child(&self.syntax)
7172 }
7173 #[inline]
7174 pub fn path(&self) -> Option<Path> {
7175 support::child(&self.syntax)
7176 }
7177 #[inline]
7178 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7179 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7180 }
7181 #[inline]
7182 pub fn drop_token(&self) -> Option<SyntaxToken> {
7183 support::token(&self.syntax, SyntaxKind::DROP_KW)
7184 }
7185 #[inline]
7186 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7187 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7188 }
7189 #[inline]
7190 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7191 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7192 }
7193}
7194
7195#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7196pub struct DropType {
7197 pub(crate) syntax: SyntaxNode,
7198}
7199impl DropType {
7200 #[inline]
7201 pub fn if_exists(&self) -> Option<IfExists> {
7202 support::child(&self.syntax)
7203 }
7204 #[inline]
7205 pub fn paths(&self) -> AstChildren<Path> {
7206 support::children(&self.syntax)
7207 }
7208 #[inline]
7209 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7210 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7211 }
7212 #[inline]
7213 pub fn drop_token(&self) -> Option<SyntaxToken> {
7214 support::token(&self.syntax, SyntaxKind::DROP_KW)
7215 }
7216 #[inline]
7217 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7218 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7219 }
7220 #[inline]
7221 pub fn type_token(&self) -> Option<SyntaxToken> {
7222 support::token(&self.syntax, SyntaxKind::TYPE_KW)
7223 }
7224}
7225
7226#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7227pub struct DropUser {
7228 pub(crate) syntax: SyntaxNode,
7229}
7230impl DropUser {
7231 #[inline]
7232 pub fn if_exists(&self) -> Option<IfExists> {
7233 support::child(&self.syntax)
7234 }
7235 #[inline]
7236 pub fn name_refs(&self) -> AstChildren<NameRef> {
7237 support::children(&self.syntax)
7238 }
7239 #[inline]
7240 pub fn drop_token(&self) -> Option<SyntaxToken> {
7241 support::token(&self.syntax, SyntaxKind::DROP_KW)
7242 }
7243 #[inline]
7244 pub fn user_token(&self) -> Option<SyntaxToken> {
7245 support::token(&self.syntax, SyntaxKind::USER_KW)
7246 }
7247}
7248
7249#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7250pub struct DropUserMapping {
7251 pub(crate) syntax: SyntaxNode,
7252}
7253impl DropUserMapping {
7254 #[inline]
7255 pub fn if_exists(&self) -> Option<IfExists> {
7256 support::child(&self.syntax)
7257 }
7258 #[inline]
7259 pub fn role_ref(&self) -> Option<RoleRef> {
7260 support::child(&self.syntax)
7261 }
7262 #[inline]
7263 pub fn server_name(&self) -> Option<ServerName> {
7264 support::child(&self.syntax)
7265 }
7266 #[inline]
7267 pub fn drop_token(&self) -> Option<SyntaxToken> {
7268 support::token(&self.syntax, SyntaxKind::DROP_KW)
7269 }
7270 #[inline]
7271 pub fn for_token(&self) -> Option<SyntaxToken> {
7272 support::token(&self.syntax, SyntaxKind::FOR_KW)
7273 }
7274 #[inline]
7275 pub fn mapping_token(&self) -> Option<SyntaxToken> {
7276 support::token(&self.syntax, SyntaxKind::MAPPING_KW)
7277 }
7278 #[inline]
7279 pub fn user_token(&self) -> Option<SyntaxToken> {
7280 support::token(&self.syntax, SyntaxKind::USER_KW)
7281 }
7282}
7283
7284#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7285pub struct DropView {
7286 pub(crate) syntax: SyntaxNode,
7287}
7288impl DropView {
7289 #[inline]
7290 pub fn if_exists(&self) -> Option<IfExists> {
7291 support::child(&self.syntax)
7292 }
7293 #[inline]
7294 pub fn path(&self) -> Option<Path> {
7295 support::child(&self.syntax)
7296 }
7297 #[inline]
7298 pub fn cascade_token(&self) -> Option<SyntaxToken> {
7299 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
7300 }
7301 #[inline]
7302 pub fn drop_token(&self) -> Option<SyntaxToken> {
7303 support::token(&self.syntax, SyntaxKind::DROP_KW)
7304 }
7305 #[inline]
7306 pub fn restrict_token(&self) -> Option<SyntaxToken> {
7307 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
7308 }
7309 #[inline]
7310 pub fn view_token(&self) -> Option<SyntaxToken> {
7311 support::token(&self.syntax, SyntaxKind::VIEW_KW)
7312 }
7313}
7314
7315#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7316pub struct ElseClause {
7317 pub(crate) syntax: SyntaxNode,
7318}
7319impl ElseClause {
7320 #[inline]
7321 pub fn expr(&self) -> Option<Expr> {
7322 support::child(&self.syntax)
7323 }
7324 #[inline]
7325 pub fn else_token(&self) -> Option<SyntaxToken> {
7326 support::token(&self.syntax, SyntaxKind::ELSE_KW)
7327 }
7328}
7329
7330#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7331pub struct EnableAlwaysRule {
7332 pub(crate) syntax: SyntaxNode,
7333}
7334impl EnableAlwaysRule {
7335 #[inline]
7336 pub fn always_token(&self) -> Option<SyntaxToken> {
7337 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7338 }
7339 #[inline]
7340 pub fn enable_token(&self) -> Option<SyntaxToken> {
7341 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7342 }
7343 #[inline]
7344 pub fn rule_token(&self) -> Option<SyntaxToken> {
7345 support::token(&self.syntax, SyntaxKind::RULE_KW)
7346 }
7347}
7348
7349#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7350pub struct EnableAlwaysTrigger {
7351 pub(crate) syntax: SyntaxNode,
7352}
7353impl EnableAlwaysTrigger {
7354 #[inline]
7355 pub fn always_token(&self) -> Option<SyntaxToken> {
7356 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
7357 }
7358 #[inline]
7359 pub fn enable_token(&self) -> Option<SyntaxToken> {
7360 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7361 }
7362 #[inline]
7363 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7364 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7365 }
7366}
7367
7368#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7369pub struct EnableReplicaRule {
7370 pub(crate) syntax: SyntaxNode,
7371}
7372impl EnableReplicaRule {
7373 #[inline]
7374 pub fn enable_token(&self) -> Option<SyntaxToken> {
7375 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7376 }
7377 #[inline]
7378 pub fn replica_token(&self) -> Option<SyntaxToken> {
7379 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
7380 }
7381 #[inline]
7382 pub fn rule_token(&self) -> Option<SyntaxToken> {
7383 support::token(&self.syntax, SyntaxKind::RULE_KW)
7384 }
7385}
7386
7387#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7388pub struct EnableReplicaTrigger {
7389 pub(crate) syntax: SyntaxNode,
7390}
7391impl EnableReplicaTrigger {
7392 #[inline]
7393 pub fn enable_token(&self) -> Option<SyntaxToken> {
7394 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7395 }
7396 #[inline]
7397 pub fn replica_token(&self) -> Option<SyntaxToken> {
7398 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
7399 }
7400 #[inline]
7401 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7402 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7403 }
7404}
7405
7406#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7407pub struct EnableRls {
7408 pub(crate) syntax: SyntaxNode,
7409}
7410impl EnableRls {
7411 #[inline]
7412 pub fn enable_token(&self) -> Option<SyntaxToken> {
7413 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7414 }
7415 #[inline]
7416 pub fn level_token(&self) -> Option<SyntaxToken> {
7417 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7418 }
7419 #[inline]
7420 pub fn row_token(&self) -> Option<SyntaxToken> {
7421 support::token(&self.syntax, SyntaxKind::ROW_KW)
7422 }
7423 #[inline]
7424 pub fn security_token(&self) -> Option<SyntaxToken> {
7425 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7426 }
7427}
7428
7429#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7430pub struct EnableRule {
7431 pub(crate) syntax: SyntaxNode,
7432}
7433impl EnableRule {
7434 #[inline]
7435 pub fn enable_token(&self) -> Option<SyntaxToken> {
7436 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7437 }
7438 #[inline]
7439 pub fn rule_token(&self) -> Option<SyntaxToken> {
7440 support::token(&self.syntax, SyntaxKind::RULE_KW)
7441 }
7442}
7443
7444#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7445pub struct EnableTrigger {
7446 pub(crate) syntax: SyntaxNode,
7447}
7448impl EnableTrigger {
7449 #[inline]
7450 pub fn enable_token(&self) -> Option<SyntaxToken> {
7451 support::token(&self.syntax, SyntaxKind::ENABLE_KW)
7452 }
7453 #[inline]
7454 pub fn trigger_token(&self) -> Option<SyntaxToken> {
7455 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
7456 }
7457}
7458
7459#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7460pub struct Enforced {
7461 pub(crate) syntax: SyntaxNode,
7462}
7463impl Enforced {
7464 #[inline]
7465 pub fn enforced_token(&self) -> Option<SyntaxToken> {
7466 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
7467 }
7468}
7469
7470#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7471pub struct EventTriggerWhen {
7472 pub(crate) syntax: SyntaxNode,
7473}
7474impl EventTriggerWhen {
7475 #[inline]
7476 pub fn literals(&self) -> AstChildren<Literal> {
7477 support::children(&self.syntax)
7478 }
7479 #[inline]
7480 pub fn name_ref(&self) -> Option<NameRef> {
7481 support::child(&self.syntax)
7482 }
7483 #[inline]
7484 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7485 support::token(&self.syntax, SyntaxKind::L_PAREN)
7486 }
7487 #[inline]
7488 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7489 support::token(&self.syntax, SyntaxKind::R_PAREN)
7490 }
7491 #[inline]
7492 pub fn in_token(&self) -> Option<SyntaxToken> {
7493 support::token(&self.syntax, SyntaxKind::IN_KW)
7494 }
7495}
7496
7497#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7498pub struct EventTriggerWhenClause {
7499 pub(crate) syntax: SyntaxNode,
7500}
7501impl EventTriggerWhenClause {
7502 #[inline]
7503 pub fn event_trigger_whens(&self) -> AstChildren<EventTriggerWhen> {
7504 support::children(&self.syntax)
7505 }
7506 #[inline]
7507 pub fn when_token(&self) -> Option<SyntaxToken> {
7508 support::token(&self.syntax, SyntaxKind::WHEN_KW)
7509 }
7510}
7511
7512#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7513pub struct ExceptTables {
7514 pub(crate) syntax: SyntaxNode,
7515}
7516impl ExceptTables {
7517 #[inline]
7518 pub fn name_refs(&self) -> AstChildren<NameRef> {
7519 support::children(&self.syntax)
7520 }
7521 #[inline]
7522 pub fn except_token(&self) -> Option<SyntaxToken> {
7523 support::token(&self.syntax, SyntaxKind::EXCEPT_KW)
7524 }
7525}
7526
7527#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7528pub struct ExcludeConstraint {
7529 pub(crate) syntax: SyntaxNode,
7530}
7531impl ExcludeConstraint {
7532 #[inline]
7533 pub fn constraint_exclusion_list(&self) -> Option<ConstraintExclusionList> {
7534 support::child(&self.syntax)
7535 }
7536 #[inline]
7537 pub fn constraint_index_method(&self) -> Option<ConstraintIndexMethod> {
7538 support::child(&self.syntax)
7539 }
7540 #[inline]
7541 pub fn constraint_name(&self) -> Option<ConstraintName> {
7542 support::child(&self.syntax)
7543 }
7544 #[inline]
7545 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
7546 support::child(&self.syntax)
7547 }
7548 #[inline]
7549 pub fn exclude_token(&self) -> Option<SyntaxToken> {
7550 support::token(&self.syntax, SyntaxKind::EXCLUDE_KW)
7551 }
7552}
7553
7554#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7555pub struct Execute {
7556 pub(crate) syntax: SyntaxNode,
7557}
7558impl Execute {
7559 #[inline]
7560 pub fn arg_list(&self) -> Option<ArgList> {
7561 support::child(&self.syntax)
7562 }
7563 #[inline]
7564 pub fn name_ref(&self) -> Option<NameRef> {
7565 support::child(&self.syntax)
7566 }
7567 #[inline]
7568 pub fn execute_token(&self) -> Option<SyntaxToken> {
7569 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
7570 }
7571}
7572
7573#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7574pub struct ExistsFn {
7575 pub(crate) syntax: SyntaxNode,
7576}
7577impl ExistsFn {
7578 #[inline]
7579 pub fn select_variant(&self) -> Option<SelectVariant> {
7580 support::child(&self.syntax)
7581 }
7582 #[inline]
7583 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7584 support::token(&self.syntax, SyntaxKind::L_PAREN)
7585 }
7586 #[inline]
7587 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7588 support::token(&self.syntax, SyntaxKind::R_PAREN)
7589 }
7590 #[inline]
7591 pub fn exists_token(&self) -> Option<SyntaxToken> {
7592 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
7593 }
7594}
7595
7596#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7597pub struct Explain {
7598 pub(crate) syntax: SyntaxNode,
7599}
7600impl Explain {
7601 #[inline]
7602 pub fn explain_stmt(&self) -> Option<ExplainStmt> {
7603 support::child(&self.syntax)
7604 }
7605 #[inline]
7606 pub fn analyse_token(&self) -> Option<SyntaxToken> {
7607 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
7608 }
7609 #[inline]
7610 pub fn analyze_token(&self) -> Option<SyntaxToken> {
7611 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
7612 }
7613 #[inline]
7614 pub fn explain_token(&self) -> Option<SyntaxToken> {
7615 support::token(&self.syntax, SyntaxKind::EXPLAIN_KW)
7616 }
7617 #[inline]
7618 pub fn verbose_token(&self) -> Option<SyntaxToken> {
7619 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
7620 }
7621}
7622
7623#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7624pub struct ExprAsName {
7625 pub(crate) syntax: SyntaxNode,
7626}
7627impl ExprAsName {
7628 #[inline]
7629 pub fn as_name(&self) -> Option<AsName> {
7630 support::child(&self.syntax)
7631 }
7632 #[inline]
7633 pub fn expr(&self) -> Option<Expr> {
7634 support::child(&self.syntax)
7635 }
7636}
7637
7638#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7639pub struct ExprType {
7640 pub(crate) syntax: SyntaxNode,
7641}
7642impl ExprType {
7643 #[inline]
7644 pub fn expr(&self) -> Option<Expr> {
7645 support::child(&self.syntax)
7646 }
7647}
7648
7649#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7650pub struct ExtractFn {
7651 pub(crate) syntax: SyntaxNode,
7652}
7653impl ExtractFn {
7654 #[inline]
7655 pub fn expr(&self) -> Option<Expr> {
7656 support::child(&self.syntax)
7657 }
7658 #[inline]
7659 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7660 support::token(&self.syntax, SyntaxKind::L_PAREN)
7661 }
7662 #[inline]
7663 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7664 support::token(&self.syntax, SyntaxKind::R_PAREN)
7665 }
7666 #[inline]
7667 pub fn day_token(&self) -> Option<SyntaxToken> {
7668 support::token(&self.syntax, SyntaxKind::DAY_KW)
7669 }
7670 #[inline]
7671 pub fn extract_token(&self) -> Option<SyntaxToken> {
7672 support::token(&self.syntax, SyntaxKind::EXTRACT_KW)
7673 }
7674 #[inline]
7675 pub fn from_token(&self) -> Option<SyntaxToken> {
7676 support::token(&self.syntax, SyntaxKind::FROM_KW)
7677 }
7678 #[inline]
7679 pub fn hour_token(&self) -> Option<SyntaxToken> {
7680 support::token(&self.syntax, SyntaxKind::HOUR_KW)
7681 }
7682 #[inline]
7683 pub fn ident_token(&self) -> Option<SyntaxToken> {
7684 support::token(&self.syntax, SyntaxKind::IDENT)
7685 }
7686 #[inline]
7687 pub fn minute_token(&self) -> Option<SyntaxToken> {
7688 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
7689 }
7690 #[inline]
7691 pub fn month_token(&self) -> Option<SyntaxToken> {
7692 support::token(&self.syntax, SyntaxKind::MONTH_KW)
7693 }
7694 #[inline]
7695 pub fn second_token(&self) -> Option<SyntaxToken> {
7696 support::token(&self.syntax, SyntaxKind::SECOND_KW)
7697 }
7698 #[inline]
7699 pub fn string_token(&self) -> Option<SyntaxToken> {
7700 support::token(&self.syntax, SyntaxKind::STRING_KW)
7701 }
7702 #[inline]
7703 pub fn year_token(&self) -> Option<SyntaxToken> {
7704 support::token(&self.syntax, SyntaxKind::YEAR_KW)
7705 }
7706}
7707
7708#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7709pub struct FatArrow {
7710 pub(crate) syntax: SyntaxNode,
7711}
7712impl FatArrow {
7713 #[inline]
7714 pub fn eq_token(&self) -> Option<SyntaxToken> {
7715 support::token(&self.syntax, SyntaxKind::EQ)
7716 }
7717 #[inline]
7718 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
7719 support::token(&self.syntax, SyntaxKind::R_ANGLE)
7720 }
7721}
7722
7723#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7724pub struct FdwOption {
7725 pub(crate) syntax: SyntaxNode,
7726}
7727impl FdwOption {
7728 #[inline]
7729 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
7730 support::child(&self.syntax)
7731 }
7732 #[inline]
7733 pub fn path(&self) -> Option<Path> {
7734 support::child(&self.syntax)
7735 }
7736 #[inline]
7737 pub fn handler_token(&self) -> Option<SyntaxToken> {
7738 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
7739 }
7740 #[inline]
7741 pub fn no_token(&self) -> Option<SyntaxToken> {
7742 support::token(&self.syntax, SyntaxKind::NO_KW)
7743 }
7744 #[inline]
7745 pub fn options_token(&self) -> Option<SyntaxToken> {
7746 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
7747 }
7748 #[inline]
7749 pub fn validator_token(&self) -> Option<SyntaxToken> {
7750 support::token(&self.syntax, SyntaxKind::VALIDATOR_KW)
7751 }
7752}
7753
7754#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7755pub struct FdwOptionList {
7756 pub(crate) syntax: SyntaxNode,
7757}
7758impl FdwOptionList {
7759 #[inline]
7760 pub fn fdw_options(&self) -> AstChildren<FdwOption> {
7761 support::children(&self.syntax)
7762 }
7763}
7764
7765#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7766pub struct Fetch {
7767 pub(crate) syntax: SyntaxNode,
7768}
7769impl Fetch {
7770 #[inline]
7771 pub fn name_ref(&self) -> Option<NameRef> {
7772 support::child(&self.syntax)
7773 }
7774 #[inline]
7775 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7776 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7777 }
7778 #[inline]
7779 pub fn from_token(&self) -> Option<SyntaxToken> {
7780 support::token(&self.syntax, SyntaxKind::FROM_KW)
7781 }
7782 #[inline]
7783 pub fn in_token(&self) -> Option<SyntaxToken> {
7784 support::token(&self.syntax, SyntaxKind::IN_KW)
7785 }
7786}
7787
7788#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7789pub struct FetchClause {
7790 pub(crate) syntax: SyntaxNode,
7791}
7792impl FetchClause {
7793 #[inline]
7794 pub fn expr(&self) -> Option<Expr> {
7795 support::child(&self.syntax)
7796 }
7797 #[inline]
7798 pub fn fetch_token(&self) -> Option<SyntaxToken> {
7799 support::token(&self.syntax, SyntaxKind::FETCH_KW)
7800 }
7801 #[inline]
7802 pub fn first_token(&self) -> Option<SyntaxToken> {
7803 support::token(&self.syntax, SyntaxKind::FIRST_KW)
7804 }
7805 #[inline]
7806 pub fn next_token(&self) -> Option<SyntaxToken> {
7807 support::token(&self.syntax, SyntaxKind::NEXT_KW)
7808 }
7809 #[inline]
7810 pub fn only_token(&self) -> Option<SyntaxToken> {
7811 support::token(&self.syntax, SyntaxKind::ONLY_KW)
7812 }
7813 #[inline]
7814 pub fn row_token(&self) -> Option<SyntaxToken> {
7815 support::token(&self.syntax, SyntaxKind::ROW_KW)
7816 }
7817 #[inline]
7818 pub fn rows_token(&self) -> Option<SyntaxToken> {
7819 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7820 }
7821 #[inline]
7822 pub fn ties_token(&self) -> Option<SyntaxToken> {
7823 support::token(&self.syntax, SyntaxKind::TIES_KW)
7824 }
7825 #[inline]
7826 pub fn with_token(&self) -> Option<SyntaxToken> {
7827 support::token(&self.syntax, SyntaxKind::WITH_KW)
7828 }
7829}
7830
7831#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7832pub struct FieldExpr {
7833 pub(crate) syntax: SyntaxNode,
7834}
7835impl FieldExpr {
7836 #[inline]
7837 pub fn star_token(&self) -> Option<SyntaxToken> {
7838 support::token(&self.syntax, SyntaxKind::STAR)
7839 }
7840 #[inline]
7841 pub fn dot_token(&self) -> Option<SyntaxToken> {
7842 support::token(&self.syntax, SyntaxKind::DOT)
7843 }
7844}
7845
7846#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7847pub struct FilterClause {
7848 pub(crate) syntax: SyntaxNode,
7849}
7850impl FilterClause {
7851 #[inline]
7852 pub fn expr(&self) -> Option<Expr> {
7853 support::child(&self.syntax)
7854 }
7855 #[inline]
7856 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
7857 support::token(&self.syntax, SyntaxKind::L_PAREN)
7858 }
7859 #[inline]
7860 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
7861 support::token(&self.syntax, SyntaxKind::R_PAREN)
7862 }
7863 #[inline]
7864 pub fn filter_token(&self) -> Option<SyntaxToken> {
7865 support::token(&self.syntax, SyntaxKind::FILTER_KW)
7866 }
7867 #[inline]
7868 pub fn where_token(&self) -> Option<SyntaxToken> {
7869 support::token(&self.syntax, SyntaxKind::WHERE_KW)
7870 }
7871}
7872
7873#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7874pub struct ForProvider {
7875 pub(crate) syntax: SyntaxNode,
7876}
7877impl ForProvider {
7878 #[inline]
7879 pub fn literal(&self) -> Option<Literal> {
7880 support::child(&self.syntax)
7881 }
7882 #[inline]
7883 pub fn name_ref(&self) -> Option<NameRef> {
7884 support::child(&self.syntax)
7885 }
7886 #[inline]
7887 pub fn for_token(&self) -> Option<SyntaxToken> {
7888 support::token(&self.syntax, SyntaxKind::FOR_KW)
7889 }
7890}
7891
7892#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7893pub struct ForceRls {
7894 pub(crate) syntax: SyntaxNode,
7895}
7896impl ForceRls {
7897 #[inline]
7898 pub fn force_token(&self) -> Option<SyntaxToken> {
7899 support::token(&self.syntax, SyntaxKind::FORCE_KW)
7900 }
7901 #[inline]
7902 pub fn level_token(&self) -> Option<SyntaxToken> {
7903 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
7904 }
7905 #[inline]
7906 pub fn row_token(&self) -> Option<SyntaxToken> {
7907 support::token(&self.syntax, SyntaxKind::ROW_KW)
7908 }
7909 #[inline]
7910 pub fn security_token(&self) -> Option<SyntaxToken> {
7911 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
7912 }
7913}
7914
7915#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7916pub struct ForeignKeyConstraint {
7917 pub(crate) syntax: SyntaxNode,
7918}
7919impl ForeignKeyConstraint {
7920 #[inline]
7921 pub fn constraint_name(&self) -> Option<ConstraintName> {
7922 support::child(&self.syntax)
7923 }
7924 #[inline]
7925 pub fn match_type(&self) -> Option<MatchType> {
7926 support::child(&self.syntax)
7927 }
7928 #[inline]
7929 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
7930 support::child(&self.syntax)
7931 }
7932 #[inline]
7933 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
7934 support::child(&self.syntax)
7935 }
7936 #[inline]
7937 pub fn path(&self) -> Option<Path> {
7938 support::child(&self.syntax)
7939 }
7940 #[inline]
7941 pub fn foreign_token(&self) -> Option<SyntaxToken> {
7942 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
7943 }
7944 #[inline]
7945 pub fn key_token(&self) -> Option<SyntaxToken> {
7946 support::token(&self.syntax, SyntaxKind::KEY_KW)
7947 }
7948 #[inline]
7949 pub fn references_token(&self) -> Option<SyntaxToken> {
7950 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
7951 }
7952}
7953
7954#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7955pub struct FrameClause {
7956 pub(crate) syntax: SyntaxNode,
7957}
7958impl FrameClause {
7959 #[inline]
7960 pub fn groups_token(&self) -> Option<SyntaxToken> {
7961 support::token(&self.syntax, SyntaxKind::GROUPS_KW)
7962 }
7963 #[inline]
7964 pub fn range_token(&self) -> Option<SyntaxToken> {
7965 support::token(&self.syntax, SyntaxKind::RANGE_KW)
7966 }
7967 #[inline]
7968 pub fn rows_token(&self) -> Option<SyntaxToken> {
7969 support::token(&self.syntax, SyntaxKind::ROWS_KW)
7970 }
7971}
7972
7973#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7974pub struct FromClause {
7975 pub(crate) syntax: SyntaxNode,
7976}
7977impl FromClause {
7978 #[inline]
7979 pub fn from_items(&self) -> AstChildren<FromItem> {
7980 support::children(&self.syntax)
7981 }
7982 #[inline]
7983 pub fn join_exprs(&self) -> AstChildren<JoinExpr> {
7984 support::children(&self.syntax)
7985 }
7986 #[inline]
7987 pub fn from_token(&self) -> Option<SyntaxToken> {
7988 support::token(&self.syntax, SyntaxKind::FROM_KW)
7989 }
7990}
7991
7992#[derive(Debug, Clone, PartialEq, Eq, Hash)]
7993pub struct FromItem {
7994 pub(crate) syntax: SyntaxNode,
7995}
7996impl FromItem {
7997 #[inline]
7998 pub fn alias(&self) -> Option<Alias> {
7999 support::child(&self.syntax)
8000 }
8001 #[inline]
8002 pub fn call_expr(&self) -> Option<CallExpr> {
8003 support::child(&self.syntax)
8004 }
8005 #[inline]
8006 pub fn cast_expr(&self) -> Option<CastExpr> {
8007 support::child(&self.syntax)
8008 }
8009 #[inline]
8010 pub fn field_expr(&self) -> Option<FieldExpr> {
8011 support::child(&self.syntax)
8012 }
8013 #[inline]
8014 pub fn json_table(&self) -> Option<JsonTable> {
8015 support::child(&self.syntax)
8016 }
8017 #[inline]
8018 pub fn name_ref(&self) -> Option<NameRef> {
8019 support::child(&self.syntax)
8020 }
8021 #[inline]
8022 pub fn paren_expr(&self) -> Option<ParenExpr> {
8023 support::child(&self.syntax)
8024 }
8025 #[inline]
8026 pub fn paren_select(&self) -> Option<ParenSelect> {
8027 support::child(&self.syntax)
8028 }
8029 #[inline]
8030 pub fn tablesample_clause(&self) -> Option<TablesampleClause> {
8031 support::child(&self.syntax)
8032 }
8033 #[inline]
8034 pub fn xml_table(&self) -> Option<XmlTable> {
8035 support::child(&self.syntax)
8036 }
8037 #[inline]
8038 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8039 support::token(&self.syntax, SyntaxKind::L_PAREN)
8040 }
8041 #[inline]
8042 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8043 support::token(&self.syntax, SyntaxKind::R_PAREN)
8044 }
8045 #[inline]
8046 pub fn star_token(&self) -> Option<SyntaxToken> {
8047 support::token(&self.syntax, SyntaxKind::STAR)
8048 }
8049 #[inline]
8050 pub fn from_token(&self) -> Option<SyntaxToken> {
8051 support::token(&self.syntax, SyntaxKind::FROM_KW)
8052 }
8053 #[inline]
8054 pub fn lateral_token(&self) -> Option<SyntaxToken> {
8055 support::token(&self.syntax, SyntaxKind::LATERAL_KW)
8056 }
8057 #[inline]
8058 pub fn only_token(&self) -> Option<SyntaxToken> {
8059 support::token(&self.syntax, SyntaxKind::ONLY_KW)
8060 }
8061 #[inline]
8062 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
8063 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
8064 }
8065 #[inline]
8066 pub fn rows_token(&self) -> Option<SyntaxToken> {
8067 support::token(&self.syntax, SyntaxKind::ROWS_KW)
8068 }
8069 #[inline]
8070 pub fn with_token(&self) -> Option<SyntaxToken> {
8071 support::token(&self.syntax, SyntaxKind::WITH_KW)
8072 }
8073}
8074
8075#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8076pub struct FromTable {
8077 pub(crate) syntax: SyntaxNode,
8078}
8079impl FromTable {
8080 #[inline]
8081 pub fn path(&self) -> Option<Path> {
8082 support::child(&self.syntax)
8083 }
8084 #[inline]
8085 pub fn from_token(&self) -> Option<SyntaxToken> {
8086 support::token(&self.syntax, SyntaxKind::FROM_KW)
8087 }
8088}
8089
8090#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8091pub struct FuncOptionList {
8092 pub(crate) syntax: SyntaxNode,
8093}
8094impl FuncOptionList {
8095 #[inline]
8096 pub fn options(&self) -> AstChildren<FuncOption> {
8097 support::children(&self.syntax)
8098 }
8099}
8100
8101#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8102pub struct FunctionSig {
8103 pub(crate) syntax: SyntaxNode,
8104}
8105impl FunctionSig {
8106 #[inline]
8107 pub fn param_list(&self) -> Option<ParamList> {
8108 support::child(&self.syntax)
8109 }
8110 #[inline]
8111 pub fn path(&self) -> Option<Path> {
8112 support::child(&self.syntax)
8113 }
8114}
8115
8116#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8117pub struct FunctionSigList {
8118 pub(crate) syntax: SyntaxNode,
8119}
8120impl FunctionSigList {
8121 #[inline]
8122 pub fn function_sigs(&self) -> AstChildren<FunctionSig> {
8123 support::children(&self.syntax)
8124 }
8125}
8126
8127#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8128pub struct GeneratedConstraint {
8129 pub(crate) syntax: SyntaxNode,
8130}
8131impl GeneratedConstraint {
8132 #[inline]
8133 pub fn expr(&self) -> Option<Expr> {
8134 support::child(&self.syntax)
8135 }
8136 #[inline]
8137 pub fn name_ref(&self) -> Option<NameRef> {
8138 support::child(&self.syntax)
8139 }
8140 #[inline]
8141 pub fn sequence_option_list(&self) -> Option<SequenceOptionList> {
8142 support::child(&self.syntax)
8143 }
8144 #[inline]
8145 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8146 support::token(&self.syntax, SyntaxKind::L_PAREN)
8147 }
8148 #[inline]
8149 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8150 support::token(&self.syntax, SyntaxKind::R_PAREN)
8151 }
8152 #[inline]
8153 pub fn always_token(&self) -> Option<SyntaxToken> {
8154 support::token(&self.syntax, SyntaxKind::ALWAYS_KW)
8155 }
8156 #[inline]
8157 pub fn as_token(&self) -> Option<SyntaxToken> {
8158 support::token(&self.syntax, SyntaxKind::AS_KW)
8159 }
8160 #[inline]
8161 pub fn by_token(&self) -> Option<SyntaxToken> {
8162 support::token(&self.syntax, SyntaxKind::BY_KW)
8163 }
8164 #[inline]
8165 pub fn constraint_token(&self) -> Option<SyntaxToken> {
8166 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
8167 }
8168 #[inline]
8169 pub fn default_token(&self) -> Option<SyntaxToken> {
8170 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
8171 }
8172 #[inline]
8173 pub fn generated_token(&self) -> Option<SyntaxToken> {
8174 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
8175 }
8176 #[inline]
8177 pub fn identity_token(&self) -> Option<SyntaxToken> {
8178 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
8179 }
8180 #[inline]
8181 pub fn stored_token(&self) -> Option<SyntaxToken> {
8182 support::token(&self.syntax, SyntaxKind::STORED_KW)
8183 }
8184}
8185
8186#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8187pub struct Grant {
8188 pub(crate) syntax: SyntaxNode,
8189}
8190impl Grant {
8191 #[inline]
8192 pub fn name_refs(&self) -> AstChildren<NameRef> {
8193 support::children(&self.syntax)
8194 }
8195 #[inline]
8196 pub fn paths(&self) -> AstChildren<Path> {
8197 support::children(&self.syntax)
8198 }
8199 #[inline]
8200 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
8201 support::child(&self.syntax)
8202 }
8203 #[inline]
8204 pub fn role_ref(&self) -> Option<RoleRef> {
8205 support::child(&self.syntax)
8206 }
8207 #[inline]
8208 pub fn role_ref_list(&self) -> Option<RoleRefList> {
8209 support::child(&self.syntax)
8210 }
8211 #[inline]
8212 pub fn all_token(&self) -> Option<SyntaxToken> {
8213 support::token(&self.syntax, SyntaxKind::ALL_KW)
8214 }
8215 #[inline]
8216 pub fn by_token(&self) -> Option<SyntaxToken> {
8217 support::token(&self.syntax, SyntaxKind::BY_KW)
8218 }
8219 #[inline]
8220 pub fn grant_token(&self) -> Option<SyntaxToken> {
8221 support::token(&self.syntax, SyntaxKind::GRANT_KW)
8222 }
8223 #[inline]
8224 pub fn granted_token(&self) -> Option<SyntaxToken> {
8225 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
8226 }
8227 #[inline]
8228 pub fn in_token(&self) -> Option<SyntaxToken> {
8229 support::token(&self.syntax, SyntaxKind::IN_KW)
8230 }
8231 #[inline]
8232 pub fn on_token(&self) -> Option<SyntaxToken> {
8233 support::token(&self.syntax, SyntaxKind::ON_KW)
8234 }
8235 #[inline]
8236 pub fn option_token(&self) -> Option<SyntaxToken> {
8237 support::token(&self.syntax, SyntaxKind::OPTION_KW)
8238 }
8239 #[inline]
8240 pub fn privileges_token(&self) -> Option<SyntaxToken> {
8241 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
8242 }
8243 #[inline]
8244 pub fn schema_token(&self) -> Option<SyntaxToken> {
8245 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
8246 }
8247 #[inline]
8248 pub fn table_token(&self) -> Option<SyntaxToken> {
8249 support::token(&self.syntax, SyntaxKind::TABLE_KW)
8250 }
8251 #[inline]
8252 pub fn tables_token(&self) -> Option<SyntaxToken> {
8253 support::token(&self.syntax, SyntaxKind::TABLES_KW)
8254 }
8255 #[inline]
8256 pub fn to_token(&self) -> Option<SyntaxToken> {
8257 support::token(&self.syntax, SyntaxKind::TO_KW)
8258 }
8259 #[inline]
8260 pub fn with_token(&self) -> Option<SyntaxToken> {
8261 support::token(&self.syntax, SyntaxKind::WITH_KW)
8262 }
8263}
8264
8265#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8266pub struct GrantDefaultPrivileges {
8267 pub(crate) syntax: SyntaxNode,
8268}
8269impl GrantDefaultPrivileges {
8270 #[inline]
8271 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
8272 support::child(&self.syntax)
8273 }
8274 #[inline]
8275 pub fn privileges(&self) -> Option<Privileges> {
8276 support::child(&self.syntax)
8277 }
8278 #[inline]
8279 pub fn role_ref_list(&self) -> Option<RoleRefList> {
8280 support::child(&self.syntax)
8281 }
8282 #[inline]
8283 pub fn grant_token(&self) -> Option<SyntaxToken> {
8284 support::token(&self.syntax, SyntaxKind::GRANT_KW)
8285 }
8286 #[inline]
8287 pub fn on_token(&self) -> Option<SyntaxToken> {
8288 support::token(&self.syntax, SyntaxKind::ON_KW)
8289 }
8290 #[inline]
8291 pub fn option_token(&self) -> Option<SyntaxToken> {
8292 support::token(&self.syntax, SyntaxKind::OPTION_KW)
8293 }
8294 #[inline]
8295 pub fn to_token(&self) -> Option<SyntaxToken> {
8296 support::token(&self.syntax, SyntaxKind::TO_KW)
8297 }
8298 #[inline]
8299 pub fn with_token(&self) -> Option<SyntaxToken> {
8300 support::token(&self.syntax, SyntaxKind::WITH_KW)
8301 }
8302}
8303
8304#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8305pub struct GroupByClause {
8306 pub(crate) syntax: SyntaxNode,
8307}
8308impl GroupByClause {
8309 #[inline]
8310 pub fn group_by_list(&self) -> Option<GroupByList> {
8311 support::child(&self.syntax)
8312 }
8313 #[inline]
8314 pub fn all_token(&self) -> Option<SyntaxToken> {
8315 support::token(&self.syntax, SyntaxKind::ALL_KW)
8316 }
8317 #[inline]
8318 pub fn by_token(&self) -> Option<SyntaxToken> {
8319 support::token(&self.syntax, SyntaxKind::BY_KW)
8320 }
8321 #[inline]
8322 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8323 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8324 }
8325 #[inline]
8326 pub fn group_token(&self) -> Option<SyntaxToken> {
8327 support::token(&self.syntax, SyntaxKind::GROUP_KW)
8328 }
8329}
8330
8331#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8332pub struct GroupByList {
8333 pub(crate) syntax: SyntaxNode,
8334}
8335impl GroupByList {
8336 #[inline]
8337 pub fn group_bys(&self) -> AstChildren<GroupBy> {
8338 support::children(&self.syntax)
8339 }
8340}
8341
8342#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8343pub struct GroupingCube {
8344 pub(crate) syntax: SyntaxNode,
8345}
8346impl GroupingCube {
8347 #[inline]
8348 pub fn expr(&self) -> Option<Expr> {
8349 support::child(&self.syntax)
8350 }
8351 #[inline]
8352 pub fn cube_token(&self) -> Option<SyntaxToken> {
8353 support::token(&self.syntax, SyntaxKind::CUBE_KW)
8354 }
8355}
8356
8357#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8358pub struct GroupingExpr {
8359 pub(crate) syntax: SyntaxNode,
8360}
8361impl GroupingExpr {
8362 #[inline]
8363 pub fn expr(&self) -> Option<Expr> {
8364 support::child(&self.syntax)
8365 }
8366}
8367
8368#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8369pub struct GroupingRollup {
8370 pub(crate) syntax: SyntaxNode,
8371}
8372impl GroupingRollup {
8373 #[inline]
8374 pub fn expr(&self) -> Option<Expr> {
8375 support::child(&self.syntax)
8376 }
8377 #[inline]
8378 pub fn rollup_token(&self) -> Option<SyntaxToken> {
8379 support::token(&self.syntax, SyntaxKind::ROLLUP_KW)
8380 }
8381}
8382
8383#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8384pub struct GroupingSets {
8385 pub(crate) syntax: SyntaxNode,
8386}
8387impl GroupingSets {
8388 #[inline]
8389 pub fn expr(&self) -> Option<Expr> {
8390 support::child(&self.syntax)
8391 }
8392 #[inline]
8393 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8394 support::token(&self.syntax, SyntaxKind::L_PAREN)
8395 }
8396 #[inline]
8397 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8398 support::token(&self.syntax, SyntaxKind::R_PAREN)
8399 }
8400 #[inline]
8401 pub fn grouping_token(&self) -> Option<SyntaxToken> {
8402 support::token(&self.syntax, SyntaxKind::GROUPING_KW)
8403 }
8404 #[inline]
8405 pub fn sets_token(&self) -> Option<SyntaxToken> {
8406 support::token(&self.syntax, SyntaxKind::SETS_KW)
8407 }
8408}
8409
8410#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8411pub struct Gteq {
8412 pub(crate) syntax: SyntaxNode,
8413}
8414impl Gteq {
8415 #[inline]
8416 pub fn eq_token(&self) -> Option<SyntaxToken> {
8417 support::token(&self.syntax, SyntaxKind::EQ)
8418 }
8419 #[inline]
8420 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
8421 support::token(&self.syntax, SyntaxKind::R_ANGLE)
8422 }
8423}
8424
8425#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8426pub struct HandlerClause {
8427 pub(crate) syntax: SyntaxNode,
8428}
8429impl HandlerClause {
8430 #[inline]
8431 pub fn path(&self) -> Option<Path> {
8432 support::child(&self.syntax)
8433 }
8434 #[inline]
8435 pub fn handler_token(&self) -> Option<SyntaxToken> {
8436 support::token(&self.syntax, SyntaxKind::HANDLER_KW)
8437 }
8438}
8439
8440#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8441pub struct HavingClause {
8442 pub(crate) syntax: SyntaxNode,
8443}
8444impl HavingClause {
8445 #[inline]
8446 pub fn expr(&self) -> Option<Expr> {
8447 support::child(&self.syntax)
8448 }
8449 #[inline]
8450 pub fn having_token(&self) -> Option<SyntaxToken> {
8451 support::token(&self.syntax, SyntaxKind::HAVING_KW)
8452 }
8453}
8454
8455#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8456pub struct IfExists {
8457 pub(crate) syntax: SyntaxNode,
8458}
8459impl IfExists {
8460 #[inline]
8461 pub fn exists_token(&self) -> Option<SyntaxToken> {
8462 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8463 }
8464 #[inline]
8465 pub fn if_token(&self) -> Option<SyntaxToken> {
8466 support::token(&self.syntax, SyntaxKind::IF_KW)
8467 }
8468}
8469
8470#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8471pub struct IfNotExists {
8472 pub(crate) syntax: SyntaxNode,
8473}
8474impl IfNotExists {
8475 #[inline]
8476 pub fn exists_token(&self) -> Option<SyntaxToken> {
8477 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
8478 }
8479 #[inline]
8480 pub fn if_token(&self) -> Option<SyntaxToken> {
8481 support::token(&self.syntax, SyntaxKind::IF_KW)
8482 }
8483 #[inline]
8484 pub fn not_token(&self) -> Option<SyntaxToken> {
8485 support::token(&self.syntax, SyntaxKind::NOT_KW)
8486 }
8487}
8488
8489#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8490pub struct ImportForeignSchema {
8491 pub(crate) syntax: SyntaxNode,
8492}
8493impl ImportForeignSchema {
8494 #[inline]
8495 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
8496 support::child(&self.syntax)
8497 }
8498 #[inline]
8499 pub fn except_tables(&self) -> Option<ExceptTables> {
8500 support::child(&self.syntax)
8501 }
8502 #[inline]
8503 pub fn into_schema(&self) -> Option<IntoSchema> {
8504 support::child(&self.syntax)
8505 }
8506 #[inline]
8507 pub fn limit_to_tables(&self) -> Option<LimitToTables> {
8508 support::child(&self.syntax)
8509 }
8510 #[inline]
8511 pub fn name_ref(&self) -> Option<NameRef> {
8512 support::child(&self.syntax)
8513 }
8514 #[inline]
8515 pub fn server_name(&self) -> Option<ServerName> {
8516 support::child(&self.syntax)
8517 }
8518 #[inline]
8519 pub fn foreign_token(&self) -> Option<SyntaxToken> {
8520 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
8521 }
8522 #[inline]
8523 pub fn from_token(&self) -> Option<SyntaxToken> {
8524 support::token(&self.syntax, SyntaxKind::FROM_KW)
8525 }
8526 #[inline]
8527 pub fn import_token(&self) -> Option<SyntaxToken> {
8528 support::token(&self.syntax, SyntaxKind::IMPORT_KW)
8529 }
8530 #[inline]
8531 pub fn schema_token(&self) -> Option<SyntaxToken> {
8532 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
8533 }
8534}
8535
8536#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8537pub struct IndexExpr {
8538 pub(crate) syntax: SyntaxNode,
8539}
8540impl IndexExpr {
8541 #[inline]
8542 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
8543 support::token(&self.syntax, SyntaxKind::L_BRACK)
8544 }
8545 #[inline]
8546 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
8547 support::token(&self.syntax, SyntaxKind::R_BRACK)
8548 }
8549}
8550
8551#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8552pub struct Inherit {
8553 pub(crate) syntax: SyntaxNode,
8554}
8555impl Inherit {
8556 #[inline]
8557 pub fn path(&self) -> Option<Path> {
8558 support::child(&self.syntax)
8559 }
8560 #[inline]
8561 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8562 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8563 }
8564}
8565
8566#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8567pub struct InheritTable {
8568 pub(crate) syntax: SyntaxNode,
8569}
8570impl InheritTable {
8571 #[inline]
8572 pub fn path(&self) -> Option<Path> {
8573 support::child(&self.syntax)
8574 }
8575 #[inline]
8576 pub fn inherit_token(&self) -> Option<SyntaxToken> {
8577 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
8578 }
8579}
8580
8581#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8582pub struct Inherits {
8583 pub(crate) syntax: SyntaxNode,
8584}
8585impl Inherits {
8586 #[inline]
8587 pub fn paths(&self) -> AstChildren<Path> {
8588 support::children(&self.syntax)
8589 }
8590 #[inline]
8591 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8592 support::token(&self.syntax, SyntaxKind::L_PAREN)
8593 }
8594 #[inline]
8595 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8596 support::token(&self.syntax, SyntaxKind::R_PAREN)
8597 }
8598 #[inline]
8599 pub fn inherits_token(&self) -> Option<SyntaxToken> {
8600 support::token(&self.syntax, SyntaxKind::INHERITS_KW)
8601 }
8602}
8603
8604#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8605pub struct InitiallyDeferredConstraintOption {
8606 pub(crate) syntax: SyntaxNode,
8607}
8608impl InitiallyDeferredConstraintOption {
8609 #[inline]
8610 pub fn deferred_token(&self) -> Option<SyntaxToken> {
8611 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
8612 }
8613 #[inline]
8614 pub fn initially_token(&self) -> Option<SyntaxToken> {
8615 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8616 }
8617}
8618
8619#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8620pub struct InitiallyImmediateConstraintOption {
8621 pub(crate) syntax: SyntaxNode,
8622}
8623impl InitiallyImmediateConstraintOption {
8624 #[inline]
8625 pub fn immediate_token(&self) -> Option<SyntaxToken> {
8626 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
8627 }
8628 #[inline]
8629 pub fn initially_token(&self) -> Option<SyntaxToken> {
8630 support::token(&self.syntax, SyntaxKind::INITIALLY_KW)
8631 }
8632}
8633
8634#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8635pub struct Insert {
8636 pub(crate) syntax: SyntaxNode,
8637}
8638impl Insert {
8639 #[inline]
8640 pub fn alias(&self) -> Option<Alias> {
8641 support::child(&self.syntax)
8642 }
8643 #[inline]
8644 pub fn column_list(&self) -> Option<ColumnList> {
8645 support::child(&self.syntax)
8646 }
8647 #[inline]
8648 pub fn on_conflict_clause(&self) -> Option<OnConflictClause> {
8649 support::child(&self.syntax)
8650 }
8651 #[inline]
8652 pub fn path(&self) -> Option<Path> {
8653 support::child(&self.syntax)
8654 }
8655 #[inline]
8656 pub fn returning_clause(&self) -> Option<ReturningClause> {
8657 support::child(&self.syntax)
8658 }
8659 #[inline]
8660 pub fn stmt(&self) -> Option<Stmt> {
8661 support::child(&self.syntax)
8662 }
8663 #[inline]
8664 pub fn values(&self) -> Option<Values> {
8665 support::child(&self.syntax)
8666 }
8667 #[inline]
8668 pub fn with_clause(&self) -> Option<WithClause> {
8669 support::child(&self.syntax)
8670 }
8671 #[inline]
8672 pub fn default_token(&self) -> Option<SyntaxToken> {
8673 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
8674 }
8675 #[inline]
8676 pub fn insert_token(&self) -> Option<SyntaxToken> {
8677 support::token(&self.syntax, SyntaxKind::INSERT_KW)
8678 }
8679 #[inline]
8680 pub fn into_token(&self) -> Option<SyntaxToken> {
8681 support::token(&self.syntax, SyntaxKind::INTO_KW)
8682 }
8683 #[inline]
8684 pub fn overriding_token(&self) -> Option<SyntaxToken> {
8685 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
8686 }
8687 #[inline]
8688 pub fn system_token(&self) -> Option<SyntaxToken> {
8689 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
8690 }
8691 #[inline]
8692 pub fn user_token(&self) -> Option<SyntaxToken> {
8693 support::token(&self.syntax, SyntaxKind::USER_KW)
8694 }
8695 #[inline]
8696 pub fn value_token(&self) -> Option<SyntaxToken> {
8697 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8698 }
8699 #[inline]
8700 pub fn values_token(&self) -> Option<SyntaxToken> {
8701 support::token(&self.syntax, SyntaxKind::VALUES_KW)
8702 }
8703}
8704
8705#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8706pub struct IntervalType {
8707 pub(crate) syntax: SyntaxNode,
8708}
8709impl IntervalType {
8710 #[inline]
8711 pub fn literal(&self) -> Option<Literal> {
8712 support::child(&self.syntax)
8713 }
8714 #[inline]
8715 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
8716 support::token(&self.syntax, SyntaxKind::L_PAREN)
8717 }
8718 #[inline]
8719 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
8720 support::token(&self.syntax, SyntaxKind::R_PAREN)
8721 }
8722 #[inline]
8723 pub fn day_token(&self) -> Option<SyntaxToken> {
8724 support::token(&self.syntax, SyntaxKind::DAY_KW)
8725 }
8726 #[inline]
8727 pub fn hour_token(&self) -> Option<SyntaxToken> {
8728 support::token(&self.syntax, SyntaxKind::HOUR_KW)
8729 }
8730 #[inline]
8731 pub fn interval_token(&self) -> Option<SyntaxToken> {
8732 support::token(&self.syntax, SyntaxKind::INTERVAL_KW)
8733 }
8734 #[inline]
8735 pub fn minute_token(&self) -> Option<SyntaxToken> {
8736 support::token(&self.syntax, SyntaxKind::MINUTE_KW)
8737 }
8738 #[inline]
8739 pub fn month_token(&self) -> Option<SyntaxToken> {
8740 support::token(&self.syntax, SyntaxKind::MONTH_KW)
8741 }
8742 #[inline]
8743 pub fn second_token(&self) -> Option<SyntaxToken> {
8744 support::token(&self.syntax, SyntaxKind::SECOND_KW)
8745 }
8746 #[inline]
8747 pub fn to_token(&self) -> Option<SyntaxToken> {
8748 support::token(&self.syntax, SyntaxKind::TO_KW)
8749 }
8750 #[inline]
8751 pub fn year_token(&self) -> Option<SyntaxToken> {
8752 support::token(&self.syntax, SyntaxKind::YEAR_KW)
8753 }
8754}
8755
8756#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8757pub struct IntoClause {
8758 pub(crate) syntax: SyntaxNode,
8759}
8760impl IntoClause {
8761 #[inline]
8762 pub fn path(&self) -> Option<Path> {
8763 support::child(&self.syntax)
8764 }
8765 #[inline]
8766 pub fn into_token(&self) -> Option<SyntaxToken> {
8767 support::token(&self.syntax, SyntaxKind::INTO_KW)
8768 }
8769}
8770
8771#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8772pub struct IntoSchema {
8773 pub(crate) syntax: SyntaxNode,
8774}
8775impl IntoSchema {
8776 #[inline]
8777 pub fn name_ref(&self) -> Option<NameRef> {
8778 support::child(&self.syntax)
8779 }
8780 #[inline]
8781 pub fn into_token(&self) -> Option<SyntaxToken> {
8782 support::token(&self.syntax, SyntaxKind::INTO_KW)
8783 }
8784}
8785
8786#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8787pub struct IsDistinctFrom {
8788 pub(crate) syntax: SyntaxNode,
8789}
8790impl IsDistinctFrom {
8791 #[inline]
8792 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8793 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8794 }
8795 #[inline]
8796 pub fn from_token(&self) -> Option<SyntaxToken> {
8797 support::token(&self.syntax, SyntaxKind::FROM_KW)
8798 }
8799 #[inline]
8800 pub fn is_token(&self) -> Option<SyntaxToken> {
8801 support::token(&self.syntax, SyntaxKind::IS_KW)
8802 }
8803}
8804
8805#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8806pub struct IsJson {
8807 pub(crate) syntax: SyntaxNode,
8808}
8809impl IsJson {
8810 #[inline]
8811 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8812 support::child(&self.syntax)
8813 }
8814 #[inline]
8815 pub fn is_token(&self) -> Option<SyntaxToken> {
8816 support::token(&self.syntax, SyntaxKind::IS_KW)
8817 }
8818 #[inline]
8819 pub fn json_token(&self) -> Option<SyntaxToken> {
8820 support::token(&self.syntax, SyntaxKind::JSON_KW)
8821 }
8822}
8823
8824#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8825pub struct IsJsonArray {
8826 pub(crate) syntax: SyntaxNode,
8827}
8828impl IsJsonArray {
8829 #[inline]
8830 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8831 support::child(&self.syntax)
8832 }
8833 #[inline]
8834 pub fn array_token(&self) -> Option<SyntaxToken> {
8835 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
8836 }
8837 #[inline]
8838 pub fn is_token(&self) -> Option<SyntaxToken> {
8839 support::token(&self.syntax, SyntaxKind::IS_KW)
8840 }
8841 #[inline]
8842 pub fn json_token(&self) -> Option<SyntaxToken> {
8843 support::token(&self.syntax, SyntaxKind::JSON_KW)
8844 }
8845}
8846
8847#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8848pub struct IsJsonObject {
8849 pub(crate) syntax: SyntaxNode,
8850}
8851impl IsJsonObject {
8852 #[inline]
8853 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8854 support::child(&self.syntax)
8855 }
8856 #[inline]
8857 pub fn is_token(&self) -> Option<SyntaxToken> {
8858 support::token(&self.syntax, SyntaxKind::IS_KW)
8859 }
8860 #[inline]
8861 pub fn json_token(&self) -> Option<SyntaxToken> {
8862 support::token(&self.syntax, SyntaxKind::JSON_KW)
8863 }
8864 #[inline]
8865 pub fn object_token(&self) -> Option<SyntaxToken> {
8866 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
8867 }
8868}
8869
8870#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8871pub struct IsJsonScalar {
8872 pub(crate) syntax: SyntaxNode,
8873}
8874impl IsJsonScalar {
8875 #[inline]
8876 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8877 support::child(&self.syntax)
8878 }
8879 #[inline]
8880 pub fn is_token(&self) -> Option<SyntaxToken> {
8881 support::token(&self.syntax, SyntaxKind::IS_KW)
8882 }
8883 #[inline]
8884 pub fn json_token(&self) -> Option<SyntaxToken> {
8885 support::token(&self.syntax, SyntaxKind::JSON_KW)
8886 }
8887 #[inline]
8888 pub fn scalar_token(&self) -> Option<SyntaxToken> {
8889 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
8890 }
8891}
8892
8893#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8894pub struct IsJsonValue {
8895 pub(crate) syntax: SyntaxNode,
8896}
8897impl IsJsonValue {
8898 #[inline]
8899 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8900 support::child(&self.syntax)
8901 }
8902 #[inline]
8903 pub fn is_token(&self) -> Option<SyntaxToken> {
8904 support::token(&self.syntax, SyntaxKind::IS_KW)
8905 }
8906 #[inline]
8907 pub fn json_token(&self) -> Option<SyntaxToken> {
8908 support::token(&self.syntax, SyntaxKind::JSON_KW)
8909 }
8910 #[inline]
8911 pub fn value_token(&self) -> Option<SyntaxToken> {
8912 support::token(&self.syntax, SyntaxKind::VALUE_KW)
8913 }
8914}
8915
8916#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8917pub struct IsNormalized {
8918 pub(crate) syntax: SyntaxNode,
8919}
8920impl IsNormalized {
8921 #[inline]
8922 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
8923 support::child(&self.syntax)
8924 }
8925 #[inline]
8926 pub fn is_token(&self) -> Option<SyntaxToken> {
8927 support::token(&self.syntax, SyntaxKind::IS_KW)
8928 }
8929 #[inline]
8930 pub fn normalized_token(&self) -> Option<SyntaxToken> {
8931 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
8932 }
8933}
8934
8935#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8936pub struct IsNot {
8937 pub(crate) syntax: SyntaxNode,
8938}
8939impl IsNot {
8940 #[inline]
8941 pub fn is_token(&self) -> Option<SyntaxToken> {
8942 support::token(&self.syntax, SyntaxKind::IS_KW)
8943 }
8944 #[inline]
8945 pub fn not_token(&self) -> Option<SyntaxToken> {
8946 support::token(&self.syntax, SyntaxKind::NOT_KW)
8947 }
8948}
8949
8950#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8951pub struct IsNotDistinctFrom {
8952 pub(crate) syntax: SyntaxNode,
8953}
8954impl IsNotDistinctFrom {
8955 #[inline]
8956 pub fn distinct_token(&self) -> Option<SyntaxToken> {
8957 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
8958 }
8959 #[inline]
8960 pub fn from_token(&self) -> Option<SyntaxToken> {
8961 support::token(&self.syntax, SyntaxKind::FROM_KW)
8962 }
8963 #[inline]
8964 pub fn is_token(&self) -> Option<SyntaxToken> {
8965 support::token(&self.syntax, SyntaxKind::IS_KW)
8966 }
8967 #[inline]
8968 pub fn not_token(&self) -> Option<SyntaxToken> {
8969 support::token(&self.syntax, SyntaxKind::NOT_KW)
8970 }
8971}
8972
8973#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8974pub struct IsNotJson {
8975 pub(crate) syntax: SyntaxNode,
8976}
8977impl IsNotJson {
8978 #[inline]
8979 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
8980 support::child(&self.syntax)
8981 }
8982 #[inline]
8983 pub fn is_token(&self) -> Option<SyntaxToken> {
8984 support::token(&self.syntax, SyntaxKind::IS_KW)
8985 }
8986 #[inline]
8987 pub fn json_token(&self) -> Option<SyntaxToken> {
8988 support::token(&self.syntax, SyntaxKind::JSON_KW)
8989 }
8990 #[inline]
8991 pub fn not_token(&self) -> Option<SyntaxToken> {
8992 support::token(&self.syntax, SyntaxKind::NOT_KW)
8993 }
8994}
8995
8996#[derive(Debug, Clone, PartialEq, Eq, Hash)]
8997pub struct IsNotJsonArray {
8998 pub(crate) syntax: SyntaxNode,
8999}
9000impl IsNotJsonArray {
9001 #[inline]
9002 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9003 support::child(&self.syntax)
9004 }
9005 #[inline]
9006 pub fn array_token(&self) -> Option<SyntaxToken> {
9007 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
9008 }
9009 #[inline]
9010 pub fn is_token(&self) -> Option<SyntaxToken> {
9011 support::token(&self.syntax, SyntaxKind::IS_KW)
9012 }
9013 #[inline]
9014 pub fn json_token(&self) -> Option<SyntaxToken> {
9015 support::token(&self.syntax, SyntaxKind::JSON_KW)
9016 }
9017 #[inline]
9018 pub fn not_token(&self) -> Option<SyntaxToken> {
9019 support::token(&self.syntax, SyntaxKind::NOT_KW)
9020 }
9021}
9022
9023#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9024pub struct IsNotJsonObject {
9025 pub(crate) syntax: SyntaxNode,
9026}
9027impl IsNotJsonObject {
9028 #[inline]
9029 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9030 support::child(&self.syntax)
9031 }
9032 #[inline]
9033 pub fn is_token(&self) -> Option<SyntaxToken> {
9034 support::token(&self.syntax, SyntaxKind::IS_KW)
9035 }
9036 #[inline]
9037 pub fn json_token(&self) -> Option<SyntaxToken> {
9038 support::token(&self.syntax, SyntaxKind::JSON_KW)
9039 }
9040 #[inline]
9041 pub fn not_token(&self) -> Option<SyntaxToken> {
9042 support::token(&self.syntax, SyntaxKind::NOT_KW)
9043 }
9044 #[inline]
9045 pub fn object_token(&self) -> Option<SyntaxToken> {
9046 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
9047 }
9048}
9049
9050#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9051pub struct IsNotJsonScalar {
9052 pub(crate) syntax: SyntaxNode,
9053}
9054impl IsNotJsonScalar {
9055 #[inline]
9056 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9057 support::child(&self.syntax)
9058 }
9059 #[inline]
9060 pub fn is_token(&self) -> Option<SyntaxToken> {
9061 support::token(&self.syntax, SyntaxKind::IS_KW)
9062 }
9063 #[inline]
9064 pub fn json_token(&self) -> Option<SyntaxToken> {
9065 support::token(&self.syntax, SyntaxKind::JSON_KW)
9066 }
9067 #[inline]
9068 pub fn not_token(&self) -> Option<SyntaxToken> {
9069 support::token(&self.syntax, SyntaxKind::NOT_KW)
9070 }
9071 #[inline]
9072 pub fn scalar_token(&self) -> Option<SyntaxToken> {
9073 support::token(&self.syntax, SyntaxKind::SCALAR_KW)
9074 }
9075}
9076
9077#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9078pub struct IsNotJsonValue {
9079 pub(crate) syntax: SyntaxNode,
9080}
9081impl IsNotJsonValue {
9082 #[inline]
9083 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9084 support::child(&self.syntax)
9085 }
9086 #[inline]
9087 pub fn is_token(&self) -> Option<SyntaxToken> {
9088 support::token(&self.syntax, SyntaxKind::IS_KW)
9089 }
9090 #[inline]
9091 pub fn json_token(&self) -> Option<SyntaxToken> {
9092 support::token(&self.syntax, SyntaxKind::JSON_KW)
9093 }
9094 #[inline]
9095 pub fn not_token(&self) -> Option<SyntaxToken> {
9096 support::token(&self.syntax, SyntaxKind::NOT_KW)
9097 }
9098 #[inline]
9099 pub fn value_token(&self) -> Option<SyntaxToken> {
9100 support::token(&self.syntax, SyntaxKind::VALUE_KW)
9101 }
9102}
9103
9104#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9105pub struct IsNotNormalized {
9106 pub(crate) syntax: SyntaxNode,
9107}
9108impl IsNotNormalized {
9109 #[inline]
9110 pub fn unicode_normal_form(&self) -> Option<UnicodeNormalForm> {
9111 support::child(&self.syntax)
9112 }
9113 #[inline]
9114 pub fn is_token(&self) -> Option<SyntaxToken> {
9115 support::token(&self.syntax, SyntaxKind::IS_KW)
9116 }
9117 #[inline]
9118 pub fn normalized_token(&self) -> Option<SyntaxToken> {
9119 support::token(&self.syntax, SyntaxKind::NORMALIZED_KW)
9120 }
9121 #[inline]
9122 pub fn not_token(&self) -> Option<SyntaxToken> {
9123 support::token(&self.syntax, SyntaxKind::NOT_KW)
9124 }
9125}
9126
9127#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9128pub struct Join {
9129 pub(crate) syntax: SyntaxNode,
9130}
9131impl Join {
9132 #[inline]
9133 pub fn from_item(&self) -> Option<FromItem> {
9134 support::child(&self.syntax)
9135 }
9136 #[inline]
9137 pub fn join_type(&self) -> Option<JoinType> {
9138 support::child(&self.syntax)
9139 }
9140 #[inline]
9141 pub fn on_clause(&self) -> Option<OnClause> {
9142 support::child(&self.syntax)
9143 }
9144 #[inline]
9145 pub fn using_clause(&self) -> Option<JoinUsingClause> {
9146 support::child(&self.syntax)
9147 }
9148 #[inline]
9149 pub fn natural_token(&self) -> Option<SyntaxToken> {
9150 support::token(&self.syntax, SyntaxKind::NATURAL_KW)
9151 }
9152}
9153
9154#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9155pub struct JoinCross {
9156 pub(crate) syntax: SyntaxNode,
9157}
9158impl JoinCross {
9159 #[inline]
9160 pub fn cross_token(&self) -> Option<SyntaxToken> {
9161 support::token(&self.syntax, SyntaxKind::CROSS_KW)
9162 }
9163 #[inline]
9164 pub fn join_token(&self) -> Option<SyntaxToken> {
9165 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9166 }
9167}
9168
9169#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9170pub struct JoinExpr {
9171 pub(crate) syntax: SyntaxNode,
9172}
9173impl JoinExpr {
9174 #[inline]
9175 pub fn from_item(&self) -> Option<FromItem> {
9176 support::child(&self.syntax)
9177 }
9178 #[inline]
9179 pub fn join(&self) -> Option<Join> {
9180 support::child(&self.syntax)
9181 }
9182 #[inline]
9183 pub fn join_expr(&self) -> Option<JoinExpr> {
9184 support::child(&self.syntax)
9185 }
9186}
9187
9188#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9189pub struct JoinFull {
9190 pub(crate) syntax: SyntaxNode,
9191}
9192impl JoinFull {
9193 #[inline]
9194 pub fn full_token(&self) -> Option<SyntaxToken> {
9195 support::token(&self.syntax, SyntaxKind::FULL_KW)
9196 }
9197 #[inline]
9198 pub fn join_token(&self) -> Option<SyntaxToken> {
9199 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9200 }
9201 #[inline]
9202 pub fn outer_token(&self) -> Option<SyntaxToken> {
9203 support::token(&self.syntax, SyntaxKind::OUTER_KW)
9204 }
9205}
9206
9207#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9208pub struct JoinInner {
9209 pub(crate) syntax: SyntaxNode,
9210}
9211impl JoinInner {
9212 #[inline]
9213 pub fn inner_token(&self) -> Option<SyntaxToken> {
9214 support::token(&self.syntax, SyntaxKind::INNER_KW)
9215 }
9216 #[inline]
9217 pub fn join_token(&self) -> Option<SyntaxToken> {
9218 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9219 }
9220}
9221
9222#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9223pub struct JoinLeft {
9224 pub(crate) syntax: SyntaxNode,
9225}
9226impl JoinLeft {
9227 #[inline]
9228 pub fn join_token(&self) -> Option<SyntaxToken> {
9229 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9230 }
9231 #[inline]
9232 pub fn left_token(&self) -> Option<SyntaxToken> {
9233 support::token(&self.syntax, SyntaxKind::LEFT_KW)
9234 }
9235 #[inline]
9236 pub fn outer_token(&self) -> Option<SyntaxToken> {
9237 support::token(&self.syntax, SyntaxKind::OUTER_KW)
9238 }
9239}
9240
9241#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9242pub struct JoinRight {
9243 pub(crate) syntax: SyntaxNode,
9244}
9245impl JoinRight {
9246 #[inline]
9247 pub fn join_token(&self) -> Option<SyntaxToken> {
9248 support::token(&self.syntax, SyntaxKind::JOIN_KW)
9249 }
9250 #[inline]
9251 pub fn outer_token(&self) -> Option<SyntaxToken> {
9252 support::token(&self.syntax, SyntaxKind::OUTER_KW)
9253 }
9254 #[inline]
9255 pub fn right_token(&self) -> Option<SyntaxToken> {
9256 support::token(&self.syntax, SyntaxKind::RIGHT_KW)
9257 }
9258}
9259
9260#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9261pub struct JoinUsingClause {
9262 pub(crate) syntax: SyntaxNode,
9263}
9264impl JoinUsingClause {
9265 #[inline]
9266 pub fn alias(&self) -> Option<Alias> {
9267 support::child(&self.syntax)
9268 }
9269 #[inline]
9270 pub fn column_list(&self) -> Option<ColumnList> {
9271 support::child(&self.syntax)
9272 }
9273 #[inline]
9274 pub fn using_token(&self) -> Option<SyntaxToken> {
9275 support::token(&self.syntax, SyntaxKind::USING_KW)
9276 }
9277}
9278
9279#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9280pub struct JsonArrayAggFn {
9281 pub(crate) syntax: SyntaxNode,
9282}
9283impl JsonArrayAggFn {
9284 #[inline]
9285 pub fn expr(&self) -> Option<Expr> {
9286 support::child(&self.syntax)
9287 }
9288 #[inline]
9289 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9290 support::child(&self.syntax)
9291 }
9292 #[inline]
9293 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9294 support::child(&self.syntax)
9295 }
9296 #[inline]
9297 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
9298 support::children(&self.syntax)
9299 }
9300 #[inline]
9301 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9302 support::token(&self.syntax, SyntaxKind::L_PAREN)
9303 }
9304 #[inline]
9305 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9306 support::token(&self.syntax, SyntaxKind::R_PAREN)
9307 }
9308 #[inline]
9309 pub fn json_arrayagg_token(&self) -> Option<SyntaxToken> {
9310 support::token(&self.syntax, SyntaxKind::JSON_ARRAYAGG_KW)
9311 }
9312}
9313
9314#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9315pub struct JsonArrayFn {
9316 pub(crate) syntax: SyntaxNode,
9317}
9318impl JsonArrayFn {
9319 #[inline]
9320 pub fn json_expr_formats(&self) -> AstChildren<JsonExprFormat> {
9321 support::children(&self.syntax)
9322 }
9323 #[inline]
9324 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9325 support::child(&self.syntax)
9326 }
9327 #[inline]
9328 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9329 support::child(&self.syntax)
9330 }
9331 #[inline]
9332 pub fn json_select_formats(&self) -> AstChildren<JsonSelectFormat> {
9333 support::children(&self.syntax)
9334 }
9335 #[inline]
9336 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9337 support::token(&self.syntax, SyntaxKind::L_PAREN)
9338 }
9339 #[inline]
9340 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9341 support::token(&self.syntax, SyntaxKind::R_PAREN)
9342 }
9343 #[inline]
9344 pub fn json_array_token(&self) -> Option<SyntaxToken> {
9345 support::token(&self.syntax, SyntaxKind::JSON_ARRAY_KW)
9346 }
9347}
9348
9349#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9350pub struct JsonBehaviorClause {
9351 pub(crate) syntax: SyntaxNode,
9352}
9353impl JsonBehaviorClause {
9354 #[inline]
9355 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9356 support::child(&self.syntax)
9357 }
9358}
9359
9360#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9361pub struct JsonBehaviorDefault {
9362 pub(crate) syntax: SyntaxNode,
9363}
9364impl JsonBehaviorDefault {
9365 #[inline]
9366 pub fn expr(&self) -> Option<Expr> {
9367 support::child(&self.syntax)
9368 }
9369 #[inline]
9370 pub fn default_token(&self) -> Option<SyntaxToken> {
9371 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
9372 }
9373}
9374
9375#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9376pub struct JsonBehaviorEmptyArray {
9377 pub(crate) syntax: SyntaxNode,
9378}
9379impl JsonBehaviorEmptyArray {
9380 #[inline]
9381 pub fn array_token(&self) -> Option<SyntaxToken> {
9382 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
9383 }
9384 #[inline]
9385 pub fn empty_token(&self) -> Option<SyntaxToken> {
9386 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9387 }
9388}
9389
9390#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9391pub struct JsonBehaviorEmptyObject {
9392 pub(crate) syntax: SyntaxNode,
9393}
9394impl JsonBehaviorEmptyObject {
9395 #[inline]
9396 pub fn empty_token(&self) -> Option<SyntaxToken> {
9397 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9398 }
9399 #[inline]
9400 pub fn object_token(&self) -> Option<SyntaxToken> {
9401 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
9402 }
9403}
9404
9405#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9406pub struct JsonBehaviorError {
9407 pub(crate) syntax: SyntaxNode,
9408}
9409impl JsonBehaviorError {
9410 #[inline]
9411 pub fn error_token(&self) -> Option<SyntaxToken> {
9412 support::token(&self.syntax, SyntaxKind::ERROR_KW)
9413 }
9414}
9415
9416#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9417pub struct JsonBehaviorFalse {
9418 pub(crate) syntax: SyntaxNode,
9419}
9420impl JsonBehaviorFalse {
9421 #[inline]
9422 pub fn false_token(&self) -> Option<SyntaxToken> {
9423 support::token(&self.syntax, SyntaxKind::FALSE_KW)
9424 }
9425}
9426
9427#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9428pub struct JsonBehaviorNull {
9429 pub(crate) syntax: SyntaxNode,
9430}
9431impl JsonBehaviorNull {
9432 #[inline]
9433 pub fn null_token(&self) -> Option<SyntaxToken> {
9434 support::token(&self.syntax, SyntaxKind::NULL_KW)
9435 }
9436}
9437
9438#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9439pub struct JsonBehaviorTrue {
9440 pub(crate) syntax: SyntaxNode,
9441}
9442impl JsonBehaviorTrue {
9443 #[inline]
9444 pub fn true_token(&self) -> Option<SyntaxToken> {
9445 support::token(&self.syntax, SyntaxKind::TRUE_KW)
9446 }
9447}
9448
9449#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9450pub struct JsonBehaviorUnknown {
9451 pub(crate) syntax: SyntaxNode,
9452}
9453impl JsonBehaviorUnknown {
9454 #[inline]
9455 pub fn unknown_token(&self) -> Option<SyntaxToken> {
9456 support::token(&self.syntax, SyntaxKind::UNKNOWN_KW)
9457 }
9458}
9459
9460#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9461pub struct JsonEncodingClause {
9462 pub(crate) syntax: SyntaxNode,
9463}
9464impl JsonEncodingClause {
9465 #[inline]
9466 pub fn name_ref(&self) -> Option<NameRef> {
9467 support::child(&self.syntax)
9468 }
9469 #[inline]
9470 pub fn encoding_token(&self) -> Option<SyntaxToken> {
9471 support::token(&self.syntax, SyntaxKind::ENCODING_KW)
9472 }
9473}
9474
9475#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9476pub struct JsonExistsFn {
9477 pub(crate) syntax: SyntaxNode,
9478}
9479impl JsonExistsFn {
9480 #[inline]
9481 pub fn expr(&self) -> Option<Expr> {
9482 support::child(&self.syntax)
9483 }
9484 #[inline]
9485 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9486 support::child(&self.syntax)
9487 }
9488 #[inline]
9489 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9490 support::child(&self.syntax)
9491 }
9492 #[inline]
9493 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9494 support::child(&self.syntax)
9495 }
9496 #[inline]
9497 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9498 support::token(&self.syntax, SyntaxKind::L_PAREN)
9499 }
9500 #[inline]
9501 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9502 support::token(&self.syntax, SyntaxKind::R_PAREN)
9503 }
9504 #[inline]
9505 pub fn comma_token(&self) -> Option<SyntaxToken> {
9506 support::token(&self.syntax, SyntaxKind::COMMA)
9507 }
9508 #[inline]
9509 pub fn json_exists_token(&self) -> Option<SyntaxToken> {
9510 support::token(&self.syntax, SyntaxKind::JSON_EXISTS_KW)
9511 }
9512}
9513
9514#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9515pub struct JsonExprFormat {
9516 pub(crate) syntax: SyntaxNode,
9517}
9518impl JsonExprFormat {
9519 #[inline]
9520 pub fn expr(&self) -> Option<Expr> {
9521 support::child(&self.syntax)
9522 }
9523 #[inline]
9524 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9525 support::child(&self.syntax)
9526 }
9527}
9528
9529#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9530pub struct JsonFn {
9531 pub(crate) syntax: SyntaxNode,
9532}
9533impl JsonFn {
9534 #[inline]
9535 pub fn json_expr_format(&self) -> Option<JsonExprFormat> {
9536 support::child(&self.syntax)
9537 }
9538 #[inline]
9539 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9540 support::child(&self.syntax)
9541 }
9542 #[inline]
9543 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9544 support::token(&self.syntax, SyntaxKind::L_PAREN)
9545 }
9546 #[inline]
9547 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9548 support::token(&self.syntax, SyntaxKind::R_PAREN)
9549 }
9550 #[inline]
9551 pub fn json_token(&self) -> Option<SyntaxToken> {
9552 support::token(&self.syntax, SyntaxKind::JSON_KW)
9553 }
9554}
9555
9556#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9557pub struct JsonFormatClause {
9558 pub(crate) syntax: SyntaxNode,
9559}
9560impl JsonFormatClause {
9561 #[inline]
9562 pub fn json_encoding_clause(&self) -> Option<JsonEncodingClause> {
9563 support::child(&self.syntax)
9564 }
9565 #[inline]
9566 pub fn format_token(&self) -> Option<SyntaxToken> {
9567 support::token(&self.syntax, SyntaxKind::FORMAT_KW)
9568 }
9569 #[inline]
9570 pub fn json_token(&self) -> Option<SyntaxToken> {
9571 support::token(&self.syntax, SyntaxKind::JSON_KW)
9572 }
9573}
9574
9575#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9576pub struct JsonKeyValue {
9577 pub(crate) syntax: SyntaxNode,
9578}
9579impl JsonKeyValue {
9580 #[inline]
9581 pub fn expr(&self) -> Option<Expr> {
9582 support::child(&self.syntax)
9583 }
9584 #[inline]
9585 pub fn json_value_expr(&self) -> Option<JsonValueExpr> {
9586 support::child(&self.syntax)
9587 }
9588 #[inline]
9589 pub fn colon_token(&self) -> Option<SyntaxToken> {
9590 support::token(&self.syntax, SyntaxKind::COLON)
9591 }
9592}
9593
9594#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9595pub struct JsonKeysUniqueClause {
9596 pub(crate) syntax: SyntaxNode,
9597}
9598impl JsonKeysUniqueClause {
9599 #[inline]
9600 pub fn keys_token(&self) -> Option<SyntaxToken> {
9601 support::token(&self.syntax, SyntaxKind::KEYS_KW)
9602 }
9603 #[inline]
9604 pub fn unique_token(&self) -> Option<SyntaxToken> {
9605 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
9606 }
9607 #[inline]
9608 pub fn with_token(&self) -> Option<SyntaxToken> {
9609 support::token(&self.syntax, SyntaxKind::WITH_KW)
9610 }
9611 #[inline]
9612 pub fn without_token(&self) -> Option<SyntaxToken> {
9613 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
9614 }
9615}
9616
9617#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9618pub struct JsonNullClause {
9619 pub(crate) syntax: SyntaxNode,
9620}
9621impl JsonNullClause {
9622 #[inline]
9623 pub fn absent_token(&self) -> Option<SyntaxToken> {
9624 support::token(&self.syntax, SyntaxKind::ABSENT_KW)
9625 }
9626 #[inline]
9627 pub fn null_token(&self) -> Option<SyntaxToken> {
9628 support::token(&self.syntax, SyntaxKind::NULL_KW)
9629 }
9630 #[inline]
9631 pub fn on_token(&self) -> Option<SyntaxToken> {
9632 support::token(&self.syntax, SyntaxKind::ON_KW)
9633 }
9634}
9635
9636#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9637pub struct JsonObjectAggFn {
9638 pub(crate) syntax: SyntaxNode,
9639}
9640impl JsonObjectAggFn {
9641 #[inline]
9642 pub fn json_key_value(&self) -> Option<JsonKeyValue> {
9643 support::child(&self.syntax)
9644 }
9645 #[inline]
9646 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9647 support::child(&self.syntax)
9648 }
9649 #[inline]
9650 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9651 support::child(&self.syntax)
9652 }
9653 #[inline]
9654 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9655 support::child(&self.syntax)
9656 }
9657 #[inline]
9658 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9659 support::token(&self.syntax, SyntaxKind::L_PAREN)
9660 }
9661 #[inline]
9662 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9663 support::token(&self.syntax, SyntaxKind::R_PAREN)
9664 }
9665 #[inline]
9666 pub fn json_objectagg_token(&self) -> Option<SyntaxToken> {
9667 support::token(&self.syntax, SyntaxKind::JSON_OBJECTAGG_KW)
9668 }
9669}
9670
9671#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9672pub struct JsonObjectFn {
9673 pub(crate) syntax: SyntaxNode,
9674}
9675impl JsonObjectFn {
9676 #[inline]
9677 pub fn json_key_values(&self) -> AstChildren<JsonKeyValue> {
9678 support::children(&self.syntax)
9679 }
9680 #[inline]
9681 pub fn json_keys_unique_clause(&self) -> Option<JsonKeysUniqueClause> {
9682 support::child(&self.syntax)
9683 }
9684 #[inline]
9685 pub fn json_null_clause(&self) -> Option<JsonNullClause> {
9686 support::child(&self.syntax)
9687 }
9688 #[inline]
9689 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9690 support::child(&self.syntax)
9691 }
9692 #[inline]
9693 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9694 support::token(&self.syntax, SyntaxKind::L_PAREN)
9695 }
9696 #[inline]
9697 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9698 support::token(&self.syntax, SyntaxKind::R_PAREN)
9699 }
9700 #[inline]
9701 pub fn json_object_token(&self) -> Option<SyntaxToken> {
9702 support::token(&self.syntax, SyntaxKind::JSON_OBJECT_KW)
9703 }
9704}
9705
9706#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9707pub struct JsonOnEmptyClause {
9708 pub(crate) syntax: SyntaxNode,
9709}
9710impl JsonOnEmptyClause {
9711 #[inline]
9712 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9713 support::child(&self.syntax)
9714 }
9715 #[inline]
9716 pub fn empty_token(&self) -> Option<SyntaxToken> {
9717 support::token(&self.syntax, SyntaxKind::EMPTY_KW)
9718 }
9719 #[inline]
9720 pub fn on_token(&self) -> Option<SyntaxToken> {
9721 support::token(&self.syntax, SyntaxKind::ON_KW)
9722 }
9723}
9724
9725#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9726pub struct JsonOnErrorClause {
9727 pub(crate) syntax: SyntaxNode,
9728}
9729impl JsonOnErrorClause {
9730 #[inline]
9731 pub fn json_behavior(&self) -> Option<JsonBehavior> {
9732 support::child(&self.syntax)
9733 }
9734 #[inline]
9735 pub fn error_token(&self) -> Option<SyntaxToken> {
9736 support::token(&self.syntax, SyntaxKind::ERROR_KW)
9737 }
9738 #[inline]
9739 pub fn on_token(&self) -> Option<SyntaxToken> {
9740 support::token(&self.syntax, SyntaxKind::ON_KW)
9741 }
9742}
9743
9744#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9745pub struct JsonPassingArg {
9746 pub(crate) syntax: SyntaxNode,
9747}
9748impl JsonPassingArg {
9749 #[inline]
9750 pub fn expr(&self) -> Option<Expr> {
9751 support::child(&self.syntax)
9752 }
9753}
9754
9755#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9756pub struct JsonPassingClause {
9757 pub(crate) syntax: SyntaxNode,
9758}
9759impl JsonPassingClause {
9760 #[inline]
9761 pub fn json_passing_args(&self) -> AstChildren<JsonPassingArg> {
9762 support::children(&self.syntax)
9763 }
9764 #[inline]
9765 pub fn passing_token(&self) -> Option<SyntaxToken> {
9766 support::token(&self.syntax, SyntaxKind::PASSING_KW)
9767 }
9768}
9769
9770#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9771pub struct JsonPathClause {
9772 pub(crate) syntax: SyntaxNode,
9773}
9774impl JsonPathClause {
9775 #[inline]
9776 pub fn expr(&self) -> Option<Expr> {
9777 support::child(&self.syntax)
9778 }
9779 #[inline]
9780 pub fn path_token(&self) -> Option<SyntaxToken> {
9781 support::token(&self.syntax, SyntaxKind::PATH_KW)
9782 }
9783}
9784
9785#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9786pub struct JsonQueryFn {
9787 pub(crate) syntax: SyntaxNode,
9788}
9789impl JsonQueryFn {
9790 #[inline]
9791 pub fn expr(&self) -> Option<Expr> {
9792 support::child(&self.syntax)
9793 }
9794 #[inline]
9795 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
9796 support::child(&self.syntax)
9797 }
9798 #[inline]
9799 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9800 support::child(&self.syntax)
9801 }
9802 #[inline]
9803 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9804 support::child(&self.syntax)
9805 }
9806 #[inline]
9807 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
9808 support::child(&self.syntax)
9809 }
9810 #[inline]
9811 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9812 support::child(&self.syntax)
9813 }
9814 #[inline]
9815 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
9816 support::child(&self.syntax)
9817 }
9818 #[inline]
9819 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9820 support::token(&self.syntax, SyntaxKind::L_PAREN)
9821 }
9822 #[inline]
9823 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9824 support::token(&self.syntax, SyntaxKind::R_PAREN)
9825 }
9826 #[inline]
9827 pub fn comma_token(&self) -> Option<SyntaxToken> {
9828 support::token(&self.syntax, SyntaxKind::COMMA)
9829 }
9830 #[inline]
9831 pub fn json_query_token(&self) -> Option<SyntaxToken> {
9832 support::token(&self.syntax, SyntaxKind::JSON_QUERY_KW)
9833 }
9834}
9835
9836#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9837pub struct JsonQuotesClause {
9838 pub(crate) syntax: SyntaxNode,
9839}
9840impl JsonQuotesClause {
9841 #[inline]
9842 pub fn keep_token(&self) -> Option<SyntaxToken> {
9843 support::token(&self.syntax, SyntaxKind::KEEP_KW)
9844 }
9845 #[inline]
9846 pub fn omit_token(&self) -> Option<SyntaxToken> {
9847 support::token(&self.syntax, SyntaxKind::OMIT_KW)
9848 }
9849 #[inline]
9850 pub fn quotes_token(&self) -> Option<SyntaxToken> {
9851 support::token(&self.syntax, SyntaxKind::QUOTES_KW)
9852 }
9853}
9854
9855#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9856pub struct JsonReturningClause {
9857 pub(crate) syntax: SyntaxNode,
9858}
9859impl JsonReturningClause {
9860 #[inline]
9861 pub fn ty(&self) -> Option<Type> {
9862 support::child(&self.syntax)
9863 }
9864 #[inline]
9865 pub fn returning_token(&self) -> Option<SyntaxToken> {
9866 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
9867 }
9868}
9869
9870#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9871pub struct JsonScalarFn {
9872 pub(crate) syntax: SyntaxNode,
9873}
9874impl JsonScalarFn {
9875 #[inline]
9876 pub fn expr(&self) -> Option<Expr> {
9877 support::child(&self.syntax)
9878 }
9879 #[inline]
9880 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9881 support::token(&self.syntax, SyntaxKind::L_PAREN)
9882 }
9883 #[inline]
9884 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9885 support::token(&self.syntax, SyntaxKind::R_PAREN)
9886 }
9887 #[inline]
9888 pub fn json_scalar_token(&self) -> Option<SyntaxToken> {
9889 support::token(&self.syntax, SyntaxKind::JSON_SCALAR_KW)
9890 }
9891}
9892
9893#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9894pub struct JsonSelectFormat {
9895 pub(crate) syntax: SyntaxNode,
9896}
9897impl JsonSelectFormat {
9898 #[inline]
9899 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9900 support::child(&self.syntax)
9901 }
9902 #[inline]
9903 pub fn select_variant(&self) -> Option<SelectVariant> {
9904 support::child(&self.syntax)
9905 }
9906}
9907
9908#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9909pub struct JsonSerializeFn {
9910 pub(crate) syntax: SyntaxNode,
9911}
9912impl JsonSerializeFn {
9913 #[inline]
9914 pub fn expr(&self) -> Option<Expr> {
9915 support::child(&self.syntax)
9916 }
9917 #[inline]
9918 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9919 support::child(&self.syntax)
9920 }
9921 #[inline]
9922 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
9923 support::child(&self.syntax)
9924 }
9925 #[inline]
9926 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9927 support::token(&self.syntax, SyntaxKind::L_PAREN)
9928 }
9929 #[inline]
9930 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9931 support::token(&self.syntax, SyntaxKind::R_PAREN)
9932 }
9933 #[inline]
9934 pub fn json_serialize_token(&self) -> Option<SyntaxToken> {
9935 support::token(&self.syntax, SyntaxKind::JSON_SERIALIZE_KW)
9936 }
9937}
9938
9939#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9940pub struct JsonTable {
9941 pub(crate) syntax: SyntaxNode,
9942}
9943impl JsonTable {
9944 #[inline]
9945 pub fn expr(&self) -> Option<Expr> {
9946 support::child(&self.syntax)
9947 }
9948 #[inline]
9949 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
9950 support::child(&self.syntax)
9951 }
9952 #[inline]
9953 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
9954 support::child(&self.syntax)
9955 }
9956 #[inline]
9957 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
9958 support::child(&self.syntax)
9959 }
9960 #[inline]
9961 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
9962 support::child(&self.syntax)
9963 }
9964 #[inline]
9965 pub fn name(&self) -> Option<Name> {
9966 support::child(&self.syntax)
9967 }
9968 #[inline]
9969 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
9970 support::token(&self.syntax, SyntaxKind::L_PAREN)
9971 }
9972 #[inline]
9973 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
9974 support::token(&self.syntax, SyntaxKind::R_PAREN)
9975 }
9976 #[inline]
9977 pub fn comma_token(&self) -> Option<SyntaxToken> {
9978 support::token(&self.syntax, SyntaxKind::COMMA)
9979 }
9980 #[inline]
9981 pub fn as_token(&self) -> Option<SyntaxToken> {
9982 support::token(&self.syntax, SyntaxKind::AS_KW)
9983 }
9984 #[inline]
9985 pub fn json_table_token(&self) -> Option<SyntaxToken> {
9986 support::token(&self.syntax, SyntaxKind::JSON_TABLE_KW)
9987 }
9988}
9989
9990#[derive(Debug, Clone, PartialEq, Eq, Hash)]
9991pub struct JsonTableColumn {
9992 pub(crate) syntax: SyntaxNode,
9993}
9994impl JsonTableColumn {
9995 #[inline]
9996 pub fn expr(&self) -> Option<Expr> {
9997 support::child(&self.syntax)
9998 }
9999 #[inline]
10000 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
10001 support::child(&self.syntax)
10002 }
10003 #[inline]
10004 pub fn json_on_empty_clause(&self) -> Option<JsonOnEmptyClause> {
10005 support::child(&self.syntax)
10006 }
10007 #[inline]
10008 pub fn json_on_error_clause(&self) -> Option<JsonOnErrorClause> {
10009 support::child(&self.syntax)
10010 }
10011 #[inline]
10012 pub fn json_path_clause(&self) -> Option<JsonPathClause> {
10013 support::child(&self.syntax)
10014 }
10015 #[inline]
10016 pub fn json_quotes_clause(&self) -> Option<JsonQuotesClause> {
10017 support::child(&self.syntax)
10018 }
10019 #[inline]
10020 pub fn json_table_column_list(&self) -> Option<JsonTableColumnList> {
10021 support::child(&self.syntax)
10022 }
10023 #[inline]
10024 pub fn json_wrapper_behavior_clause(&self) -> Option<JsonWrapperBehaviorClause> {
10025 support::child(&self.syntax)
10026 }
10027 #[inline]
10028 pub fn name(&self) -> Option<Name> {
10029 support::child(&self.syntax)
10030 }
10031 #[inline]
10032 pub fn ty(&self) -> Option<Type> {
10033 support::child(&self.syntax)
10034 }
10035 #[inline]
10036 pub fn as_token(&self) -> Option<SyntaxToken> {
10037 support::token(&self.syntax, SyntaxKind::AS_KW)
10038 }
10039 #[inline]
10040 pub fn exists_token(&self) -> Option<SyntaxToken> {
10041 support::token(&self.syntax, SyntaxKind::EXISTS_KW)
10042 }
10043 #[inline]
10044 pub fn for_token(&self) -> Option<SyntaxToken> {
10045 support::token(&self.syntax, SyntaxKind::FOR_KW)
10046 }
10047 #[inline]
10048 pub fn nested_token(&self) -> Option<SyntaxToken> {
10049 support::token(&self.syntax, SyntaxKind::NESTED_KW)
10050 }
10051 #[inline]
10052 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
10053 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
10054 }
10055 #[inline]
10056 pub fn path_token(&self) -> Option<SyntaxToken> {
10057 support::token(&self.syntax, SyntaxKind::PATH_KW)
10058 }
10059}
10060
10061#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10062pub struct JsonTableColumnList {
10063 pub(crate) syntax: SyntaxNode,
10064}
10065impl JsonTableColumnList {
10066 #[inline]
10067 pub fn json_table_columns(&self) -> AstChildren<JsonTableColumn> {
10068 support::children(&self.syntax)
10069 }
10070 #[inline]
10071 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10072 support::token(&self.syntax, SyntaxKind::L_PAREN)
10073 }
10074 #[inline]
10075 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10076 support::token(&self.syntax, SyntaxKind::R_PAREN)
10077 }
10078 #[inline]
10079 pub fn columns_token(&self) -> Option<SyntaxToken> {
10080 support::token(&self.syntax, SyntaxKind::COLUMNS_KW)
10081 }
10082}
10083
10084#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10085pub struct JsonValueExpr {
10086 pub(crate) syntax: SyntaxNode,
10087}
10088impl JsonValueExpr {
10089 #[inline]
10090 pub fn expr(&self) -> Option<Expr> {
10091 support::child(&self.syntax)
10092 }
10093 #[inline]
10094 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
10095 support::child(&self.syntax)
10096 }
10097}
10098
10099#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10100pub struct JsonValueFn {
10101 pub(crate) syntax: SyntaxNode,
10102}
10103impl JsonValueFn {
10104 #[inline]
10105 pub fn expr(&self) -> Option<Expr> {
10106 support::child(&self.syntax)
10107 }
10108 #[inline]
10109 pub fn json_behavior_clause(&self) -> Option<JsonBehaviorClause> {
10110 support::child(&self.syntax)
10111 }
10112 #[inline]
10113 pub fn json_format_clause(&self) -> Option<JsonFormatClause> {
10114 support::child(&self.syntax)
10115 }
10116 #[inline]
10117 pub fn json_passing_clause(&self) -> Option<JsonPassingClause> {
10118 support::child(&self.syntax)
10119 }
10120 #[inline]
10121 pub fn json_returning_clause(&self) -> Option<JsonReturningClause> {
10122 support::child(&self.syntax)
10123 }
10124 #[inline]
10125 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10126 support::token(&self.syntax, SyntaxKind::L_PAREN)
10127 }
10128 #[inline]
10129 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10130 support::token(&self.syntax, SyntaxKind::R_PAREN)
10131 }
10132 #[inline]
10133 pub fn comma_token(&self) -> Option<SyntaxToken> {
10134 support::token(&self.syntax, SyntaxKind::COMMA)
10135 }
10136 #[inline]
10137 pub fn json_value_token(&self) -> Option<SyntaxToken> {
10138 support::token(&self.syntax, SyntaxKind::JSON_VALUE_KW)
10139 }
10140}
10141
10142#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10143pub struct JsonWrapperBehaviorClause {
10144 pub(crate) syntax: SyntaxNode,
10145}
10146impl JsonWrapperBehaviorClause {
10147 #[inline]
10148 pub fn array_token(&self) -> Option<SyntaxToken> {
10149 support::token(&self.syntax, SyntaxKind::ARRAY_KW)
10150 }
10151 #[inline]
10152 pub fn conditional_token(&self) -> Option<SyntaxToken> {
10153 support::token(&self.syntax, SyntaxKind::CONDITIONAL_KW)
10154 }
10155 #[inline]
10156 pub fn unconditional_token(&self) -> Option<SyntaxToken> {
10157 support::token(&self.syntax, SyntaxKind::UNCONDITIONAL_KW)
10158 }
10159 #[inline]
10160 pub fn with_token(&self) -> Option<SyntaxToken> {
10161 support::token(&self.syntax, SyntaxKind::WITH_KW)
10162 }
10163 #[inline]
10164 pub fn without_token(&self) -> Option<SyntaxToken> {
10165 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
10166 }
10167 #[inline]
10168 pub fn wrapper_token(&self) -> Option<SyntaxToken> {
10169 support::token(&self.syntax, SyntaxKind::WRAPPER_KW)
10170 }
10171}
10172
10173#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10174pub struct LanguageFuncOption {
10175 pub(crate) syntax: SyntaxNode,
10176}
10177impl LanguageFuncOption {
10178 #[inline]
10179 pub fn name_ref(&self) -> Option<NameRef> {
10180 support::child(&self.syntax)
10181 }
10182 #[inline]
10183 pub fn language_token(&self) -> Option<SyntaxToken> {
10184 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
10185 }
10186}
10187
10188#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10189pub struct LeakproofFuncOption {
10190 pub(crate) syntax: SyntaxNode,
10191}
10192impl LeakproofFuncOption {
10193 #[inline]
10194 pub fn leakproof_token(&self) -> Option<SyntaxToken> {
10195 support::token(&self.syntax, SyntaxKind::LEAKPROOF_KW)
10196 }
10197 #[inline]
10198 pub fn not_token(&self) -> Option<SyntaxToken> {
10199 support::token(&self.syntax, SyntaxKind::NOT_KW)
10200 }
10201}
10202
10203#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10204pub struct LikeClause {
10205 pub(crate) syntax: SyntaxNode,
10206}
10207impl LikeClause {
10208 #[inline]
10209 pub fn like_options(&self) -> AstChildren<LikeOption> {
10210 support::children(&self.syntax)
10211 }
10212 #[inline]
10213 pub fn path(&self) -> Option<Path> {
10214 support::child(&self.syntax)
10215 }
10216 #[inline]
10217 pub fn like_token(&self) -> Option<SyntaxToken> {
10218 support::token(&self.syntax, SyntaxKind::LIKE_KW)
10219 }
10220}
10221
10222#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10223pub struct LikeOption {
10224 pub(crate) syntax: SyntaxNode,
10225}
10226impl LikeOption {
10227 #[inline]
10228 pub fn all_token(&self) -> Option<SyntaxToken> {
10229 support::token(&self.syntax, SyntaxKind::ALL_KW)
10230 }
10231 #[inline]
10232 pub fn comments_token(&self) -> Option<SyntaxToken> {
10233 support::token(&self.syntax, SyntaxKind::COMMENTS_KW)
10234 }
10235 #[inline]
10236 pub fn compression_token(&self) -> Option<SyntaxToken> {
10237 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
10238 }
10239 #[inline]
10240 pub fn constraints_token(&self) -> Option<SyntaxToken> {
10241 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
10242 }
10243 #[inline]
10244 pub fn defaults_token(&self) -> Option<SyntaxToken> {
10245 support::token(&self.syntax, SyntaxKind::DEFAULTS_KW)
10246 }
10247 #[inline]
10248 pub fn excluding_token(&self) -> Option<SyntaxToken> {
10249 support::token(&self.syntax, SyntaxKind::EXCLUDING_KW)
10250 }
10251 #[inline]
10252 pub fn generated_token(&self) -> Option<SyntaxToken> {
10253 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
10254 }
10255 #[inline]
10256 pub fn identity_token(&self) -> Option<SyntaxToken> {
10257 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
10258 }
10259 #[inline]
10260 pub fn including_token(&self) -> Option<SyntaxToken> {
10261 support::token(&self.syntax, SyntaxKind::INCLUDING_KW)
10262 }
10263 #[inline]
10264 pub fn indexes_token(&self) -> Option<SyntaxToken> {
10265 support::token(&self.syntax, SyntaxKind::INDEXES_KW)
10266 }
10267 #[inline]
10268 pub fn statistics_token(&self) -> Option<SyntaxToken> {
10269 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
10270 }
10271 #[inline]
10272 pub fn storage_token(&self) -> Option<SyntaxToken> {
10273 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
10274 }
10275}
10276
10277#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10278pub struct LimitClause {
10279 pub(crate) syntax: SyntaxNode,
10280}
10281impl LimitClause {
10282 #[inline]
10283 pub fn expr(&self) -> Option<Expr> {
10284 support::child(&self.syntax)
10285 }
10286 #[inline]
10287 pub fn all_token(&self) -> Option<SyntaxToken> {
10288 support::token(&self.syntax, SyntaxKind::ALL_KW)
10289 }
10290 #[inline]
10291 pub fn limit_token(&self) -> Option<SyntaxToken> {
10292 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
10293 }
10294}
10295
10296#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10297pub struct LimitToTables {
10298 pub(crate) syntax: SyntaxNode,
10299}
10300impl LimitToTables {
10301 #[inline]
10302 pub fn name_refs(&self) -> AstChildren<NameRef> {
10303 support::children(&self.syntax)
10304 }
10305 #[inline]
10306 pub fn limit_token(&self) -> Option<SyntaxToken> {
10307 support::token(&self.syntax, SyntaxKind::LIMIT_KW)
10308 }
10309 #[inline]
10310 pub fn to_token(&self) -> Option<SyntaxToken> {
10311 support::token(&self.syntax, SyntaxKind::TO_KW)
10312 }
10313}
10314
10315#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10316pub struct Listen {
10317 pub(crate) syntax: SyntaxNode,
10318}
10319impl Listen {
10320 #[inline]
10321 pub fn name(&self) -> Option<Name> {
10322 support::child(&self.syntax)
10323 }
10324 #[inline]
10325 pub fn listen_token(&self) -> Option<SyntaxToken> {
10326 support::token(&self.syntax, SyntaxKind::LISTEN_KW)
10327 }
10328}
10329
10330#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10331pub struct Literal {
10332 pub(crate) syntax: SyntaxNode,
10333}
10334impl Literal {}
10335
10336#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10337pub struct Load {
10338 pub(crate) syntax: SyntaxNode,
10339}
10340impl Load {
10341 #[inline]
10342 pub fn literal(&self) -> Option<Literal> {
10343 support::child(&self.syntax)
10344 }
10345 #[inline]
10346 pub fn load_token(&self) -> Option<SyntaxToken> {
10347 support::token(&self.syntax, SyntaxKind::LOAD_KW)
10348 }
10349}
10350
10351#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10352pub struct Lock {
10353 pub(crate) syntax: SyntaxNode,
10354}
10355impl Lock {
10356 #[inline]
10357 pub fn table_list(&self) -> Option<TableList> {
10358 support::child(&self.syntax)
10359 }
10360 #[inline]
10361 pub fn lock_token(&self) -> Option<SyntaxToken> {
10362 support::token(&self.syntax, SyntaxKind::LOCK_KW)
10363 }
10364 #[inline]
10365 pub fn table_token(&self) -> Option<SyntaxToken> {
10366 support::token(&self.syntax, SyntaxKind::TABLE_KW)
10367 }
10368}
10369
10370#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10371pub struct LockingClause {
10372 pub(crate) syntax: SyntaxNode,
10373}
10374impl LockingClause {
10375 #[inline]
10376 pub fn for_token(&self) -> Option<SyntaxToken> {
10377 support::token(&self.syntax, SyntaxKind::FOR_KW)
10378 }
10379}
10380
10381#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10382pub struct Lteq {
10383 pub(crate) syntax: SyntaxNode,
10384}
10385impl Lteq {
10386 #[inline]
10387 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
10388 support::token(&self.syntax, SyntaxKind::L_ANGLE)
10389 }
10390 #[inline]
10391 pub fn eq_token(&self) -> Option<SyntaxToken> {
10392 support::token(&self.syntax, SyntaxKind::EQ)
10393 }
10394}
10395
10396#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10397pub struct MatchFull {
10398 pub(crate) syntax: SyntaxNode,
10399}
10400impl MatchFull {
10401 #[inline]
10402 pub fn full_token(&self) -> Option<SyntaxToken> {
10403 support::token(&self.syntax, SyntaxKind::FULL_KW)
10404 }
10405 #[inline]
10406 pub fn match_token(&self) -> Option<SyntaxToken> {
10407 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10408 }
10409}
10410
10411#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10412pub struct MatchPartial {
10413 pub(crate) syntax: SyntaxNode,
10414}
10415impl MatchPartial {
10416 #[inline]
10417 pub fn match_token(&self) -> Option<SyntaxToken> {
10418 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10419 }
10420 #[inline]
10421 pub fn partial_token(&self) -> Option<SyntaxToken> {
10422 support::token(&self.syntax, SyntaxKind::PARTIAL_KW)
10423 }
10424}
10425
10426#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10427pub struct MatchSimple {
10428 pub(crate) syntax: SyntaxNode,
10429}
10430impl MatchSimple {
10431 #[inline]
10432 pub fn match_token(&self) -> Option<SyntaxToken> {
10433 support::token(&self.syntax, SyntaxKind::MATCH_KW)
10434 }
10435 #[inline]
10436 pub fn simple_token(&self) -> Option<SyntaxToken> {
10437 support::token(&self.syntax, SyntaxKind::SIMPLE_KW)
10438 }
10439}
10440
10441#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10442pub struct Materialized {
10443 pub(crate) syntax: SyntaxNode,
10444}
10445impl Materialized {
10446 #[inline]
10447 pub fn materialized_token(&self) -> Option<SyntaxToken> {
10448 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
10449 }
10450}
10451
10452#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10453pub struct Merge {
10454 pub(crate) syntax: SyntaxNode,
10455}
10456impl Merge {
10457 #[inline]
10458 pub fn alias(&self) -> Option<Alias> {
10459 support::child(&self.syntax)
10460 }
10461 #[inline]
10462 pub fn merge_when_clauses(&self) -> AstChildren<MergeWhenClause> {
10463 support::children(&self.syntax)
10464 }
10465 #[inline]
10466 pub fn relation_name(&self) -> Option<RelationName> {
10467 support::child(&self.syntax)
10468 }
10469 #[inline]
10470 pub fn returning_clause(&self) -> Option<ReturningClause> {
10471 support::child(&self.syntax)
10472 }
10473 #[inline]
10474 pub fn using_on_clause(&self) -> Option<UsingOnClause> {
10475 support::child(&self.syntax)
10476 }
10477 #[inline]
10478 pub fn with_clause(&self) -> Option<WithClause> {
10479 support::child(&self.syntax)
10480 }
10481 #[inline]
10482 pub fn into_token(&self) -> Option<SyntaxToken> {
10483 support::token(&self.syntax, SyntaxKind::INTO_KW)
10484 }
10485 #[inline]
10486 pub fn merge_token(&self) -> Option<SyntaxToken> {
10487 support::token(&self.syntax, SyntaxKind::MERGE_KW)
10488 }
10489}
10490
10491#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10492pub struct MergeDelete {
10493 pub(crate) syntax: SyntaxNode,
10494}
10495impl MergeDelete {
10496 #[inline]
10497 pub fn delete_token(&self) -> Option<SyntaxToken> {
10498 support::token(&self.syntax, SyntaxKind::DELETE_KW)
10499 }
10500}
10501
10502#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10503pub struct MergeDoNothing {
10504 pub(crate) syntax: SyntaxNode,
10505}
10506impl MergeDoNothing {
10507 #[inline]
10508 pub fn do_token(&self) -> Option<SyntaxToken> {
10509 support::token(&self.syntax, SyntaxKind::DO_KW)
10510 }
10511 #[inline]
10512 pub fn nothing_token(&self) -> Option<SyntaxToken> {
10513 support::token(&self.syntax, SyntaxKind::NOTHING_KW)
10514 }
10515}
10516
10517#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10518pub struct MergeInsert {
10519 pub(crate) syntax: SyntaxNode,
10520}
10521impl MergeInsert {
10522 #[inline]
10523 pub fn column_list(&self) -> Option<ColumnList> {
10524 support::child(&self.syntax)
10525 }
10526 #[inline]
10527 pub fn values(&self) -> Option<Values> {
10528 support::child(&self.syntax)
10529 }
10530 #[inline]
10531 pub fn default_token(&self) -> Option<SyntaxToken> {
10532 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
10533 }
10534 #[inline]
10535 pub fn insert_token(&self) -> Option<SyntaxToken> {
10536 support::token(&self.syntax, SyntaxKind::INSERT_KW)
10537 }
10538 #[inline]
10539 pub fn overriding_token(&self) -> Option<SyntaxToken> {
10540 support::token(&self.syntax, SyntaxKind::OVERRIDING_KW)
10541 }
10542 #[inline]
10543 pub fn system_token(&self) -> Option<SyntaxToken> {
10544 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
10545 }
10546 #[inline]
10547 pub fn user_token(&self) -> Option<SyntaxToken> {
10548 support::token(&self.syntax, SyntaxKind::USER_KW)
10549 }
10550 #[inline]
10551 pub fn values_token(&self) -> Option<SyntaxToken> {
10552 support::token(&self.syntax, SyntaxKind::VALUES_KW)
10553 }
10554}
10555
10556#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10557pub struct MergePartitions {
10558 pub(crate) syntax: SyntaxNode,
10559}
10560impl MergePartitions {
10561 #[inline]
10562 pub fn path(&self) -> Option<Path> {
10563 support::child(&self.syntax)
10564 }
10565 #[inline]
10566 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
10567 support::token(&self.syntax, SyntaxKind::L_PAREN)
10568 }
10569 #[inline]
10570 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
10571 support::token(&self.syntax, SyntaxKind::R_PAREN)
10572 }
10573 #[inline]
10574 pub fn into_token(&self) -> Option<SyntaxToken> {
10575 support::token(&self.syntax, SyntaxKind::INTO_KW)
10576 }
10577 #[inline]
10578 pub fn merge_token(&self) -> Option<SyntaxToken> {
10579 support::token(&self.syntax, SyntaxKind::MERGE_KW)
10580 }
10581 #[inline]
10582 pub fn partitions_token(&self) -> Option<SyntaxToken> {
10583 support::token(&self.syntax, SyntaxKind::PARTITIONS_KW)
10584 }
10585}
10586
10587#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10588pub struct MergeUpdate {
10589 pub(crate) syntax: SyntaxNode,
10590}
10591impl MergeUpdate {
10592 #[inline]
10593 pub fn set_clause(&self) -> Option<SetClause> {
10594 support::child(&self.syntax)
10595 }
10596 #[inline]
10597 pub fn set_token(&self) -> Option<SyntaxToken> {
10598 support::token(&self.syntax, SyntaxKind::SET_KW)
10599 }
10600 #[inline]
10601 pub fn update_token(&self) -> Option<SyntaxToken> {
10602 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
10603 }
10604}
10605
10606#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10607pub struct MergeWhenMatched {
10608 pub(crate) syntax: SyntaxNode,
10609}
10610impl MergeWhenMatched {
10611 #[inline]
10612 pub fn expr(&self) -> Option<Expr> {
10613 support::child(&self.syntax)
10614 }
10615 #[inline]
10616 pub fn merge_action(&self) -> Option<MergeAction> {
10617 support::child(&self.syntax)
10618 }
10619 #[inline]
10620 pub fn and_token(&self) -> Option<SyntaxToken> {
10621 support::token(&self.syntax, SyntaxKind::AND_KW)
10622 }
10623 #[inline]
10624 pub fn matched_token(&self) -> Option<SyntaxToken> {
10625 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10626 }
10627 #[inline]
10628 pub fn then_token(&self) -> Option<SyntaxToken> {
10629 support::token(&self.syntax, SyntaxKind::THEN_KW)
10630 }
10631 #[inline]
10632 pub fn when_token(&self) -> Option<SyntaxToken> {
10633 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10634 }
10635}
10636
10637#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10638pub struct MergeWhenNotMatchedSource {
10639 pub(crate) syntax: SyntaxNode,
10640}
10641impl MergeWhenNotMatchedSource {
10642 #[inline]
10643 pub fn expr(&self) -> Option<Expr> {
10644 support::child(&self.syntax)
10645 }
10646 #[inline]
10647 pub fn merge_action(&self) -> Option<MergeAction> {
10648 support::child(&self.syntax)
10649 }
10650 #[inline]
10651 pub fn and_token(&self) -> Option<SyntaxToken> {
10652 support::token(&self.syntax, SyntaxKind::AND_KW)
10653 }
10654 #[inline]
10655 pub fn by_token(&self) -> Option<SyntaxToken> {
10656 support::token(&self.syntax, SyntaxKind::BY_KW)
10657 }
10658 #[inline]
10659 pub fn matched_token(&self) -> Option<SyntaxToken> {
10660 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10661 }
10662 #[inline]
10663 pub fn not_token(&self) -> Option<SyntaxToken> {
10664 support::token(&self.syntax, SyntaxKind::NOT_KW)
10665 }
10666 #[inline]
10667 pub fn source_token(&self) -> Option<SyntaxToken> {
10668 support::token(&self.syntax, SyntaxKind::SOURCE_KW)
10669 }
10670 #[inline]
10671 pub fn then_token(&self) -> Option<SyntaxToken> {
10672 support::token(&self.syntax, SyntaxKind::THEN_KW)
10673 }
10674 #[inline]
10675 pub fn when_token(&self) -> Option<SyntaxToken> {
10676 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10677 }
10678}
10679
10680#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10681pub struct MergeWhenNotMatchedTarget {
10682 pub(crate) syntax: SyntaxNode,
10683}
10684impl MergeWhenNotMatchedTarget {
10685 #[inline]
10686 pub fn expr(&self) -> Option<Expr> {
10687 support::child(&self.syntax)
10688 }
10689 #[inline]
10690 pub fn merge_action(&self) -> Option<MergeAction> {
10691 support::child(&self.syntax)
10692 }
10693 #[inline]
10694 pub fn and_token(&self) -> Option<SyntaxToken> {
10695 support::token(&self.syntax, SyntaxKind::AND_KW)
10696 }
10697 #[inline]
10698 pub fn by_token(&self) -> Option<SyntaxToken> {
10699 support::token(&self.syntax, SyntaxKind::BY_KW)
10700 }
10701 #[inline]
10702 pub fn matched_token(&self) -> Option<SyntaxToken> {
10703 support::token(&self.syntax, SyntaxKind::MATCHED_KW)
10704 }
10705 #[inline]
10706 pub fn not_token(&self) -> Option<SyntaxToken> {
10707 support::token(&self.syntax, SyntaxKind::NOT_KW)
10708 }
10709 #[inline]
10710 pub fn target_token(&self) -> Option<SyntaxToken> {
10711 support::token(&self.syntax, SyntaxKind::TARGET_KW)
10712 }
10713 #[inline]
10714 pub fn then_token(&self) -> Option<SyntaxToken> {
10715 support::token(&self.syntax, SyntaxKind::THEN_KW)
10716 }
10717 #[inline]
10718 pub fn when_token(&self) -> Option<SyntaxToken> {
10719 support::token(&self.syntax, SyntaxKind::WHEN_KW)
10720 }
10721}
10722
10723#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10724pub struct Move {
10725 pub(crate) syntax: SyntaxNode,
10726}
10727impl Move {
10728 #[inline]
10729 pub fn name_ref(&self) -> Option<NameRef> {
10730 support::child(&self.syntax)
10731 }
10732 #[inline]
10733 pub fn from_token(&self) -> Option<SyntaxToken> {
10734 support::token(&self.syntax, SyntaxKind::FROM_KW)
10735 }
10736 #[inline]
10737 pub fn in_token(&self) -> Option<SyntaxToken> {
10738 support::token(&self.syntax, SyntaxKind::IN_KW)
10739 }
10740 #[inline]
10741 pub fn move_token(&self) -> Option<SyntaxToken> {
10742 support::token(&self.syntax, SyntaxKind::MOVE_KW)
10743 }
10744}
10745
10746#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10747pub struct Name {
10748 pub(crate) syntax: SyntaxNode,
10749}
10750impl Name {
10751 #[inline]
10752 pub fn ident_token(&self) -> Option<SyntaxToken> {
10753 support::token(&self.syntax, SyntaxKind::IDENT)
10754 }
10755}
10756
10757#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10758pub struct NameRef {
10759 pub(crate) syntax: SyntaxNode,
10760}
10761impl NameRef {
10762 #[inline]
10763 pub fn ident_token(&self) -> Option<SyntaxToken> {
10764 support::token(&self.syntax, SyntaxKind::IDENT)
10765 }
10766}
10767
10768#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10769pub struct NamedArg {
10770 pub(crate) syntax: SyntaxNode,
10771}
10772impl NamedArg {
10773 #[inline]
10774 pub fn expr(&self) -> Option<Expr> {
10775 support::child(&self.syntax)
10776 }
10777 #[inline]
10778 pub fn fat_arrow(&self) -> Option<FatArrow> {
10779 support::child(&self.syntax)
10780 }
10781 #[inline]
10782 pub fn name_ref(&self) -> Option<NameRef> {
10783 support::child(&self.syntax)
10784 }
10785}
10786
10787#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10788pub struct Neq {
10789 pub(crate) syntax: SyntaxNode,
10790}
10791impl Neq {
10792 #[inline]
10793 pub fn bang_token(&self) -> Option<SyntaxToken> {
10794 support::token(&self.syntax, SyntaxKind::BANG)
10795 }
10796 #[inline]
10797 pub fn eq_token(&self) -> Option<SyntaxToken> {
10798 support::token(&self.syntax, SyntaxKind::EQ)
10799 }
10800}
10801
10802#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10803pub struct Neqb {
10804 pub(crate) syntax: SyntaxNode,
10805}
10806impl Neqb {
10807 #[inline]
10808 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
10809 support::token(&self.syntax, SyntaxKind::L_ANGLE)
10810 }
10811 #[inline]
10812 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
10813 support::token(&self.syntax, SyntaxKind::R_ANGLE)
10814 }
10815}
10816
10817#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10818pub struct NoAction {
10819 pub(crate) syntax: SyntaxNode,
10820}
10821impl NoAction {
10822 #[inline]
10823 pub fn action_token(&self) -> Option<SyntaxToken> {
10824 support::token(&self.syntax, SyntaxKind::ACTION_KW)
10825 }
10826 #[inline]
10827 pub fn no_token(&self) -> Option<SyntaxToken> {
10828 support::token(&self.syntax, SyntaxKind::NO_KW)
10829 }
10830}
10831
10832#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10833pub struct NoDependsOnExtension {
10834 pub(crate) syntax: SyntaxNode,
10835}
10836impl NoDependsOnExtension {
10837 #[inline]
10838 pub fn name_ref(&self) -> Option<NameRef> {
10839 support::child(&self.syntax)
10840 }
10841 #[inline]
10842 pub fn depends_token(&self) -> Option<SyntaxToken> {
10843 support::token(&self.syntax, SyntaxKind::DEPENDS_KW)
10844 }
10845 #[inline]
10846 pub fn extension_token(&self) -> Option<SyntaxToken> {
10847 support::token(&self.syntax, SyntaxKind::EXTENSION_KW)
10848 }
10849 #[inline]
10850 pub fn no_token(&self) -> Option<SyntaxToken> {
10851 support::token(&self.syntax, SyntaxKind::NO_KW)
10852 }
10853 #[inline]
10854 pub fn on_token(&self) -> Option<SyntaxToken> {
10855 support::token(&self.syntax, SyntaxKind::ON_KW)
10856 }
10857}
10858
10859#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10860pub struct NoForceRls {
10861 pub(crate) syntax: SyntaxNode,
10862}
10863impl NoForceRls {
10864 #[inline]
10865 pub fn force_token(&self) -> Option<SyntaxToken> {
10866 support::token(&self.syntax, SyntaxKind::FORCE_KW)
10867 }
10868 #[inline]
10869 pub fn level_token(&self) -> Option<SyntaxToken> {
10870 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
10871 }
10872 #[inline]
10873 pub fn no_token(&self) -> Option<SyntaxToken> {
10874 support::token(&self.syntax, SyntaxKind::NO_KW)
10875 }
10876 #[inline]
10877 pub fn row_token(&self) -> Option<SyntaxToken> {
10878 support::token(&self.syntax, SyntaxKind::ROW_KW)
10879 }
10880 #[inline]
10881 pub fn security_token(&self) -> Option<SyntaxToken> {
10882 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
10883 }
10884}
10885
10886#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10887pub struct NoInherit {
10888 pub(crate) syntax: SyntaxNode,
10889}
10890impl NoInherit {
10891 #[inline]
10892 pub fn path(&self) -> Option<Path> {
10893 support::child(&self.syntax)
10894 }
10895 #[inline]
10896 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10897 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10898 }
10899 #[inline]
10900 pub fn no_token(&self) -> Option<SyntaxToken> {
10901 support::token(&self.syntax, SyntaxKind::NO_KW)
10902 }
10903}
10904
10905#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10906pub struct NoInheritTable {
10907 pub(crate) syntax: SyntaxNode,
10908}
10909impl NoInheritTable {
10910 #[inline]
10911 pub fn path(&self) -> Option<Path> {
10912 support::child(&self.syntax)
10913 }
10914 #[inline]
10915 pub fn inherit_token(&self) -> Option<SyntaxToken> {
10916 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
10917 }
10918 #[inline]
10919 pub fn no_token(&self) -> Option<SyntaxToken> {
10920 support::token(&self.syntax, SyntaxKind::NO_KW)
10921 }
10922}
10923
10924#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10925pub struct NonStandardParam {
10926 pub(crate) syntax: SyntaxNode,
10927}
10928impl NonStandardParam {
10929 #[inline]
10930 pub fn name_ref(&self) -> Option<NameRef> {
10931 support::child(&self.syntax)
10932 }
10933 #[inline]
10934 pub fn colon_token(&self) -> Option<SyntaxToken> {
10935 support::token(&self.syntax, SyntaxKind::COLON)
10936 }
10937}
10938
10939#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10940pub struct NotDeferrable {
10941 pub(crate) syntax: SyntaxNode,
10942}
10943impl NotDeferrable {
10944 #[inline]
10945 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
10946 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
10947 }
10948 #[inline]
10949 pub fn not_token(&self) -> Option<SyntaxToken> {
10950 support::token(&self.syntax, SyntaxKind::NOT_KW)
10951 }
10952}
10953
10954#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10955pub struct NotDeferrableConstraintOption {
10956 pub(crate) syntax: SyntaxNode,
10957}
10958impl NotDeferrableConstraintOption {
10959 #[inline]
10960 pub fn deferrable_token(&self) -> Option<SyntaxToken> {
10961 support::token(&self.syntax, SyntaxKind::DEFERRABLE_KW)
10962 }
10963 #[inline]
10964 pub fn not_token(&self) -> Option<SyntaxToken> {
10965 support::token(&self.syntax, SyntaxKind::NOT_KW)
10966 }
10967}
10968
10969#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10970pub struct NotEnforced {
10971 pub(crate) syntax: SyntaxNode,
10972}
10973impl NotEnforced {
10974 #[inline]
10975 pub fn enforced_token(&self) -> Option<SyntaxToken> {
10976 support::token(&self.syntax, SyntaxKind::ENFORCED_KW)
10977 }
10978 #[inline]
10979 pub fn not_token(&self) -> Option<SyntaxToken> {
10980 support::token(&self.syntax, SyntaxKind::NOT_KW)
10981 }
10982}
10983
10984#[derive(Debug, Clone, PartialEq, Eq, Hash)]
10985pub struct NotIlike {
10986 pub(crate) syntax: SyntaxNode,
10987}
10988impl NotIlike {
10989 #[inline]
10990 pub fn ilike_token(&self) -> Option<SyntaxToken> {
10991 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
10992 }
10993 #[inline]
10994 pub fn not_token(&self) -> Option<SyntaxToken> {
10995 support::token(&self.syntax, SyntaxKind::NOT_KW)
10996 }
10997}
10998
10999#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11000pub struct NotIn {
11001 pub(crate) syntax: SyntaxNode,
11002}
11003impl NotIn {
11004 #[inline]
11005 pub fn in_token(&self) -> Option<SyntaxToken> {
11006 support::token(&self.syntax, SyntaxKind::IN_KW)
11007 }
11008 #[inline]
11009 pub fn not_token(&self) -> Option<SyntaxToken> {
11010 support::token(&self.syntax, SyntaxKind::NOT_KW)
11011 }
11012}
11013
11014#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11015pub struct NotLike {
11016 pub(crate) syntax: SyntaxNode,
11017}
11018impl NotLike {
11019 #[inline]
11020 pub fn like_token(&self) -> Option<SyntaxToken> {
11021 support::token(&self.syntax, SyntaxKind::LIKE_KW)
11022 }
11023 #[inline]
11024 pub fn not_token(&self) -> Option<SyntaxToken> {
11025 support::token(&self.syntax, SyntaxKind::NOT_KW)
11026 }
11027}
11028
11029#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11030pub struct NotMaterialized {
11031 pub(crate) syntax: SyntaxNode,
11032}
11033impl NotMaterialized {
11034 #[inline]
11035 pub fn materialized_token(&self) -> Option<SyntaxToken> {
11036 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
11037 }
11038 #[inline]
11039 pub fn not_token(&self) -> Option<SyntaxToken> {
11040 support::token(&self.syntax, SyntaxKind::NOT_KW)
11041 }
11042}
11043
11044#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11045pub struct NotNullConstraint {
11046 pub(crate) syntax: SyntaxNode,
11047}
11048impl NotNullConstraint {
11049 #[inline]
11050 pub fn name_ref(&self) -> Option<NameRef> {
11051 support::child(&self.syntax)
11052 }
11053 #[inline]
11054 pub fn no_inherit(&self) -> Option<NoInherit> {
11055 support::child(&self.syntax)
11056 }
11057 #[inline]
11058 pub fn constraint_token(&self) -> Option<SyntaxToken> {
11059 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
11060 }
11061 #[inline]
11062 pub fn not_token(&self) -> Option<SyntaxToken> {
11063 support::token(&self.syntax, SyntaxKind::NOT_KW)
11064 }
11065 #[inline]
11066 pub fn null_token(&self) -> Option<SyntaxToken> {
11067 support::token(&self.syntax, SyntaxKind::NULL_KW)
11068 }
11069}
11070
11071#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11072pub struct NotOf {
11073 pub(crate) syntax: SyntaxNode,
11074}
11075impl NotOf {
11076 #[inline]
11077 pub fn not_token(&self) -> Option<SyntaxToken> {
11078 support::token(&self.syntax, SyntaxKind::NOT_KW)
11079 }
11080 #[inline]
11081 pub fn of_token(&self) -> Option<SyntaxToken> {
11082 support::token(&self.syntax, SyntaxKind::OF_KW)
11083 }
11084}
11085
11086#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11087pub struct NotSimilarTo {
11088 pub(crate) syntax: SyntaxNode,
11089}
11090impl NotSimilarTo {
11091 #[inline]
11092 pub fn not_token(&self) -> Option<SyntaxToken> {
11093 support::token(&self.syntax, SyntaxKind::NOT_KW)
11094 }
11095 #[inline]
11096 pub fn similar_token(&self) -> Option<SyntaxToken> {
11097 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
11098 }
11099 #[inline]
11100 pub fn to_token(&self) -> Option<SyntaxToken> {
11101 support::token(&self.syntax, SyntaxKind::TO_KW)
11102 }
11103}
11104
11105#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11106pub struct NotValid {
11107 pub(crate) syntax: SyntaxNode,
11108}
11109impl NotValid {
11110 #[inline]
11111 pub fn not_token(&self) -> Option<SyntaxToken> {
11112 support::token(&self.syntax, SyntaxKind::NOT_KW)
11113 }
11114 #[inline]
11115 pub fn valid_token(&self) -> Option<SyntaxToken> {
11116 support::token(&self.syntax, SyntaxKind::VALID_KW)
11117 }
11118}
11119
11120#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11121pub struct Notify {
11122 pub(crate) syntax: SyntaxNode,
11123}
11124impl Notify {
11125 #[inline]
11126 pub fn literal(&self) -> Option<Literal> {
11127 support::child(&self.syntax)
11128 }
11129 #[inline]
11130 pub fn name_ref(&self) -> Option<NameRef> {
11131 support::child(&self.syntax)
11132 }
11133 #[inline]
11134 pub fn comma_token(&self) -> Option<SyntaxToken> {
11135 support::token(&self.syntax, SyntaxKind::COMMA)
11136 }
11137 #[inline]
11138 pub fn notify_token(&self) -> Option<SyntaxToken> {
11139 support::token(&self.syntax, SyntaxKind::NOTIFY_KW)
11140 }
11141}
11142
11143#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11144pub struct NullConstraint {
11145 pub(crate) syntax: SyntaxNode,
11146}
11147impl NullConstraint {
11148 #[inline]
11149 pub fn name_ref(&self) -> Option<NameRef> {
11150 support::child(&self.syntax)
11151 }
11152 #[inline]
11153 pub fn constraint_token(&self) -> Option<SyntaxToken> {
11154 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
11155 }
11156 #[inline]
11157 pub fn null_token(&self) -> Option<SyntaxToken> {
11158 support::token(&self.syntax, SyntaxKind::NULL_KW)
11159 }
11160}
11161
11162#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11163pub struct NullsDistinct {
11164 pub(crate) syntax: SyntaxNode,
11165}
11166impl NullsDistinct {
11167 #[inline]
11168 pub fn distinct_token(&self) -> Option<SyntaxToken> {
11169 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
11170 }
11171 #[inline]
11172 pub fn nulls_token(&self) -> Option<SyntaxToken> {
11173 support::token(&self.syntax, SyntaxKind::NULLS_KW)
11174 }
11175}
11176
11177#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11178pub struct NullsFirst {
11179 pub(crate) syntax: SyntaxNode,
11180}
11181impl NullsFirst {
11182 #[inline]
11183 pub fn first_token(&self) -> Option<SyntaxToken> {
11184 support::token(&self.syntax, SyntaxKind::FIRST_KW)
11185 }
11186 #[inline]
11187 pub fn nulls_token(&self) -> Option<SyntaxToken> {
11188 support::token(&self.syntax, SyntaxKind::NULLS_KW)
11189 }
11190}
11191
11192#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11193pub struct NullsLast {
11194 pub(crate) syntax: SyntaxNode,
11195}
11196impl NullsLast {
11197 #[inline]
11198 pub fn last_token(&self) -> Option<SyntaxToken> {
11199 support::token(&self.syntax, SyntaxKind::LAST_KW)
11200 }
11201 #[inline]
11202 pub fn nulls_token(&self) -> Option<SyntaxToken> {
11203 support::token(&self.syntax, SyntaxKind::NULLS_KW)
11204 }
11205}
11206
11207#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11208pub struct NullsNotDistinct {
11209 pub(crate) syntax: SyntaxNode,
11210}
11211impl NullsNotDistinct {
11212 #[inline]
11213 pub fn distinct_token(&self) -> Option<SyntaxToken> {
11214 support::token(&self.syntax, SyntaxKind::DISTINCT_KW)
11215 }
11216 #[inline]
11217 pub fn not_token(&self) -> Option<SyntaxToken> {
11218 support::token(&self.syntax, SyntaxKind::NOT_KW)
11219 }
11220 #[inline]
11221 pub fn nulls_token(&self) -> Option<SyntaxToken> {
11222 support::token(&self.syntax, SyntaxKind::NULLS_KW)
11223 }
11224}
11225
11226#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11227pub struct OfType {
11228 pub(crate) syntax: SyntaxNode,
11229}
11230impl OfType {
11231 #[inline]
11232 pub fn ty(&self) -> Option<Type> {
11233 support::child(&self.syntax)
11234 }
11235 #[inline]
11236 pub fn of_token(&self) -> Option<SyntaxToken> {
11237 support::token(&self.syntax, SyntaxKind::OF_KW)
11238 }
11239}
11240
11241#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11242pub struct OffsetClause {
11243 pub(crate) syntax: SyntaxNode,
11244}
11245impl OffsetClause {
11246 #[inline]
11247 pub fn expr(&self) -> Option<Expr> {
11248 support::child(&self.syntax)
11249 }
11250 #[inline]
11251 pub fn offset_token(&self) -> Option<SyntaxToken> {
11252 support::token(&self.syntax, SyntaxKind::OFFSET_KW)
11253 }
11254 #[inline]
11255 pub fn row_token(&self) -> Option<SyntaxToken> {
11256 support::token(&self.syntax, SyntaxKind::ROW_KW)
11257 }
11258 #[inline]
11259 pub fn rows_token(&self) -> Option<SyntaxToken> {
11260 support::token(&self.syntax, SyntaxKind::ROWS_KW)
11261 }
11262}
11263
11264#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11265pub struct OnClause {
11266 pub(crate) syntax: SyntaxNode,
11267}
11268impl OnClause {
11269 #[inline]
11270 pub fn expr(&self) -> Option<Expr> {
11271 support::child(&self.syntax)
11272 }
11273 #[inline]
11274 pub fn on_token(&self) -> Option<SyntaxToken> {
11275 support::token(&self.syntax, SyntaxKind::ON_KW)
11276 }
11277}
11278
11279#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11280pub struct OnCommit {
11281 pub(crate) syntax: SyntaxNode,
11282}
11283impl OnCommit {
11284 #[inline]
11285 pub fn on_commit_action(&self) -> Option<OnCommitAction> {
11286 support::child(&self.syntax)
11287 }
11288 #[inline]
11289 pub fn commit_token(&self) -> Option<SyntaxToken> {
11290 support::token(&self.syntax, SyntaxKind::COMMIT_KW)
11291 }
11292 #[inline]
11293 pub fn on_token(&self) -> Option<SyntaxToken> {
11294 support::token(&self.syntax, SyntaxKind::ON_KW)
11295 }
11296}
11297
11298#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11299pub struct OnConflictClause {
11300 pub(crate) syntax: SyntaxNode,
11301}
11302impl OnConflictClause {
11303 #[inline]
11304 pub fn conflict_action(&self) -> Option<ConflictAction> {
11305 support::child(&self.syntax)
11306 }
11307 #[inline]
11308 pub fn conflict_target(&self) -> Option<ConflictTarget> {
11309 support::child(&self.syntax)
11310 }
11311 #[inline]
11312 pub fn conflict_token(&self) -> Option<SyntaxToken> {
11313 support::token(&self.syntax, SyntaxKind::CONFLICT_KW)
11314 }
11315 #[inline]
11316 pub fn on_token(&self) -> Option<SyntaxToken> {
11317 support::token(&self.syntax, SyntaxKind::ON_KW)
11318 }
11319}
11320
11321#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11322pub struct OnDeleteAction {
11323 pub(crate) syntax: SyntaxNode,
11324}
11325impl OnDeleteAction {
11326 #[inline]
11327 pub fn ref_action(&self) -> Option<RefAction> {
11328 support::child(&self.syntax)
11329 }
11330 #[inline]
11331 pub fn delete_token(&self) -> Option<SyntaxToken> {
11332 support::token(&self.syntax, SyntaxKind::DELETE_KW)
11333 }
11334 #[inline]
11335 pub fn on_token(&self) -> Option<SyntaxToken> {
11336 support::token(&self.syntax, SyntaxKind::ON_KW)
11337 }
11338}
11339
11340#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11341pub struct OnTable {
11342 pub(crate) syntax: SyntaxNode,
11343}
11344impl OnTable {
11345 #[inline]
11346 pub fn path(&self) -> Option<Path> {
11347 support::child(&self.syntax)
11348 }
11349 #[inline]
11350 pub fn on_token(&self) -> Option<SyntaxToken> {
11351 support::token(&self.syntax, SyntaxKind::ON_KW)
11352 }
11353}
11354
11355#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11356pub struct OnUpdateAction {
11357 pub(crate) syntax: SyntaxNode,
11358}
11359impl OnUpdateAction {
11360 #[inline]
11361 pub fn ref_action(&self) -> Option<RefAction> {
11362 support::child(&self.syntax)
11363 }
11364 #[inline]
11365 pub fn on_token(&self) -> Option<SyntaxToken> {
11366 support::token(&self.syntax, SyntaxKind::ON_KW)
11367 }
11368 #[inline]
11369 pub fn update_token(&self) -> Option<SyntaxToken> {
11370 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
11371 }
11372}
11373
11374#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11375pub struct Op {
11376 pub(crate) syntax: SyntaxNode,
11377}
11378impl Op {
11379 #[inline]
11380 pub fn at_time_zone(&self) -> Option<AtTimeZone> {
11381 support::child(&self.syntax)
11382 }
11383 #[inline]
11384 pub fn colon_colon(&self) -> Option<ColonColon> {
11385 support::child(&self.syntax)
11386 }
11387 #[inline]
11388 pub fn colon_eq(&self) -> Option<ColonEq> {
11389 support::child(&self.syntax)
11390 }
11391 #[inline]
11392 pub fn custom_op(&self) -> Option<CustomOp> {
11393 support::child(&self.syntax)
11394 }
11395 #[inline]
11396 pub fn fat_arrow(&self) -> Option<FatArrow> {
11397 support::child(&self.syntax)
11398 }
11399 #[inline]
11400 pub fn gteq(&self) -> Option<Gteq> {
11401 support::child(&self.syntax)
11402 }
11403 #[inline]
11404 pub fn is_distinct_from(&self) -> Option<IsDistinctFrom> {
11405 support::child(&self.syntax)
11406 }
11407 #[inline]
11408 pub fn is_json(&self) -> Option<IsJson> {
11409 support::child(&self.syntax)
11410 }
11411 #[inline]
11412 pub fn is_json_array(&self) -> Option<IsJsonArray> {
11413 support::child(&self.syntax)
11414 }
11415 #[inline]
11416 pub fn is_json_object(&self) -> Option<IsJsonObject> {
11417 support::child(&self.syntax)
11418 }
11419 #[inline]
11420 pub fn is_json_scalar(&self) -> Option<IsJsonScalar> {
11421 support::child(&self.syntax)
11422 }
11423 #[inline]
11424 pub fn is_json_value(&self) -> Option<IsJsonValue> {
11425 support::child(&self.syntax)
11426 }
11427 #[inline]
11428 pub fn is_not(&self) -> Option<IsNot> {
11429 support::child(&self.syntax)
11430 }
11431 #[inline]
11432 pub fn is_not_distinct_from(&self) -> Option<IsNotDistinctFrom> {
11433 support::child(&self.syntax)
11434 }
11435 #[inline]
11436 pub fn is_not_json(&self) -> Option<IsNotJson> {
11437 support::child(&self.syntax)
11438 }
11439 #[inline]
11440 pub fn is_not_json_array(&self) -> Option<IsNotJsonArray> {
11441 support::child(&self.syntax)
11442 }
11443 #[inline]
11444 pub fn is_not_json_object(&self) -> Option<IsNotJsonObject> {
11445 support::child(&self.syntax)
11446 }
11447 #[inline]
11448 pub fn is_not_json_scalar(&self) -> Option<IsNotJsonScalar> {
11449 support::child(&self.syntax)
11450 }
11451 #[inline]
11452 pub fn is_not_json_value(&self) -> Option<IsNotJsonValue> {
11453 support::child(&self.syntax)
11454 }
11455 #[inline]
11456 pub fn lteq(&self) -> Option<Lteq> {
11457 support::child(&self.syntax)
11458 }
11459 #[inline]
11460 pub fn neq(&self) -> Option<Neq> {
11461 support::child(&self.syntax)
11462 }
11463 #[inline]
11464 pub fn neqb(&self) -> Option<Neqb> {
11465 support::child(&self.syntax)
11466 }
11467 #[inline]
11468 pub fn not_ilike(&self) -> Option<NotIlike> {
11469 support::child(&self.syntax)
11470 }
11471 #[inline]
11472 pub fn not_in(&self) -> Option<NotIn> {
11473 support::child(&self.syntax)
11474 }
11475 #[inline]
11476 pub fn not_like(&self) -> Option<NotLike> {
11477 support::child(&self.syntax)
11478 }
11479 #[inline]
11480 pub fn not_similar_to(&self) -> Option<NotSimilarTo> {
11481 support::child(&self.syntax)
11482 }
11483 #[inline]
11484 pub fn operator_call(&self) -> Option<OperatorCall> {
11485 support::child(&self.syntax)
11486 }
11487 #[inline]
11488 pub fn similar_to(&self) -> Option<SimilarTo> {
11489 support::child(&self.syntax)
11490 }
11491 #[inline]
11492 pub fn percent_token(&self) -> Option<SyntaxToken> {
11493 support::token(&self.syntax, SyntaxKind::PERCENT)
11494 }
11495 #[inline]
11496 pub fn plus_token(&self) -> Option<SyntaxToken> {
11497 support::token(&self.syntax, SyntaxKind::PLUS)
11498 }
11499 #[inline]
11500 pub fn minus_token(&self) -> Option<SyntaxToken> {
11501 support::token(&self.syntax, SyntaxKind::MINUS)
11502 }
11503 #[inline]
11504 pub fn slash_token(&self) -> Option<SyntaxToken> {
11505 support::token(&self.syntax, SyntaxKind::SLASH)
11506 }
11507 #[inline]
11508 pub fn colon_token(&self) -> Option<SyntaxToken> {
11509 support::token(&self.syntax, SyntaxKind::COLON)
11510 }
11511 #[inline]
11512 pub fn l_angle_token(&self) -> Option<SyntaxToken> {
11513 support::token(&self.syntax, SyntaxKind::L_ANGLE)
11514 }
11515 #[inline]
11516 pub fn eq_token(&self) -> Option<SyntaxToken> {
11517 support::token(&self.syntax, SyntaxKind::EQ)
11518 }
11519 #[inline]
11520 pub fn r_angle_token(&self) -> Option<SyntaxToken> {
11521 support::token(&self.syntax, SyntaxKind::R_ANGLE)
11522 }
11523 #[inline]
11524 pub fn caret_token(&self) -> Option<SyntaxToken> {
11525 support::token(&self.syntax, SyntaxKind::CARET)
11526 }
11527 #[inline]
11528 pub fn and_token(&self) -> Option<SyntaxToken> {
11529 support::token(&self.syntax, SyntaxKind::AND_KW)
11530 }
11531 #[inline]
11532 pub fn collate_token(&self) -> Option<SyntaxToken> {
11533 support::token(&self.syntax, SyntaxKind::COLLATE_KW)
11534 }
11535 #[inline]
11536 pub fn ilike_token(&self) -> Option<SyntaxToken> {
11537 support::token(&self.syntax, SyntaxKind::ILIKE_KW)
11538 }
11539 #[inline]
11540 pub fn in_token(&self) -> Option<SyntaxToken> {
11541 support::token(&self.syntax, SyntaxKind::IN_KW)
11542 }
11543 #[inline]
11544 pub fn is_token(&self) -> Option<SyntaxToken> {
11545 support::token(&self.syntax, SyntaxKind::IS_KW)
11546 }
11547 #[inline]
11548 pub fn like_token(&self) -> Option<SyntaxToken> {
11549 support::token(&self.syntax, SyntaxKind::LIKE_KW)
11550 }
11551 #[inline]
11552 pub fn or_token(&self) -> Option<SyntaxToken> {
11553 support::token(&self.syntax, SyntaxKind::OR_KW)
11554 }
11555 #[inline]
11556 pub fn overlaps_token(&self) -> Option<SyntaxToken> {
11557 support::token(&self.syntax, SyntaxKind::OVERLAPS_KW)
11558 }
11559 #[inline]
11560 pub fn value_token(&self) -> Option<SyntaxToken> {
11561 support::token(&self.syntax, SyntaxKind::VALUE_KW)
11562 }
11563}
11564
11565#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11566pub struct OpClassOption {
11567 pub(crate) syntax: SyntaxNode,
11568}
11569impl OpClassOption {
11570 #[inline]
11571 pub fn function_sig(&self) -> Option<FunctionSig> {
11572 support::child(&self.syntax)
11573 }
11574 #[inline]
11575 pub fn literal(&self) -> Option<Literal> {
11576 support::child(&self.syntax)
11577 }
11578 #[inline]
11579 pub fn op(&self) -> Option<Op> {
11580 support::child(&self.syntax)
11581 }
11582 #[inline]
11583 pub fn param_list(&self) -> Option<ParamList> {
11584 support::child(&self.syntax)
11585 }
11586 #[inline]
11587 pub fn path(&self) -> Option<Path> {
11588 support::child(&self.syntax)
11589 }
11590 #[inline]
11591 pub fn ty(&self) -> Option<Type> {
11592 support::child(&self.syntax)
11593 }
11594 #[inline]
11595 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11596 support::token(&self.syntax, SyntaxKind::L_PAREN)
11597 }
11598 #[inline]
11599 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11600 support::token(&self.syntax, SyntaxKind::R_PAREN)
11601 }
11602 #[inline]
11603 pub fn comma_token(&self) -> Option<SyntaxToken> {
11604 support::token(&self.syntax, SyntaxKind::COMMA)
11605 }
11606 #[inline]
11607 pub fn by_token(&self) -> Option<SyntaxToken> {
11608 support::token(&self.syntax, SyntaxKind::BY_KW)
11609 }
11610 #[inline]
11611 pub fn for_token(&self) -> Option<SyntaxToken> {
11612 support::token(&self.syntax, SyntaxKind::FOR_KW)
11613 }
11614 #[inline]
11615 pub fn function_token(&self) -> Option<SyntaxToken> {
11616 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
11617 }
11618 #[inline]
11619 pub fn operator_token(&self) -> Option<SyntaxToken> {
11620 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11621 }
11622 #[inline]
11623 pub fn order_token(&self) -> Option<SyntaxToken> {
11624 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11625 }
11626 #[inline]
11627 pub fn search_token(&self) -> Option<SyntaxToken> {
11628 support::token(&self.syntax, SyntaxKind::SEARCH_KW)
11629 }
11630 #[inline]
11631 pub fn storage_token(&self) -> Option<SyntaxToken> {
11632 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
11633 }
11634}
11635
11636#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11637pub struct OpSig {
11638 pub(crate) syntax: SyntaxNode,
11639}
11640impl OpSig {
11641 #[inline]
11642 pub fn op(&self) -> Option<Op> {
11643 support::child(&self.syntax)
11644 }
11645 #[inline]
11646 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11647 support::token(&self.syntax, SyntaxKind::L_PAREN)
11648 }
11649 #[inline]
11650 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11651 support::token(&self.syntax, SyntaxKind::R_PAREN)
11652 }
11653 #[inline]
11654 pub fn comma_token(&self) -> Option<SyntaxToken> {
11655 support::token(&self.syntax, SyntaxKind::COMMA)
11656 }
11657 #[inline]
11658 pub fn none_token(&self) -> Option<SyntaxToken> {
11659 support::token(&self.syntax, SyntaxKind::NONE_KW)
11660 }
11661}
11662
11663#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11664pub struct OpSigList {
11665 pub(crate) syntax: SyntaxNode,
11666}
11667impl OpSigList {
11668 #[inline]
11669 pub fn op_sigs(&self) -> AstChildren<OpSig> {
11670 support::children(&self.syntax)
11671 }
11672}
11673
11674#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11675pub struct OperatorCall {
11676 pub(crate) syntax: SyntaxNode,
11677}
11678impl OperatorCall {
11679 #[inline]
11680 pub fn op(&self) -> Option<Op> {
11681 support::child(&self.syntax)
11682 }
11683 #[inline]
11684 pub fn path(&self) -> Option<Path> {
11685 support::child(&self.syntax)
11686 }
11687 #[inline]
11688 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11689 support::token(&self.syntax, SyntaxKind::L_PAREN)
11690 }
11691 #[inline]
11692 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11693 support::token(&self.syntax, SyntaxKind::R_PAREN)
11694 }
11695 #[inline]
11696 pub fn dot_token(&self) -> Option<SyntaxToken> {
11697 support::token(&self.syntax, SyntaxKind::DOT)
11698 }
11699 #[inline]
11700 pub fn operator_token(&self) -> Option<SyntaxToken> {
11701 support::token(&self.syntax, SyntaxKind::OPERATOR_KW)
11702 }
11703}
11704
11705#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11706pub struct OperatorClassOptionList {
11707 pub(crate) syntax: SyntaxNode,
11708}
11709impl OperatorClassOptionList {
11710 #[inline]
11711 pub fn op_class_options(&self) -> AstChildren<OpClassOption> {
11712 support::children(&self.syntax)
11713 }
11714}
11715
11716#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11717pub struct OptionItem {
11718 pub(crate) syntax: SyntaxNode,
11719}
11720impl OptionItem {
11721 #[inline]
11722 pub fn expr(&self) -> Option<Expr> {
11723 support::child(&self.syntax)
11724 }
11725 #[inline]
11726 pub fn default_token(&self) -> Option<SyntaxToken> {
11727 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11728 }
11729}
11730
11731#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11732pub struct OptionItemList {
11733 pub(crate) syntax: SyntaxNode,
11734}
11735impl OptionItemList {
11736 #[inline]
11737 pub fn option_items(&self) -> AstChildren<OptionItem> {
11738 support::children(&self.syntax)
11739 }
11740 #[inline]
11741 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11742 support::token(&self.syntax, SyntaxKind::L_PAREN)
11743 }
11744 #[inline]
11745 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11746 support::token(&self.syntax, SyntaxKind::R_PAREN)
11747 }
11748}
11749
11750#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11751pub struct OrReplace {
11752 pub(crate) syntax: SyntaxNode,
11753}
11754impl OrReplace {
11755 #[inline]
11756 pub fn or_token(&self) -> Option<SyntaxToken> {
11757 support::token(&self.syntax, SyntaxKind::OR_KW)
11758 }
11759 #[inline]
11760 pub fn replace_token(&self) -> Option<SyntaxToken> {
11761 support::token(&self.syntax, SyntaxKind::REPLACE_KW)
11762 }
11763}
11764
11765#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11766pub struct OrderByClause {
11767 pub(crate) syntax: SyntaxNode,
11768}
11769impl OrderByClause {
11770 #[inline]
11771 pub fn sort_by_list(&self) -> Option<SortByList> {
11772 support::child(&self.syntax)
11773 }
11774 #[inline]
11775 pub fn by_token(&self) -> Option<SyntaxToken> {
11776 support::token(&self.syntax, SyntaxKind::BY_KW)
11777 }
11778 #[inline]
11779 pub fn order_token(&self) -> Option<SyntaxToken> {
11780 support::token(&self.syntax, SyntaxKind::ORDER_KW)
11781 }
11782}
11783
11784#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11785pub struct OverClause {
11786 pub(crate) syntax: SyntaxNode,
11787}
11788impl OverClause {
11789 #[inline]
11790 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11791 support::token(&self.syntax, SyntaxKind::L_PAREN)
11792 }
11793 #[inline]
11794 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11795 support::token(&self.syntax, SyntaxKind::R_PAREN)
11796 }
11797 #[inline]
11798 pub fn over_token(&self) -> Option<SyntaxToken> {
11799 support::token(&self.syntax, SyntaxKind::OVER_KW)
11800 }
11801}
11802
11803#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11804pub struct OverlayFn {
11805 pub(crate) syntax: SyntaxNode,
11806}
11807impl OverlayFn {
11808 #[inline]
11809 pub fn expr(&self) -> Option<Expr> {
11810 support::child(&self.syntax)
11811 }
11812 #[inline]
11813 pub fn exprs(&self) -> AstChildren<Expr> {
11814 support::children(&self.syntax)
11815 }
11816 #[inline]
11817 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
11818 support::token(&self.syntax, SyntaxKind::L_PAREN)
11819 }
11820 #[inline]
11821 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
11822 support::token(&self.syntax, SyntaxKind::R_PAREN)
11823 }
11824 #[inline]
11825 pub fn for_token(&self) -> Option<SyntaxToken> {
11826 support::token(&self.syntax, SyntaxKind::FOR_KW)
11827 }
11828 #[inline]
11829 pub fn from_token(&self) -> Option<SyntaxToken> {
11830 support::token(&self.syntax, SyntaxKind::FROM_KW)
11831 }
11832 #[inline]
11833 pub fn overlay_token(&self) -> Option<SyntaxToken> {
11834 support::token(&self.syntax, SyntaxKind::OVERLAY_KW)
11835 }
11836 #[inline]
11837 pub fn placing_token(&self) -> Option<SyntaxToken> {
11838 support::token(&self.syntax, SyntaxKind::PLACING_KW)
11839 }
11840}
11841
11842#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11843pub struct OwnedByRoles {
11844 pub(crate) syntax: SyntaxNode,
11845}
11846impl OwnedByRoles {
11847 #[inline]
11848 pub fn role_ref_list(&self) -> Option<RoleRefList> {
11849 support::child(&self.syntax)
11850 }
11851 #[inline]
11852 pub fn by_token(&self) -> Option<SyntaxToken> {
11853 support::token(&self.syntax, SyntaxKind::BY_KW)
11854 }
11855 #[inline]
11856 pub fn owned_token(&self) -> Option<SyntaxToken> {
11857 support::token(&self.syntax, SyntaxKind::OWNED_KW)
11858 }
11859}
11860
11861#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11862pub struct OwnerTo {
11863 pub(crate) syntax: SyntaxNode,
11864}
11865impl OwnerTo {
11866 #[inline]
11867 pub fn role_ref(&self) -> Option<RoleRef> {
11868 support::child(&self.syntax)
11869 }
11870 #[inline]
11871 pub fn owner_token(&self) -> Option<SyntaxToken> {
11872 support::token(&self.syntax, SyntaxKind::OWNER_KW)
11873 }
11874 #[inline]
11875 pub fn to_token(&self) -> Option<SyntaxToken> {
11876 support::token(&self.syntax, SyntaxKind::TO_KW)
11877 }
11878}
11879
11880#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11881pub struct ParallelFuncOption {
11882 pub(crate) syntax: SyntaxNode,
11883}
11884impl ParallelFuncOption {
11885 #[inline]
11886 pub fn ident_token(&self) -> Option<SyntaxToken> {
11887 support::token(&self.syntax, SyntaxKind::IDENT)
11888 }
11889 #[inline]
11890 pub fn parallel_token(&self) -> Option<SyntaxToken> {
11891 support::token(&self.syntax, SyntaxKind::PARALLEL_KW)
11892 }
11893}
11894
11895#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11896pub struct Param {
11897 pub(crate) syntax: SyntaxNode,
11898}
11899impl Param {
11900 #[inline]
11901 pub fn mode(&self) -> Option<ParamMode> {
11902 support::child(&self.syntax)
11903 }
11904 #[inline]
11905 pub fn name(&self) -> Option<Name> {
11906 support::child(&self.syntax)
11907 }
11908 #[inline]
11909 pub fn param_default(&self) -> Option<ParamDefault> {
11910 support::child(&self.syntax)
11911 }
11912 #[inline]
11913 pub fn ty(&self) -> Option<Type> {
11914 support::child(&self.syntax)
11915 }
11916}
11917
11918#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11919pub struct ParamDefault {
11920 pub(crate) syntax: SyntaxNode,
11921}
11922impl ParamDefault {
11923 #[inline]
11924 pub fn expr(&self) -> Option<Expr> {
11925 support::child(&self.syntax)
11926 }
11927 #[inline]
11928 pub fn eq_token(&self) -> Option<SyntaxToken> {
11929 support::token(&self.syntax, SyntaxKind::EQ)
11930 }
11931 #[inline]
11932 pub fn default_token(&self) -> Option<SyntaxToken> {
11933 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
11934 }
11935}
11936
11937#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11938pub struct ParamIn {
11939 pub(crate) syntax: SyntaxNode,
11940}
11941impl ParamIn {
11942 #[inline]
11943 pub fn in_token(&self) -> Option<SyntaxToken> {
11944 support::token(&self.syntax, SyntaxKind::IN_KW)
11945 }
11946}
11947
11948#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11949pub struct ParamInOut {
11950 pub(crate) syntax: SyntaxNode,
11951}
11952impl ParamInOut {
11953 #[inline]
11954 pub fn in_token(&self) -> Option<SyntaxToken> {
11955 support::token(&self.syntax, SyntaxKind::IN_KW)
11956 }
11957 #[inline]
11958 pub fn inout_token(&self) -> Option<SyntaxToken> {
11959 support::token(&self.syntax, SyntaxKind::INOUT_KW)
11960 }
11961 #[inline]
11962 pub fn out_token(&self) -> Option<SyntaxToken> {
11963 support::token(&self.syntax, SyntaxKind::OUT_KW)
11964 }
11965}
11966
11967#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11968pub struct ParamList {
11969 pub(crate) syntax: SyntaxNode,
11970}
11971impl ParamList {
11972 #[inline]
11973 pub fn params(&self) -> AstChildren<Param> {
11974 support::children(&self.syntax)
11975 }
11976}
11977
11978#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11979pub struct ParamOut {
11980 pub(crate) syntax: SyntaxNode,
11981}
11982impl ParamOut {
11983 #[inline]
11984 pub fn out_token(&self) -> Option<SyntaxToken> {
11985 support::token(&self.syntax, SyntaxKind::OUT_KW)
11986 }
11987}
11988
11989#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11990pub struct ParamVariadic {
11991 pub(crate) syntax: SyntaxNode,
11992}
11993impl ParamVariadic {
11994 #[inline]
11995 pub fn variadic_token(&self) -> Option<SyntaxToken> {
11996 support::token(&self.syntax, SyntaxKind::VARIADIC_KW)
11997 }
11998}
11999
12000#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12001pub struct ParenExpr {
12002 pub(crate) syntax: SyntaxNode,
12003}
12004impl ParenExpr {
12005 #[inline]
12006 pub fn expr(&self) -> Option<Expr> {
12007 support::child(&self.syntax)
12008 }
12009 #[inline]
12010 pub fn from_item(&self) -> Option<FromItem> {
12011 support::child(&self.syntax)
12012 }
12013 #[inline]
12014 pub fn select(&self) -> Option<Select> {
12015 support::child(&self.syntax)
12016 }
12017 #[inline]
12018 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12019 support::token(&self.syntax, SyntaxKind::L_PAREN)
12020 }
12021 #[inline]
12022 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12023 support::token(&self.syntax, SyntaxKind::R_PAREN)
12024 }
12025}
12026
12027#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12028pub struct ParenSelect {
12029 pub(crate) syntax: SyntaxNode,
12030}
12031impl ParenSelect {
12032 #[inline]
12033 pub fn select(&self) -> Option<SelectVariant> {
12034 support::child(&self.syntax)
12035 }
12036 #[inline]
12037 pub fn with_clause(&self) -> Option<WithClause> {
12038 support::child(&self.syntax)
12039 }
12040 #[inline]
12041 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12042 support::token(&self.syntax, SyntaxKind::L_PAREN)
12043 }
12044 #[inline]
12045 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12046 support::token(&self.syntax, SyntaxKind::R_PAREN)
12047 }
12048}
12049
12050#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12051pub struct Partition {
12052 pub(crate) syntax: SyntaxNode,
12053}
12054impl Partition {
12055 #[inline]
12056 pub fn partition_type(&self) -> Option<PartitionType> {
12057 support::child(&self.syntax)
12058 }
12059 #[inline]
12060 pub fn path(&self) -> Option<Path> {
12061 support::child(&self.syntax)
12062 }
12063 #[inline]
12064 pub fn partition_token(&self) -> Option<SyntaxToken> {
12065 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
12066 }
12067}
12068
12069#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12070pub struct PartitionBy {
12071 pub(crate) syntax: SyntaxNode,
12072}
12073impl PartitionBy {
12074 #[inline]
12075 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
12076 support::child(&self.syntax)
12077 }
12078 #[inline]
12079 pub fn by_token(&self) -> Option<SyntaxToken> {
12080 support::token(&self.syntax, SyntaxKind::BY_KW)
12081 }
12082 #[inline]
12083 pub fn ident_token(&self) -> Option<SyntaxToken> {
12084 support::token(&self.syntax, SyntaxKind::IDENT)
12085 }
12086 #[inline]
12087 pub fn partition_token(&self) -> Option<SyntaxToken> {
12088 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
12089 }
12090 #[inline]
12091 pub fn range_token(&self) -> Option<SyntaxToken> {
12092 support::token(&self.syntax, SyntaxKind::RANGE_KW)
12093 }
12094}
12095
12096#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12097pub struct PartitionDefault {
12098 pub(crate) syntax: SyntaxNode,
12099}
12100impl PartitionDefault {
12101 #[inline]
12102 pub fn default_token(&self) -> Option<SyntaxToken> {
12103 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
12104 }
12105}
12106
12107#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12108pub struct PartitionForValuesFrom {
12109 pub(crate) syntax: SyntaxNode,
12110}
12111impl PartitionForValuesFrom {
12112 #[inline]
12113 pub fn exprs(&self) -> AstChildren<Expr> {
12114 support::children(&self.syntax)
12115 }
12116 #[inline]
12117 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12118 support::token(&self.syntax, SyntaxKind::L_PAREN)
12119 }
12120 #[inline]
12121 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12122 support::token(&self.syntax, SyntaxKind::R_PAREN)
12123 }
12124 #[inline]
12125 pub fn for_token(&self) -> Option<SyntaxToken> {
12126 support::token(&self.syntax, SyntaxKind::FOR_KW)
12127 }
12128 #[inline]
12129 pub fn from_token(&self) -> Option<SyntaxToken> {
12130 support::token(&self.syntax, SyntaxKind::FROM_KW)
12131 }
12132 #[inline]
12133 pub fn to_token(&self) -> Option<SyntaxToken> {
12134 support::token(&self.syntax, SyntaxKind::TO_KW)
12135 }
12136 #[inline]
12137 pub fn values_token(&self) -> Option<SyntaxToken> {
12138 support::token(&self.syntax, SyntaxKind::VALUES_KW)
12139 }
12140}
12141
12142#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12143pub struct PartitionForValuesIn {
12144 pub(crate) syntax: SyntaxNode,
12145}
12146impl PartitionForValuesIn {
12147 #[inline]
12148 pub fn exprs(&self) -> AstChildren<Expr> {
12149 support::children(&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 for_token(&self) -> Option<SyntaxToken> {
12161 support::token(&self.syntax, SyntaxKind::FOR_KW)
12162 }
12163 #[inline]
12164 pub fn in_token(&self) -> Option<SyntaxToken> {
12165 support::token(&self.syntax, SyntaxKind::IN_KW)
12166 }
12167 #[inline]
12168 pub fn values_token(&self) -> Option<SyntaxToken> {
12169 support::token(&self.syntax, SyntaxKind::VALUES_KW)
12170 }
12171}
12172
12173#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12174pub struct PartitionForValuesWith {
12175 pub(crate) syntax: SyntaxNode,
12176}
12177impl PartitionForValuesWith {
12178 #[inline]
12179 pub fn literal(&self) -> Option<Literal> {
12180 support::child(&self.syntax)
12181 }
12182 #[inline]
12183 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12184 support::token(&self.syntax, SyntaxKind::L_PAREN)
12185 }
12186 #[inline]
12187 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12188 support::token(&self.syntax, SyntaxKind::R_PAREN)
12189 }
12190 #[inline]
12191 pub fn comma_token(&self) -> Option<SyntaxToken> {
12192 support::token(&self.syntax, SyntaxKind::COMMA)
12193 }
12194 #[inline]
12195 pub fn for_token(&self) -> Option<SyntaxToken> {
12196 support::token(&self.syntax, SyntaxKind::FOR_KW)
12197 }
12198 #[inline]
12199 pub fn ident_token(&self) -> Option<SyntaxToken> {
12200 support::token(&self.syntax, SyntaxKind::IDENT)
12201 }
12202 #[inline]
12203 pub fn values_token(&self) -> Option<SyntaxToken> {
12204 support::token(&self.syntax, SyntaxKind::VALUES_KW)
12205 }
12206 #[inline]
12207 pub fn with_token(&self) -> Option<SyntaxToken> {
12208 support::token(&self.syntax, SyntaxKind::WITH_KW)
12209 }
12210}
12211
12212#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12213pub struct PartitionItem {
12214 pub(crate) syntax: SyntaxNode,
12215}
12216impl PartitionItem {
12217 #[inline]
12218 pub fn collate(&self) -> Option<Collate> {
12219 support::child(&self.syntax)
12220 }
12221 #[inline]
12222 pub fn expr(&self) -> Option<Expr> {
12223 support::child(&self.syntax)
12224 }
12225}
12226
12227#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12228pub struct PartitionItemList {
12229 pub(crate) syntax: SyntaxNode,
12230}
12231impl PartitionItemList {
12232 #[inline]
12233 pub fn partition_items(&self) -> AstChildren<PartitionItem> {
12234 support::children(&self.syntax)
12235 }
12236 #[inline]
12237 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12238 support::token(&self.syntax, SyntaxKind::L_PAREN)
12239 }
12240 #[inline]
12241 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12242 support::token(&self.syntax, SyntaxKind::R_PAREN)
12243 }
12244}
12245
12246#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12247pub struct PartitionList {
12248 pub(crate) syntax: SyntaxNode,
12249}
12250impl PartitionList {
12251 #[inline]
12252 pub fn partitions(&self) -> AstChildren<Partition> {
12253 support::children(&self.syntax)
12254 }
12255 #[inline]
12256 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12257 support::token(&self.syntax, SyntaxKind::L_PAREN)
12258 }
12259 #[inline]
12260 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12261 support::token(&self.syntax, SyntaxKind::R_PAREN)
12262 }
12263}
12264
12265#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12266pub struct PartitionOf {
12267 pub(crate) syntax: SyntaxNode,
12268}
12269impl PartitionOf {
12270 #[inline]
12271 pub fn path(&self) -> Option<Path> {
12272 support::child(&self.syntax)
12273 }
12274 #[inline]
12275 pub fn of_token(&self) -> Option<SyntaxToken> {
12276 support::token(&self.syntax, SyntaxKind::OF_KW)
12277 }
12278 #[inline]
12279 pub fn partition_token(&self) -> Option<SyntaxToken> {
12280 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
12281 }
12282}
12283
12284#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12285pub struct Path {
12286 pub(crate) syntax: SyntaxNode,
12287}
12288impl Path {
12289 #[inline]
12290 pub fn qualifier(&self) -> Option<Path> {
12291 support::child(&self.syntax)
12292 }
12293 #[inline]
12294 pub fn segment(&self) -> Option<PathSegment> {
12295 support::child(&self.syntax)
12296 }
12297 #[inline]
12298 pub fn dot_token(&self) -> Option<SyntaxToken> {
12299 support::token(&self.syntax, SyntaxKind::DOT)
12300 }
12301}
12302
12303#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12304pub struct PathSegment {
12305 pub(crate) syntax: SyntaxNode,
12306}
12307impl PathSegment {
12308 #[inline]
12309 pub fn name(&self) -> Option<Name> {
12310 support::child(&self.syntax)
12311 }
12312 #[inline]
12313 pub fn name_ref(&self) -> Option<NameRef> {
12314 support::child(&self.syntax)
12315 }
12316}
12317
12318#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12319pub struct PathType {
12320 pub(crate) syntax: SyntaxNode,
12321}
12322impl PathType {
12323 #[inline]
12324 pub fn arg_list(&self) -> Option<ArgList> {
12325 support::child(&self.syntax)
12326 }
12327 #[inline]
12328 pub fn path(&self) -> Option<Path> {
12329 support::child(&self.syntax)
12330 }
12331}
12332
12333#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12334pub struct PercentType {
12335 pub(crate) syntax: SyntaxNode,
12336}
12337impl PercentType {
12338 #[inline]
12339 pub fn percent_token(&self) -> Option<SyntaxToken> {
12340 support::token(&self.syntax, SyntaxKind::PERCENT)
12341 }
12342 #[inline]
12343 pub fn type_token(&self) -> Option<SyntaxToken> {
12344 support::token(&self.syntax, SyntaxKind::TYPE_KW)
12345 }
12346}
12347
12348#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12349pub struct PercentTypeClause {
12350 pub(crate) syntax: SyntaxNode,
12351}
12352impl PercentTypeClause {
12353 #[inline]
12354 pub fn path(&self) -> Option<Path> {
12355 support::child(&self.syntax)
12356 }
12357 #[inline]
12358 pub fn percent_type_clause(&self) -> Option<PercentTypeClause> {
12359 support::child(&self.syntax)
12360 }
12361}
12362
12363#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12364pub struct PositionFn {
12365 pub(crate) syntax: SyntaxNode,
12366}
12367impl PositionFn {
12368 #[inline]
12369 pub fn expr(&self) -> Option<Expr> {
12370 support::child(&self.syntax)
12371 }
12372 #[inline]
12373 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12374 support::token(&self.syntax, SyntaxKind::L_PAREN)
12375 }
12376 #[inline]
12377 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12378 support::token(&self.syntax, SyntaxKind::R_PAREN)
12379 }
12380 #[inline]
12381 pub fn in_token(&self) -> Option<SyntaxToken> {
12382 support::token(&self.syntax, SyntaxKind::IN_KW)
12383 }
12384 #[inline]
12385 pub fn position_token(&self) -> Option<SyntaxToken> {
12386 support::token(&self.syntax, SyntaxKind::POSITION_KW)
12387 }
12388}
12389
12390#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12391pub struct PostfixExpr {
12392 pub(crate) syntax: SyntaxNode,
12393}
12394impl PostfixExpr {
12395 #[inline]
12396 pub fn expr(&self) -> Option<Expr> {
12397 support::child(&self.syntax)
12398 }
12399}
12400
12401#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12402pub struct PrefixExpr {
12403 pub(crate) syntax: SyntaxNode,
12404}
12405impl PrefixExpr {
12406 #[inline]
12407 pub fn expr(&self) -> Option<Expr> {
12408 support::child(&self.syntax)
12409 }
12410}
12411
12412#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12413pub struct Prepare {
12414 pub(crate) syntax: SyntaxNode,
12415}
12416impl Prepare {
12417 #[inline]
12418 pub fn name(&self) -> Option<Name> {
12419 support::child(&self.syntax)
12420 }
12421 #[inline]
12422 pub fn preparable_stmt(&self) -> Option<PreparableStmt> {
12423 support::child(&self.syntax)
12424 }
12425 #[inline]
12426 pub fn as_token(&self) -> Option<SyntaxToken> {
12427 support::token(&self.syntax, SyntaxKind::AS_KW)
12428 }
12429 #[inline]
12430 pub fn prepare_token(&self) -> Option<SyntaxToken> {
12431 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
12432 }
12433}
12434
12435#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12436pub struct PrepareTransaction {
12437 pub(crate) syntax: SyntaxNode,
12438}
12439impl PrepareTransaction {
12440 #[inline]
12441 pub fn literal(&self) -> Option<Literal> {
12442 support::child(&self.syntax)
12443 }
12444 #[inline]
12445 pub fn prepare_token(&self) -> Option<SyntaxToken> {
12446 support::token(&self.syntax, SyntaxKind::PREPARE_KW)
12447 }
12448 #[inline]
12449 pub fn transaction_token(&self) -> Option<SyntaxToken> {
12450 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
12451 }
12452}
12453
12454#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12455pub struct PreserveRows {
12456 pub(crate) syntax: SyntaxNode,
12457}
12458impl PreserveRows {
12459 #[inline]
12460 pub fn preserve_token(&self) -> Option<SyntaxToken> {
12461 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
12462 }
12463 #[inline]
12464 pub fn rows_token(&self) -> Option<SyntaxToken> {
12465 support::token(&self.syntax, SyntaxKind::ROWS_KW)
12466 }
12467}
12468
12469#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12470pub struct PrimaryKeyConstraint {
12471 pub(crate) syntax: SyntaxNode,
12472}
12473impl PrimaryKeyConstraint {
12474 #[inline]
12475 pub fn column_list(&self) -> Option<ColumnList> {
12476 support::child(&self.syntax)
12477 }
12478 #[inline]
12479 pub fn constraint_name(&self) -> Option<ConstraintName> {
12480 support::child(&self.syntax)
12481 }
12482 #[inline]
12483 pub fn partition_item_list(&self) -> Option<PartitionItemList> {
12484 support::child(&self.syntax)
12485 }
12486 #[inline]
12487 pub fn using_index(&self) -> Option<UsingIndex> {
12488 support::child(&self.syntax)
12489 }
12490 #[inline]
12491 pub fn key_token(&self) -> Option<SyntaxToken> {
12492 support::token(&self.syntax, SyntaxKind::KEY_KW)
12493 }
12494 #[inline]
12495 pub fn primary_token(&self) -> Option<SyntaxToken> {
12496 support::token(&self.syntax, SyntaxKind::PRIMARY_KW)
12497 }
12498}
12499
12500#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12501pub struct PrivilegeTarget {
12502 pub(crate) syntax: SyntaxNode,
12503}
12504impl PrivilegeTarget {
12505 #[inline]
12506 pub fn functions_token(&self) -> Option<SyntaxToken> {
12507 support::token(&self.syntax, SyntaxKind::FUNCTIONS_KW)
12508 }
12509 #[inline]
12510 pub fn large_token(&self) -> Option<SyntaxToken> {
12511 support::token(&self.syntax, SyntaxKind::LARGE_KW)
12512 }
12513 #[inline]
12514 pub fn objects_token(&self) -> Option<SyntaxToken> {
12515 support::token(&self.syntax, SyntaxKind::OBJECTS_KW)
12516 }
12517 #[inline]
12518 pub fn routines_token(&self) -> Option<SyntaxToken> {
12519 support::token(&self.syntax, SyntaxKind::ROUTINES_KW)
12520 }
12521 #[inline]
12522 pub fn schemas_token(&self) -> Option<SyntaxToken> {
12523 support::token(&self.syntax, SyntaxKind::SCHEMAS_KW)
12524 }
12525 #[inline]
12526 pub fn sequences_token(&self) -> Option<SyntaxToken> {
12527 support::token(&self.syntax, SyntaxKind::SEQUENCES_KW)
12528 }
12529 #[inline]
12530 pub fn tables_token(&self) -> Option<SyntaxToken> {
12531 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12532 }
12533 #[inline]
12534 pub fn types_token(&self) -> Option<SyntaxToken> {
12535 support::token(&self.syntax, SyntaxKind::TYPES_KW)
12536 }
12537}
12538
12539#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12540pub struct Privileges {
12541 pub(crate) syntax: SyntaxNode,
12542}
12543impl Privileges {
12544 #[inline]
12545 pub fn column_list(&self) -> Option<ColumnList> {
12546 support::child(&self.syntax)
12547 }
12548 #[inline]
12549 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
12550 support::child(&self.syntax)
12551 }
12552 #[inline]
12553 pub fn all_token(&self) -> Option<SyntaxToken> {
12554 support::token(&self.syntax, SyntaxKind::ALL_KW)
12555 }
12556 #[inline]
12557 pub fn privileges_token(&self) -> Option<SyntaxToken> {
12558 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
12559 }
12560}
12561
12562#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12563pub struct PublicationObject {
12564 pub(crate) syntax: SyntaxNode,
12565}
12566impl PublicationObject {
12567 #[inline]
12568 pub fn column_list(&self) -> Option<ColumnList> {
12569 support::child(&self.syntax)
12570 }
12571 #[inline]
12572 pub fn name_ref(&self) -> Option<NameRef> {
12573 support::child(&self.syntax)
12574 }
12575 #[inline]
12576 pub fn path(&self) -> Option<Path> {
12577 support::child(&self.syntax)
12578 }
12579 #[inline]
12580 pub fn where_condition_clause(&self) -> Option<WhereConditionClause> {
12581 support::child(&self.syntax)
12582 }
12583 #[inline]
12584 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12585 support::token(&self.syntax, SyntaxKind::L_PAREN)
12586 }
12587 #[inline]
12588 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12589 support::token(&self.syntax, SyntaxKind::R_PAREN)
12590 }
12591 #[inline]
12592 pub fn star_token(&self) -> Option<SyntaxToken> {
12593 support::token(&self.syntax, SyntaxKind::STAR)
12594 }
12595 #[inline]
12596 pub fn current_schema_token(&self) -> Option<SyntaxToken> {
12597 support::token(&self.syntax, SyntaxKind::CURRENT_SCHEMA_KW)
12598 }
12599 #[inline]
12600 pub fn in_token(&self) -> Option<SyntaxToken> {
12601 support::token(&self.syntax, SyntaxKind::IN_KW)
12602 }
12603 #[inline]
12604 pub fn only_token(&self) -> Option<SyntaxToken> {
12605 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12606 }
12607 #[inline]
12608 pub fn schema_token(&self) -> Option<SyntaxToken> {
12609 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12610 }
12611 #[inline]
12612 pub fn table_token(&self) -> Option<SyntaxToken> {
12613 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12614 }
12615 #[inline]
12616 pub fn tables_token(&self) -> Option<SyntaxToken> {
12617 support::token(&self.syntax, SyntaxKind::TABLES_KW)
12618 }
12619}
12620
12621#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12622pub struct ReadCommitted {
12623 pub(crate) syntax: SyntaxNode,
12624}
12625impl ReadCommitted {
12626 #[inline]
12627 pub fn committed_token(&self) -> Option<SyntaxToken> {
12628 support::token(&self.syntax, SyntaxKind::COMMITTED_KW)
12629 }
12630 #[inline]
12631 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12632 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12633 }
12634 #[inline]
12635 pub fn level_token(&self) -> Option<SyntaxToken> {
12636 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12637 }
12638 #[inline]
12639 pub fn read_token(&self) -> Option<SyntaxToken> {
12640 support::token(&self.syntax, SyntaxKind::READ_KW)
12641 }
12642}
12643
12644#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12645pub struct ReadOnly {
12646 pub(crate) syntax: SyntaxNode,
12647}
12648impl ReadOnly {
12649 #[inline]
12650 pub fn only_token(&self) -> Option<SyntaxToken> {
12651 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12652 }
12653 #[inline]
12654 pub fn read_token(&self) -> Option<SyntaxToken> {
12655 support::token(&self.syntax, SyntaxKind::READ_KW)
12656 }
12657}
12658
12659#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12660pub struct ReadUncommitted {
12661 pub(crate) syntax: SyntaxNode,
12662}
12663impl ReadUncommitted {
12664 #[inline]
12665 pub fn isolation_token(&self) -> Option<SyntaxToken> {
12666 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
12667 }
12668 #[inline]
12669 pub fn level_token(&self) -> Option<SyntaxToken> {
12670 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
12671 }
12672 #[inline]
12673 pub fn read_token(&self) -> Option<SyntaxToken> {
12674 support::token(&self.syntax, SyntaxKind::READ_KW)
12675 }
12676 #[inline]
12677 pub fn uncommitted_token(&self) -> Option<SyntaxToken> {
12678 support::token(&self.syntax, SyntaxKind::UNCOMMITTED_KW)
12679 }
12680}
12681
12682#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12683pub struct ReadWrite {
12684 pub(crate) syntax: SyntaxNode,
12685}
12686impl ReadWrite {
12687 #[inline]
12688 pub fn read_token(&self) -> Option<SyntaxToken> {
12689 support::token(&self.syntax, SyntaxKind::READ_KW)
12690 }
12691 #[inline]
12692 pub fn write_token(&self) -> Option<SyntaxToken> {
12693 support::token(&self.syntax, SyntaxKind::WRITE_KW)
12694 }
12695}
12696
12697#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12698pub struct Reassign {
12699 pub(crate) syntax: SyntaxNode,
12700}
12701impl Reassign {
12702 #[inline]
12703 pub fn new_roles(&self) -> Option<RoleRefList> {
12704 support::child(&self.syntax)
12705 }
12706 #[inline]
12707 pub fn old_roles(&self) -> Option<RoleRefList> {
12708 support::child(&self.syntax)
12709 }
12710 #[inline]
12711 pub fn by_token(&self) -> Option<SyntaxToken> {
12712 support::token(&self.syntax, SyntaxKind::BY_KW)
12713 }
12714 #[inline]
12715 pub fn owned_token(&self) -> Option<SyntaxToken> {
12716 support::token(&self.syntax, SyntaxKind::OWNED_KW)
12717 }
12718 #[inline]
12719 pub fn reassign_token(&self) -> Option<SyntaxToken> {
12720 support::token(&self.syntax, SyntaxKind::REASSIGN_KW)
12721 }
12722 #[inline]
12723 pub fn to_token(&self) -> Option<SyntaxToken> {
12724 support::token(&self.syntax, SyntaxKind::TO_KW)
12725 }
12726}
12727
12728#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12729pub struct ReferencesConstraint {
12730 pub(crate) syntax: SyntaxNode,
12731}
12732impl ReferencesConstraint {
12733 #[inline]
12734 pub fn column(&self) -> Option<NameRef> {
12735 support::child(&self.syntax)
12736 }
12737 #[inline]
12738 pub fn constraint_name(&self) -> Option<ConstraintName> {
12739 support::child(&self.syntax)
12740 }
12741 #[inline]
12742 pub fn match_type(&self) -> Option<MatchType> {
12743 support::child(&self.syntax)
12744 }
12745 #[inline]
12746 pub fn on_delete_action(&self) -> Option<OnDeleteAction> {
12747 support::child(&self.syntax)
12748 }
12749 #[inline]
12750 pub fn on_update_action(&self) -> Option<OnUpdateAction> {
12751 support::child(&self.syntax)
12752 }
12753 #[inline]
12754 pub fn table(&self) -> Option<Path> {
12755 support::child(&self.syntax)
12756 }
12757 #[inline]
12758 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
12759 support::token(&self.syntax, SyntaxKind::L_PAREN)
12760 }
12761 #[inline]
12762 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
12763 support::token(&self.syntax, SyntaxKind::R_PAREN)
12764 }
12765 #[inline]
12766 pub fn references_token(&self) -> Option<SyntaxToken> {
12767 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
12768 }
12769}
12770
12771#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12772pub struct Referencing {
12773 pub(crate) syntax: SyntaxNode,
12774}
12775impl Referencing {
12776 #[inline]
12777 pub fn referencing_tables(&self) -> AstChildren<ReferencingTable> {
12778 support::children(&self.syntax)
12779 }
12780 #[inline]
12781 pub fn referencing_token(&self) -> Option<SyntaxToken> {
12782 support::token(&self.syntax, SyntaxKind::REFERENCING_KW)
12783 }
12784}
12785
12786#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12787pub struct ReferencingTable {
12788 pub(crate) syntax: SyntaxNode,
12789}
12790impl ReferencingTable {
12791 #[inline]
12792 pub fn name_ref(&self) -> Option<NameRef> {
12793 support::child(&self.syntax)
12794 }
12795 #[inline]
12796 pub fn as_token(&self) -> Option<SyntaxToken> {
12797 support::token(&self.syntax, SyntaxKind::AS_KW)
12798 }
12799 #[inline]
12800 pub fn new_token(&self) -> Option<SyntaxToken> {
12801 support::token(&self.syntax, SyntaxKind::NEW_KW)
12802 }
12803 #[inline]
12804 pub fn old_token(&self) -> Option<SyntaxToken> {
12805 support::token(&self.syntax, SyntaxKind::OLD_KW)
12806 }
12807 #[inline]
12808 pub fn table_token(&self) -> Option<SyntaxToken> {
12809 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12810 }
12811}
12812
12813#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12814pub struct Refresh {
12815 pub(crate) syntax: SyntaxNode,
12816}
12817impl Refresh {
12818 #[inline]
12819 pub fn path(&self) -> Option<Path> {
12820 support::child(&self.syntax)
12821 }
12822 #[inline]
12823 pub fn with_data(&self) -> Option<WithData> {
12824 support::child(&self.syntax)
12825 }
12826 #[inline]
12827 pub fn with_no_data(&self) -> Option<WithNoData> {
12828 support::child(&self.syntax)
12829 }
12830 #[inline]
12831 pub fn concurrently_token(&self) -> Option<SyntaxToken> {
12832 support::token(&self.syntax, SyntaxKind::CONCURRENTLY_KW)
12833 }
12834 #[inline]
12835 pub fn materialized_token(&self) -> Option<SyntaxToken> {
12836 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
12837 }
12838 #[inline]
12839 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12840 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12841 }
12842 #[inline]
12843 pub fn view_token(&self) -> Option<SyntaxToken> {
12844 support::token(&self.syntax, SyntaxKind::VIEW_KW)
12845 }
12846}
12847
12848#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12849pub struct RefreshCollationVersion {
12850 pub(crate) syntax: SyntaxNode,
12851}
12852impl RefreshCollationVersion {
12853 #[inline]
12854 pub fn collation_token(&self) -> Option<SyntaxToken> {
12855 support::token(&self.syntax, SyntaxKind::COLLATION_KW)
12856 }
12857 #[inline]
12858 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12859 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12860 }
12861 #[inline]
12862 pub fn version_token(&self) -> Option<SyntaxToken> {
12863 support::token(&self.syntax, SyntaxKind::VERSION_KW)
12864 }
12865}
12866
12867#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12868pub struct RefreshVersion {
12869 pub(crate) syntax: SyntaxNode,
12870}
12871impl RefreshVersion {
12872 #[inline]
12873 pub fn refresh_token(&self) -> Option<SyntaxToken> {
12874 support::token(&self.syntax, SyntaxKind::REFRESH_KW)
12875 }
12876 #[inline]
12877 pub fn version_token(&self) -> Option<SyntaxToken> {
12878 support::token(&self.syntax, SyntaxKind::VERSION_KW)
12879 }
12880}
12881
12882#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12883pub struct Reindex {
12884 pub(crate) syntax: SyntaxNode,
12885}
12886impl Reindex {
12887 #[inline]
12888 pub fn path(&self) -> Option<Path> {
12889 support::child(&self.syntax)
12890 }
12891 #[inline]
12892 pub fn database_token(&self) -> Option<SyntaxToken> {
12893 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
12894 }
12895 #[inline]
12896 pub fn index_token(&self) -> Option<SyntaxToken> {
12897 support::token(&self.syntax, SyntaxKind::INDEX_KW)
12898 }
12899 #[inline]
12900 pub fn reindex_token(&self) -> Option<SyntaxToken> {
12901 support::token(&self.syntax, SyntaxKind::REINDEX_KW)
12902 }
12903 #[inline]
12904 pub fn schema_token(&self) -> Option<SyntaxToken> {
12905 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
12906 }
12907 #[inline]
12908 pub fn system_token(&self) -> Option<SyntaxToken> {
12909 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
12910 }
12911 #[inline]
12912 pub fn table_token(&self) -> Option<SyntaxToken> {
12913 support::token(&self.syntax, SyntaxKind::TABLE_KW)
12914 }
12915}
12916
12917#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12918pub struct RelationName {
12919 pub(crate) syntax: SyntaxNode,
12920}
12921impl RelationName {
12922 #[inline]
12923 pub fn path(&self) -> Option<Path> {
12924 support::child(&self.syntax)
12925 }
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 star_token(&self) -> Option<SyntaxToken> {
12936 support::token(&self.syntax, SyntaxKind::STAR)
12937 }
12938 #[inline]
12939 pub fn only_token(&self) -> Option<SyntaxToken> {
12940 support::token(&self.syntax, SyntaxKind::ONLY_KW)
12941 }
12942}
12943
12944#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12945pub struct ReleaseSavepoint {
12946 pub(crate) syntax: SyntaxNode,
12947}
12948impl ReleaseSavepoint {
12949 #[inline]
12950 pub fn name_ref(&self) -> Option<NameRef> {
12951 support::child(&self.syntax)
12952 }
12953 #[inline]
12954 pub fn release_token(&self) -> Option<SyntaxToken> {
12955 support::token(&self.syntax, SyntaxKind::RELEASE_KW)
12956 }
12957 #[inline]
12958 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
12959 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
12960 }
12961}
12962
12963#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12964pub struct RenameColumn {
12965 pub(crate) syntax: SyntaxNode,
12966}
12967impl RenameColumn {
12968 #[inline]
12969 pub fn column_token(&self) -> Option<SyntaxToken> {
12970 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
12971 }
12972 #[inline]
12973 pub fn rename_token(&self) -> Option<SyntaxToken> {
12974 support::token(&self.syntax, SyntaxKind::RENAME_KW)
12975 }
12976 #[inline]
12977 pub fn to_token(&self) -> Option<SyntaxToken> {
12978 support::token(&self.syntax, SyntaxKind::TO_KW)
12979 }
12980}
12981
12982#[derive(Debug, Clone, PartialEq, Eq, Hash)]
12983pub struct RenameConstraint {
12984 pub(crate) syntax: SyntaxNode,
12985}
12986impl RenameConstraint {
12987 #[inline]
12988 pub fn name(&self) -> Option<Name> {
12989 support::child(&self.syntax)
12990 }
12991 #[inline]
12992 pub fn name_ref(&self) -> Option<NameRef> {
12993 support::child(&self.syntax)
12994 }
12995 #[inline]
12996 pub fn constraint_token(&self) -> Option<SyntaxToken> {
12997 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
12998 }
12999 #[inline]
13000 pub fn rename_token(&self) -> Option<SyntaxToken> {
13001 support::token(&self.syntax, SyntaxKind::RENAME_KW)
13002 }
13003 #[inline]
13004 pub fn to_token(&self) -> Option<SyntaxToken> {
13005 support::token(&self.syntax, SyntaxKind::TO_KW)
13006 }
13007}
13008
13009#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13010pub struct RenameTo {
13011 pub(crate) syntax: SyntaxNode,
13012}
13013impl RenameTo {
13014 #[inline]
13015 pub fn name(&self) -> Option<Name> {
13016 support::child(&self.syntax)
13017 }
13018 #[inline]
13019 pub fn rename_token(&self) -> Option<SyntaxToken> {
13020 support::token(&self.syntax, SyntaxKind::RENAME_KW)
13021 }
13022 #[inline]
13023 pub fn to_token(&self) -> Option<SyntaxToken> {
13024 support::token(&self.syntax, SyntaxKind::TO_KW)
13025 }
13026}
13027
13028#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13029pub struct RepeatableClause {
13030 pub(crate) syntax: SyntaxNode,
13031}
13032impl RepeatableClause {
13033 #[inline]
13034 pub fn expr(&self) -> Option<Expr> {
13035 support::child(&self.syntax)
13036 }
13037 #[inline]
13038 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13039 support::token(&self.syntax, SyntaxKind::L_PAREN)
13040 }
13041 #[inline]
13042 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13043 support::token(&self.syntax, SyntaxKind::R_PAREN)
13044 }
13045 #[inline]
13046 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
13047 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
13048 }
13049}
13050
13051#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13052pub struct RepeatableRead {
13053 pub(crate) syntax: SyntaxNode,
13054}
13055impl RepeatableRead {
13056 #[inline]
13057 pub fn isolation_token(&self) -> Option<SyntaxToken> {
13058 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
13059 }
13060 #[inline]
13061 pub fn level_token(&self) -> Option<SyntaxToken> {
13062 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
13063 }
13064 #[inline]
13065 pub fn read_token(&self) -> Option<SyntaxToken> {
13066 support::token(&self.syntax, SyntaxKind::READ_KW)
13067 }
13068 #[inline]
13069 pub fn repeatable_token(&self) -> Option<SyntaxToken> {
13070 support::token(&self.syntax, SyntaxKind::REPEATABLE_KW)
13071 }
13072}
13073
13074#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13075pub struct ReplicaIdentity {
13076 pub(crate) syntax: SyntaxNode,
13077}
13078impl ReplicaIdentity {
13079 #[inline]
13080 pub fn identity_token(&self) -> Option<SyntaxToken> {
13081 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
13082 }
13083 #[inline]
13084 pub fn replica_token(&self) -> Option<SyntaxToken> {
13085 support::token(&self.syntax, SyntaxKind::REPLICA_KW)
13086 }
13087}
13088
13089#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13090pub struct Reset {
13091 pub(crate) syntax: SyntaxNode,
13092}
13093impl Reset {
13094 #[inline]
13095 pub fn name_ref(&self) -> Option<NameRef> {
13096 support::child(&self.syntax)
13097 }
13098 #[inline]
13099 pub fn all_token(&self) -> Option<SyntaxToken> {
13100 support::token(&self.syntax, SyntaxKind::ALL_KW)
13101 }
13102 #[inline]
13103 pub fn reset_token(&self) -> Option<SyntaxToken> {
13104 support::token(&self.syntax, SyntaxKind::RESET_KW)
13105 }
13106}
13107
13108#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13109pub struct ResetConfigParam {
13110 pub(crate) syntax: SyntaxNode,
13111}
13112impl ResetConfigParam {
13113 #[inline]
13114 pub fn path(&self) -> Option<Path> {
13115 support::child(&self.syntax)
13116 }
13117 #[inline]
13118 pub fn all_token(&self) -> Option<SyntaxToken> {
13119 support::token(&self.syntax, SyntaxKind::ALL_KW)
13120 }
13121 #[inline]
13122 pub fn reset_token(&self) -> Option<SyntaxToken> {
13123 support::token(&self.syntax, SyntaxKind::RESET_KW)
13124 }
13125}
13126
13127#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13128pub struct ResetFuncOption {
13129 pub(crate) syntax: SyntaxNode,
13130}
13131impl ResetFuncOption {
13132 #[inline]
13133 pub fn name_ref(&self) -> Option<NameRef> {
13134 support::child(&self.syntax)
13135 }
13136 #[inline]
13137 pub fn reset_token(&self) -> Option<SyntaxToken> {
13138 support::token(&self.syntax, SyntaxKind::RESET_KW)
13139 }
13140}
13141
13142#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13143pub struct ResetOptions {
13144 pub(crate) syntax: SyntaxNode,
13145}
13146impl ResetOptions {
13147 #[inline]
13148 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13149 support::token(&self.syntax, SyntaxKind::L_PAREN)
13150 }
13151 #[inline]
13152 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13153 support::token(&self.syntax, SyntaxKind::R_PAREN)
13154 }
13155 #[inline]
13156 pub fn reset_token(&self) -> Option<SyntaxToken> {
13157 support::token(&self.syntax, SyntaxKind::RESET_KW)
13158 }
13159}
13160
13161#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13162pub struct ResetSessionAuth {
13163 pub(crate) syntax: SyntaxNode,
13164}
13165impl ResetSessionAuth {
13166 #[inline]
13167 pub fn authorization_token(&self) -> Option<SyntaxToken> {
13168 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
13169 }
13170 #[inline]
13171 pub fn reset_token(&self) -> Option<SyntaxToken> {
13172 support::token(&self.syntax, SyntaxKind::RESET_KW)
13173 }
13174 #[inline]
13175 pub fn session_token(&self) -> Option<SyntaxToken> {
13176 support::token(&self.syntax, SyntaxKind::SESSION_KW)
13177 }
13178}
13179
13180#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13181pub struct Restart {
13182 pub(crate) syntax: SyntaxNode,
13183}
13184impl Restart {
13185 #[inline]
13186 pub fn restart_token(&self) -> Option<SyntaxToken> {
13187 support::token(&self.syntax, SyntaxKind::RESTART_KW)
13188 }
13189 #[inline]
13190 pub fn with_token(&self) -> Option<SyntaxToken> {
13191 support::token(&self.syntax, SyntaxKind::WITH_KW)
13192 }
13193}
13194
13195#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13196pub struct Restrict {
13197 pub(crate) syntax: SyntaxNode,
13198}
13199impl Restrict {
13200 #[inline]
13201 pub fn restrict_token(&self) -> Option<SyntaxToken> {
13202 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
13203 }
13204}
13205
13206#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13207pub struct RetType {
13208 pub(crate) syntax: SyntaxNode,
13209}
13210impl RetType {
13211 #[inline]
13212 pub fn table_arg_list(&self) -> Option<TableArgList> {
13213 support::child(&self.syntax)
13214 }
13215 #[inline]
13216 pub fn ty(&self) -> Option<Type> {
13217 support::child(&self.syntax)
13218 }
13219 #[inline]
13220 pub fn returns_token(&self) -> Option<SyntaxToken> {
13221 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
13222 }
13223 #[inline]
13224 pub fn table_token(&self) -> Option<SyntaxToken> {
13225 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13226 }
13227}
13228
13229#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13230pub struct ReturnFuncOption {
13231 pub(crate) syntax: SyntaxNode,
13232}
13233impl ReturnFuncOption {
13234 #[inline]
13235 pub fn expr(&self) -> Option<Expr> {
13236 support::child(&self.syntax)
13237 }
13238 #[inline]
13239 pub fn return_token(&self) -> Option<SyntaxToken> {
13240 support::token(&self.syntax, SyntaxKind::RETURN_KW)
13241 }
13242}
13243
13244#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13245pub struct ReturningClause {
13246 pub(crate) syntax: SyntaxNode,
13247}
13248impl ReturningClause {
13249 #[inline]
13250 pub fn returning_option_list(&self) -> Option<ReturningOptionList> {
13251 support::child(&self.syntax)
13252 }
13253 #[inline]
13254 pub fn target_list(&self) -> Option<TargetList> {
13255 support::child(&self.syntax)
13256 }
13257 #[inline]
13258 pub fn returning_token(&self) -> Option<SyntaxToken> {
13259 support::token(&self.syntax, SyntaxKind::RETURNING_KW)
13260 }
13261}
13262
13263#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13264pub struct ReturningOption {
13265 pub(crate) syntax: SyntaxNode,
13266}
13267impl ReturningOption {
13268 #[inline]
13269 pub fn name(&self) -> Option<Name> {
13270 support::child(&self.syntax)
13271 }
13272 #[inline]
13273 pub fn as_token(&self) -> Option<SyntaxToken> {
13274 support::token(&self.syntax, SyntaxKind::AS_KW)
13275 }
13276 #[inline]
13277 pub fn new_token(&self) -> Option<SyntaxToken> {
13278 support::token(&self.syntax, SyntaxKind::NEW_KW)
13279 }
13280 #[inline]
13281 pub fn old_token(&self) -> Option<SyntaxToken> {
13282 support::token(&self.syntax, SyntaxKind::OLD_KW)
13283 }
13284}
13285
13286#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13287pub struct ReturningOptionList {
13288 pub(crate) syntax: SyntaxNode,
13289}
13290impl ReturningOptionList {
13291 #[inline]
13292 pub fn returning_options(&self) -> AstChildren<ReturningOption> {
13293 support::children(&self.syntax)
13294 }
13295 #[inline]
13296 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
13297 support::token(&self.syntax, SyntaxKind::L_PAREN)
13298 }
13299 #[inline]
13300 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
13301 support::token(&self.syntax, SyntaxKind::R_PAREN)
13302 }
13303 #[inline]
13304 pub fn with_token(&self) -> Option<SyntaxToken> {
13305 support::token(&self.syntax, SyntaxKind::WITH_KW)
13306 }
13307}
13308
13309#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13310pub struct Revoke {
13311 pub(crate) syntax: SyntaxNode,
13312}
13313impl Revoke {
13314 #[inline]
13315 pub fn name_refs(&self) -> AstChildren<NameRef> {
13316 support::children(&self.syntax)
13317 }
13318 #[inline]
13319 pub fn paths(&self) -> AstChildren<Path> {
13320 support::children(&self.syntax)
13321 }
13322 #[inline]
13323 pub fn revoke_command_list(&self) -> Option<RevokeCommandList> {
13324 support::child(&self.syntax)
13325 }
13326 #[inline]
13327 pub fn role_ref(&self) -> Option<RoleRef> {
13328 support::child(&self.syntax)
13329 }
13330 #[inline]
13331 pub fn role_ref_list(&self) -> Option<RoleRefList> {
13332 support::child(&self.syntax)
13333 }
13334 #[inline]
13335 pub fn all_token(&self) -> Option<SyntaxToken> {
13336 support::token(&self.syntax, SyntaxKind::ALL_KW)
13337 }
13338 #[inline]
13339 pub fn by_token(&self) -> Option<SyntaxToken> {
13340 support::token(&self.syntax, SyntaxKind::BY_KW)
13341 }
13342 #[inline]
13343 pub fn cascade_token(&self) -> Option<SyntaxToken> {
13344 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
13345 }
13346 #[inline]
13347 pub fn for_token(&self) -> Option<SyntaxToken> {
13348 support::token(&self.syntax, SyntaxKind::FOR_KW)
13349 }
13350 #[inline]
13351 pub fn from_token(&self) -> Option<SyntaxToken> {
13352 support::token(&self.syntax, SyntaxKind::FROM_KW)
13353 }
13354 #[inline]
13355 pub fn grant_token(&self) -> Option<SyntaxToken> {
13356 support::token(&self.syntax, SyntaxKind::GRANT_KW)
13357 }
13358 #[inline]
13359 pub fn granted_token(&self) -> Option<SyntaxToken> {
13360 support::token(&self.syntax, SyntaxKind::GRANTED_KW)
13361 }
13362 #[inline]
13363 pub fn in_token(&self) -> Option<SyntaxToken> {
13364 support::token(&self.syntax, SyntaxKind::IN_KW)
13365 }
13366 #[inline]
13367 pub fn on_token(&self) -> Option<SyntaxToken> {
13368 support::token(&self.syntax, SyntaxKind::ON_KW)
13369 }
13370 #[inline]
13371 pub fn option_token(&self) -> Option<SyntaxToken> {
13372 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13373 }
13374 #[inline]
13375 pub fn privileges_token(&self) -> Option<SyntaxToken> {
13376 support::token(&self.syntax, SyntaxKind::PRIVILEGES_KW)
13377 }
13378 #[inline]
13379 pub fn restrict_token(&self) -> Option<SyntaxToken> {
13380 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
13381 }
13382 #[inline]
13383 pub fn revoke_token(&self) -> Option<SyntaxToken> {
13384 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
13385 }
13386 #[inline]
13387 pub fn schema_token(&self) -> Option<SyntaxToken> {
13388 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13389 }
13390 #[inline]
13391 pub fn table_token(&self) -> Option<SyntaxToken> {
13392 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13393 }
13394 #[inline]
13395 pub fn tables_token(&self) -> Option<SyntaxToken> {
13396 support::token(&self.syntax, SyntaxKind::TABLES_KW)
13397 }
13398}
13399
13400#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13401pub struct RevokeCommand {
13402 pub(crate) syntax: SyntaxNode,
13403}
13404impl RevokeCommand {
13405 #[inline]
13406 pub fn role_ref(&self) -> Option<RoleRef> {
13407 support::child(&self.syntax)
13408 }
13409 #[inline]
13410 pub fn all_token(&self) -> Option<SyntaxToken> {
13411 support::token(&self.syntax, SyntaxKind::ALL_KW)
13412 }
13413 #[inline]
13414 pub fn alter_token(&self) -> Option<SyntaxToken> {
13415 support::token(&self.syntax, SyntaxKind::ALTER_KW)
13416 }
13417 #[inline]
13418 pub fn create_token(&self) -> Option<SyntaxToken> {
13419 support::token(&self.syntax, SyntaxKind::CREATE_KW)
13420 }
13421 #[inline]
13422 pub fn delete_token(&self) -> Option<SyntaxToken> {
13423 support::token(&self.syntax, SyntaxKind::DELETE_KW)
13424 }
13425 #[inline]
13426 pub fn execute_token(&self) -> Option<SyntaxToken> {
13427 support::token(&self.syntax, SyntaxKind::EXECUTE_KW)
13428 }
13429 #[inline]
13430 pub fn ident_token(&self) -> Option<SyntaxToken> {
13431 support::token(&self.syntax, SyntaxKind::IDENT)
13432 }
13433 #[inline]
13434 pub fn insert_token(&self) -> Option<SyntaxToken> {
13435 support::token(&self.syntax, SyntaxKind::INSERT_KW)
13436 }
13437 #[inline]
13438 pub fn references_token(&self) -> Option<SyntaxToken> {
13439 support::token(&self.syntax, SyntaxKind::REFERENCES_KW)
13440 }
13441 #[inline]
13442 pub fn select_token(&self) -> Option<SyntaxToken> {
13443 support::token(&self.syntax, SyntaxKind::SELECT_KW)
13444 }
13445 #[inline]
13446 pub fn system_token(&self) -> Option<SyntaxToken> {
13447 support::token(&self.syntax, SyntaxKind::SYSTEM_KW)
13448 }
13449 #[inline]
13450 pub fn temp_token(&self) -> Option<SyntaxToken> {
13451 support::token(&self.syntax, SyntaxKind::TEMP_KW)
13452 }
13453 #[inline]
13454 pub fn temporary_token(&self) -> Option<SyntaxToken> {
13455 support::token(&self.syntax, SyntaxKind::TEMPORARY_KW)
13456 }
13457 #[inline]
13458 pub fn trigger_token(&self) -> Option<SyntaxToken> {
13459 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
13460 }
13461 #[inline]
13462 pub fn truncate_token(&self) -> Option<SyntaxToken> {
13463 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
13464 }
13465 #[inline]
13466 pub fn update_token(&self) -> Option<SyntaxToken> {
13467 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
13468 }
13469}
13470
13471#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13472pub struct RevokeCommandList {
13473 pub(crate) syntax: SyntaxNode,
13474}
13475impl RevokeCommandList {
13476 #[inline]
13477 pub fn revoke_commands(&self) -> AstChildren<RevokeCommand> {
13478 support::children(&self.syntax)
13479 }
13480}
13481
13482#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13483pub struct RevokeDefaultPrivileges {
13484 pub(crate) syntax: SyntaxNode,
13485}
13486impl RevokeDefaultPrivileges {
13487 #[inline]
13488 pub fn privilege_target(&self) -> Option<PrivilegeTarget> {
13489 support::child(&self.syntax)
13490 }
13491 #[inline]
13492 pub fn privileges(&self) -> Option<Privileges> {
13493 support::child(&self.syntax)
13494 }
13495 #[inline]
13496 pub fn role_ref_list(&self) -> Option<RoleRefList> {
13497 support::child(&self.syntax)
13498 }
13499 #[inline]
13500 pub fn cascade_token(&self) -> Option<SyntaxToken> {
13501 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
13502 }
13503 #[inline]
13504 pub fn for_token(&self) -> Option<SyntaxToken> {
13505 support::token(&self.syntax, SyntaxKind::FOR_KW)
13506 }
13507 #[inline]
13508 pub fn from_token(&self) -> Option<SyntaxToken> {
13509 support::token(&self.syntax, SyntaxKind::FROM_KW)
13510 }
13511 #[inline]
13512 pub fn grant_token(&self) -> Option<SyntaxToken> {
13513 support::token(&self.syntax, SyntaxKind::GRANT_KW)
13514 }
13515 #[inline]
13516 pub fn on_token(&self) -> Option<SyntaxToken> {
13517 support::token(&self.syntax, SyntaxKind::ON_KW)
13518 }
13519 #[inline]
13520 pub fn option_token(&self) -> Option<SyntaxToken> {
13521 support::token(&self.syntax, SyntaxKind::OPTION_KW)
13522 }
13523 #[inline]
13524 pub fn restrict_token(&self) -> Option<SyntaxToken> {
13525 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
13526 }
13527 #[inline]
13528 pub fn revoke_token(&self) -> Option<SyntaxToken> {
13529 support::token(&self.syntax, SyntaxKind::REVOKE_KW)
13530 }
13531}
13532
13533#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13534pub struct Role {
13535 pub(crate) syntax: SyntaxNode,
13536}
13537impl Role {
13538 #[inline]
13539 pub fn name(&self) -> Option<Name> {
13540 support::child(&self.syntax)
13541 }
13542 #[inline]
13543 pub fn current_role_token(&self) -> Option<SyntaxToken> {
13544 support::token(&self.syntax, SyntaxKind::CURRENT_ROLE_KW)
13545 }
13546 #[inline]
13547 pub fn current_user_token(&self) -> Option<SyntaxToken> {
13548 support::token(&self.syntax, SyntaxKind::CURRENT_USER_KW)
13549 }
13550 #[inline]
13551 pub fn group_token(&self) -> Option<SyntaxToken> {
13552 support::token(&self.syntax, SyntaxKind::GROUP_KW)
13553 }
13554 #[inline]
13555 pub fn session_user_token(&self) -> Option<SyntaxToken> {
13556 support::token(&self.syntax, SyntaxKind::SESSION_USER_KW)
13557 }
13558}
13559
13560#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13561pub struct RoleOption {
13562 pub(crate) syntax: SyntaxNode,
13563}
13564impl RoleOption {
13565 #[inline]
13566 pub fn inherit_token(&self) -> Option<SyntaxToken> {
13567 support::token(&self.syntax, SyntaxKind::INHERIT_KW)
13568 }
13569}
13570
13571#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13572pub struct RoleOptionList {
13573 pub(crate) syntax: SyntaxNode,
13574}
13575impl RoleOptionList {
13576 #[inline]
13577 pub fn role_options(&self) -> AstChildren<RoleOption> {
13578 support::children(&self.syntax)
13579 }
13580 #[inline]
13581 pub fn with_token(&self) -> Option<SyntaxToken> {
13582 support::token(&self.syntax, SyntaxKind::WITH_KW)
13583 }
13584}
13585
13586#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13587pub struct RoleRef {
13588 pub(crate) syntax: SyntaxNode,
13589}
13590impl RoleRef {
13591 #[inline]
13592 pub fn name_ref(&self) -> Option<NameRef> {
13593 support::child(&self.syntax)
13594 }
13595 #[inline]
13596 pub fn current_role_token(&self) -> Option<SyntaxToken> {
13597 support::token(&self.syntax, SyntaxKind::CURRENT_ROLE_KW)
13598 }
13599 #[inline]
13600 pub fn current_user_token(&self) -> Option<SyntaxToken> {
13601 support::token(&self.syntax, SyntaxKind::CURRENT_USER_KW)
13602 }
13603 #[inline]
13604 pub fn group_token(&self) -> Option<SyntaxToken> {
13605 support::token(&self.syntax, SyntaxKind::GROUP_KW)
13606 }
13607 #[inline]
13608 pub fn session_user_token(&self) -> Option<SyntaxToken> {
13609 support::token(&self.syntax, SyntaxKind::SESSION_USER_KW)
13610 }
13611}
13612
13613#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13614pub struct RoleRefList {
13615 pub(crate) syntax: SyntaxNode,
13616}
13617impl RoleRefList {
13618 #[inline]
13619 pub fn role_refs(&self) -> AstChildren<RoleRef> {
13620 support::children(&self.syntax)
13621 }
13622}
13623
13624#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13625pub struct Rollback {
13626 pub(crate) syntax: SyntaxNode,
13627}
13628impl Rollback {
13629 #[inline]
13630 pub fn literal(&self) -> Option<Literal> {
13631 support::child(&self.syntax)
13632 }
13633 #[inline]
13634 pub fn name_ref(&self) -> Option<NameRef> {
13635 support::child(&self.syntax)
13636 }
13637 #[inline]
13638 pub fn abort_token(&self) -> Option<SyntaxToken> {
13639 support::token(&self.syntax, SyntaxKind::ABORT_KW)
13640 }
13641 #[inline]
13642 pub fn and_token(&self) -> Option<SyntaxToken> {
13643 support::token(&self.syntax, SyntaxKind::AND_KW)
13644 }
13645 #[inline]
13646 pub fn chain_token(&self) -> Option<SyntaxToken> {
13647 support::token(&self.syntax, SyntaxKind::CHAIN_KW)
13648 }
13649 #[inline]
13650 pub fn no_token(&self) -> Option<SyntaxToken> {
13651 support::token(&self.syntax, SyntaxKind::NO_KW)
13652 }
13653 #[inline]
13654 pub fn prepared_token(&self) -> Option<SyntaxToken> {
13655 support::token(&self.syntax, SyntaxKind::PREPARED_KW)
13656 }
13657 #[inline]
13658 pub fn rollback_token(&self) -> Option<SyntaxToken> {
13659 support::token(&self.syntax, SyntaxKind::ROLLBACK_KW)
13660 }
13661 #[inline]
13662 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
13663 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
13664 }
13665 #[inline]
13666 pub fn to_token(&self) -> Option<SyntaxToken> {
13667 support::token(&self.syntax, SyntaxKind::TO_KW)
13668 }
13669 #[inline]
13670 pub fn transaction_token(&self) -> Option<SyntaxToken> {
13671 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
13672 }
13673 #[inline]
13674 pub fn work_token(&self) -> Option<SyntaxToken> {
13675 support::token(&self.syntax, SyntaxKind::WORK_KW)
13676 }
13677}
13678
13679#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13680pub struct Row {
13681 pub(crate) syntax: SyntaxNode,
13682}
13683impl Row {
13684 #[inline]
13685 pub fn exprs(&self) -> AstChildren<Expr> {
13686 support::children(&self.syntax)
13687 }
13688}
13689
13690#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13691pub struct RowList {
13692 pub(crate) syntax: SyntaxNode,
13693}
13694impl RowList {
13695 #[inline]
13696 pub fn rows(&self) -> AstChildren<Row> {
13697 support::children(&self.syntax)
13698 }
13699}
13700
13701#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13702pub struct RowsFuncOption {
13703 pub(crate) syntax: SyntaxNode,
13704}
13705impl RowsFuncOption {
13706 #[inline]
13707 pub fn rows_token(&self) -> Option<SyntaxToken> {
13708 support::token(&self.syntax, SyntaxKind::ROWS_KW)
13709 }
13710}
13711
13712#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13713pub struct Savepoint {
13714 pub(crate) syntax: SyntaxNode,
13715}
13716impl Savepoint {
13717 #[inline]
13718 pub fn name(&self) -> Option<Name> {
13719 support::child(&self.syntax)
13720 }
13721 #[inline]
13722 pub fn savepoint_token(&self) -> Option<SyntaxToken> {
13723 support::token(&self.syntax, SyntaxKind::SAVEPOINT_KW)
13724 }
13725}
13726
13727#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13728pub struct SecurityFuncOption {
13729 pub(crate) syntax: SyntaxNode,
13730}
13731impl SecurityFuncOption {
13732 #[inline]
13733 pub fn definer_token(&self) -> Option<SyntaxToken> {
13734 support::token(&self.syntax, SyntaxKind::DEFINER_KW)
13735 }
13736 #[inline]
13737 pub fn invoker_token(&self) -> Option<SyntaxToken> {
13738 support::token(&self.syntax, SyntaxKind::INVOKER_KW)
13739 }
13740 #[inline]
13741 pub fn security_token(&self) -> Option<SyntaxToken> {
13742 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
13743 }
13744}
13745
13746#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13747pub struct SecurityLabel {
13748 pub(crate) syntax: SyntaxNode,
13749}
13750impl SecurityLabel {
13751 #[inline]
13752 pub fn aggregate(&self) -> Option<Aggregate> {
13753 support::child(&self.syntax)
13754 }
13755 #[inline]
13756 pub fn for_provider(&self) -> Option<ForProvider> {
13757 support::child(&self.syntax)
13758 }
13759 #[inline]
13760 pub fn function_sig(&self) -> Option<FunctionSig> {
13761 support::child(&self.syntax)
13762 }
13763 #[inline]
13764 pub fn literal(&self) -> Option<Literal> {
13765 support::child(&self.syntax)
13766 }
13767 #[inline]
13768 pub fn path(&self) -> Option<Path> {
13769 support::child(&self.syntax)
13770 }
13771 #[inline]
13772 pub fn aggregate_token(&self) -> Option<SyntaxToken> {
13773 support::token(&self.syntax, SyntaxKind::AGGREGATE_KW)
13774 }
13775 #[inline]
13776 pub fn column_token(&self) -> Option<SyntaxToken> {
13777 support::token(&self.syntax, SyntaxKind::COLUMN_KW)
13778 }
13779 #[inline]
13780 pub fn database_token(&self) -> Option<SyntaxToken> {
13781 support::token(&self.syntax, SyntaxKind::DATABASE_KW)
13782 }
13783 #[inline]
13784 pub fn domain_token(&self) -> Option<SyntaxToken> {
13785 support::token(&self.syntax, SyntaxKind::DOMAIN_KW)
13786 }
13787 #[inline]
13788 pub fn event_token(&self) -> Option<SyntaxToken> {
13789 support::token(&self.syntax, SyntaxKind::EVENT_KW)
13790 }
13791 #[inline]
13792 pub fn foreign_token(&self) -> Option<SyntaxToken> {
13793 support::token(&self.syntax, SyntaxKind::FOREIGN_KW)
13794 }
13795 #[inline]
13796 pub fn function_token(&self) -> Option<SyntaxToken> {
13797 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
13798 }
13799 #[inline]
13800 pub fn is_token(&self) -> Option<SyntaxToken> {
13801 support::token(&self.syntax, SyntaxKind::IS_KW)
13802 }
13803 #[inline]
13804 pub fn label_token(&self) -> Option<SyntaxToken> {
13805 support::token(&self.syntax, SyntaxKind::LABEL_KW)
13806 }
13807 #[inline]
13808 pub fn language_token(&self) -> Option<SyntaxToken> {
13809 support::token(&self.syntax, SyntaxKind::LANGUAGE_KW)
13810 }
13811 #[inline]
13812 pub fn large_token(&self) -> Option<SyntaxToken> {
13813 support::token(&self.syntax, SyntaxKind::LARGE_KW)
13814 }
13815 #[inline]
13816 pub fn materialized_token(&self) -> Option<SyntaxToken> {
13817 support::token(&self.syntax, SyntaxKind::MATERIALIZED_KW)
13818 }
13819 #[inline]
13820 pub fn null_token(&self) -> Option<SyntaxToken> {
13821 support::token(&self.syntax, SyntaxKind::NULL_KW)
13822 }
13823 #[inline]
13824 pub fn object_token(&self) -> Option<SyntaxToken> {
13825 support::token(&self.syntax, SyntaxKind::OBJECT_KW)
13826 }
13827 #[inline]
13828 pub fn on_token(&self) -> Option<SyntaxToken> {
13829 support::token(&self.syntax, SyntaxKind::ON_KW)
13830 }
13831 #[inline]
13832 pub fn procedural_token(&self) -> Option<SyntaxToken> {
13833 support::token(&self.syntax, SyntaxKind::PROCEDURAL_KW)
13834 }
13835 #[inline]
13836 pub fn procedure_token(&self) -> Option<SyntaxToken> {
13837 support::token(&self.syntax, SyntaxKind::PROCEDURE_KW)
13838 }
13839 #[inline]
13840 pub fn publication_token(&self) -> Option<SyntaxToken> {
13841 support::token(&self.syntax, SyntaxKind::PUBLICATION_KW)
13842 }
13843 #[inline]
13844 pub fn role_token(&self) -> Option<SyntaxToken> {
13845 support::token(&self.syntax, SyntaxKind::ROLE_KW)
13846 }
13847 #[inline]
13848 pub fn routine_token(&self) -> Option<SyntaxToken> {
13849 support::token(&self.syntax, SyntaxKind::ROUTINE_KW)
13850 }
13851 #[inline]
13852 pub fn schema_token(&self) -> Option<SyntaxToken> {
13853 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
13854 }
13855 #[inline]
13856 pub fn security_token(&self) -> Option<SyntaxToken> {
13857 support::token(&self.syntax, SyntaxKind::SECURITY_KW)
13858 }
13859 #[inline]
13860 pub fn sequence_token(&self) -> Option<SyntaxToken> {
13861 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
13862 }
13863 #[inline]
13864 pub fn subscription_token(&self) -> Option<SyntaxToken> {
13865 support::token(&self.syntax, SyntaxKind::SUBSCRIPTION_KW)
13866 }
13867 #[inline]
13868 pub fn table_token(&self) -> Option<SyntaxToken> {
13869 support::token(&self.syntax, SyntaxKind::TABLE_KW)
13870 }
13871 #[inline]
13872 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
13873 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
13874 }
13875 #[inline]
13876 pub fn trigger_token(&self) -> Option<SyntaxToken> {
13877 support::token(&self.syntax, SyntaxKind::TRIGGER_KW)
13878 }
13879 #[inline]
13880 pub fn type_token(&self) -> Option<SyntaxToken> {
13881 support::token(&self.syntax, SyntaxKind::TYPE_KW)
13882 }
13883 #[inline]
13884 pub fn view_token(&self) -> Option<SyntaxToken> {
13885 support::token(&self.syntax, SyntaxKind::VIEW_KW)
13886 }
13887}
13888
13889#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13890pub struct Select {
13891 pub(crate) syntax: SyntaxNode,
13892}
13893impl Select {
13894 #[inline]
13895 pub fn fetch_clause(&self) -> Option<FetchClause> {
13896 support::child(&self.syntax)
13897 }
13898 #[inline]
13899 pub fn filter_clause(&self) -> Option<FilterClause> {
13900 support::child(&self.syntax)
13901 }
13902 #[inline]
13903 pub fn from_clause(&self) -> Option<FromClause> {
13904 support::child(&self.syntax)
13905 }
13906 #[inline]
13907 pub fn group_by_clause(&self) -> Option<GroupByClause> {
13908 support::child(&self.syntax)
13909 }
13910 #[inline]
13911 pub fn having_clause(&self) -> Option<HavingClause> {
13912 support::child(&self.syntax)
13913 }
13914 #[inline]
13915 pub fn limit_clause(&self) -> Option<LimitClause> {
13916 support::child(&self.syntax)
13917 }
13918 #[inline]
13919 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
13920 support::children(&self.syntax)
13921 }
13922 #[inline]
13923 pub fn offset_clause(&self) -> Option<OffsetClause> {
13924 support::child(&self.syntax)
13925 }
13926 #[inline]
13927 pub fn order_by_clause(&self) -> Option<OrderByClause> {
13928 support::child(&self.syntax)
13929 }
13930 #[inline]
13931 pub fn select_clause(&self) -> Option<SelectClause> {
13932 support::child(&self.syntax)
13933 }
13934 #[inline]
13935 pub fn where_clause(&self) -> Option<WhereClause> {
13936 support::child(&self.syntax)
13937 }
13938 #[inline]
13939 pub fn window_clause(&self) -> Option<WindowClause> {
13940 support::child(&self.syntax)
13941 }
13942 #[inline]
13943 pub fn with_clause(&self) -> Option<WithClause> {
13944 support::child(&self.syntax)
13945 }
13946}
13947
13948#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13949pub struct SelectClause {
13950 pub(crate) syntax: SyntaxNode,
13951}
13952impl SelectClause {
13953 #[inline]
13954 pub fn distinct_clause(&self) -> Option<DistinctClause> {
13955 support::child(&self.syntax)
13956 }
13957 #[inline]
13958 pub fn target_list(&self) -> Option<TargetList> {
13959 support::child(&self.syntax)
13960 }
13961 #[inline]
13962 pub fn all_token(&self) -> Option<SyntaxToken> {
13963 support::token(&self.syntax, SyntaxKind::ALL_KW)
13964 }
13965 #[inline]
13966 pub fn select_token(&self) -> Option<SyntaxToken> {
13967 support::token(&self.syntax, SyntaxKind::SELECT_KW)
13968 }
13969}
13970
13971#[derive(Debug, Clone, PartialEq, Eq, Hash)]
13972pub struct SelectInto {
13973 pub(crate) syntax: SyntaxNode,
13974}
13975impl SelectInto {
13976 #[inline]
13977 pub fn filter_clause(&self) -> Option<FilterClause> {
13978 support::child(&self.syntax)
13979 }
13980 #[inline]
13981 pub fn from_clause(&self) -> Option<FromClause> {
13982 support::child(&self.syntax)
13983 }
13984 #[inline]
13985 pub fn group_by_clause(&self) -> Option<GroupByClause> {
13986 support::child(&self.syntax)
13987 }
13988 #[inline]
13989 pub fn having_clause(&self) -> Option<HavingClause> {
13990 support::child(&self.syntax)
13991 }
13992 #[inline]
13993 pub fn into_clause(&self) -> Option<IntoClause> {
13994 support::child(&self.syntax)
13995 }
13996 #[inline]
13997 pub fn limit_clause(&self) -> Option<LimitClause> {
13998 support::child(&self.syntax)
13999 }
14000 #[inline]
14001 pub fn locking_clauses(&self) -> AstChildren<LockingClause> {
14002 support::children(&self.syntax)
14003 }
14004 #[inline]
14005 pub fn offset_clause(&self) -> Option<OffsetClause> {
14006 support::child(&self.syntax)
14007 }
14008 #[inline]
14009 pub fn order_by_clause(&self) -> Option<OrderByClause> {
14010 support::child(&self.syntax)
14011 }
14012 #[inline]
14013 pub fn select_clause(&self) -> Option<SelectClause> {
14014 support::child(&self.syntax)
14015 }
14016 #[inline]
14017 pub fn where_clause(&self) -> Option<WhereClause> {
14018 support::child(&self.syntax)
14019 }
14020 #[inline]
14021 pub fn window_clause(&self) -> Option<WindowClause> {
14022 support::child(&self.syntax)
14023 }
14024 #[inline]
14025 pub fn with_clause(&self) -> Option<WithClause> {
14026 support::child(&self.syntax)
14027 }
14028}
14029
14030#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14031pub struct SequenceOption {
14032 pub(crate) syntax: SyntaxNode,
14033}
14034impl SequenceOption {
14035 #[inline]
14036 pub fn literal(&self) -> Option<Literal> {
14037 support::child(&self.syntax)
14038 }
14039 #[inline]
14040 pub fn name_ref(&self) -> Option<NameRef> {
14041 support::child(&self.syntax)
14042 }
14043 #[inline]
14044 pub fn path(&self) -> Option<Path> {
14045 support::child(&self.syntax)
14046 }
14047 #[inline]
14048 pub fn ty(&self) -> Option<Type> {
14049 support::child(&self.syntax)
14050 }
14051 #[inline]
14052 pub fn as_token(&self) -> Option<SyntaxToken> {
14053 support::token(&self.syntax, SyntaxKind::AS_KW)
14054 }
14055 #[inline]
14056 pub fn by_token(&self) -> Option<SyntaxToken> {
14057 support::token(&self.syntax, SyntaxKind::BY_KW)
14058 }
14059 #[inline]
14060 pub fn cycle_token(&self) -> Option<SyntaxToken> {
14061 support::token(&self.syntax, SyntaxKind::CYCLE_KW)
14062 }
14063 #[inline]
14064 pub fn increment_token(&self) -> Option<SyntaxToken> {
14065 support::token(&self.syntax, SyntaxKind::INCREMENT_KW)
14066 }
14067 #[inline]
14068 pub fn logged_token(&self) -> Option<SyntaxToken> {
14069 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
14070 }
14071 #[inline]
14072 pub fn maxvalue_token(&self) -> Option<SyntaxToken> {
14073 support::token(&self.syntax, SyntaxKind::MAXVALUE_KW)
14074 }
14075 #[inline]
14076 pub fn minvalue_token(&self) -> Option<SyntaxToken> {
14077 support::token(&self.syntax, SyntaxKind::MINVALUE_KW)
14078 }
14079 #[inline]
14080 pub fn name_token(&self) -> Option<SyntaxToken> {
14081 support::token(&self.syntax, SyntaxKind::NAME_KW)
14082 }
14083 #[inline]
14084 pub fn no_token(&self) -> Option<SyntaxToken> {
14085 support::token(&self.syntax, SyntaxKind::NO_KW)
14086 }
14087 #[inline]
14088 pub fn none_token(&self) -> Option<SyntaxToken> {
14089 support::token(&self.syntax, SyntaxKind::NONE_KW)
14090 }
14091 #[inline]
14092 pub fn owned_token(&self) -> Option<SyntaxToken> {
14093 support::token(&self.syntax, SyntaxKind::OWNED_KW)
14094 }
14095 #[inline]
14096 pub fn restart_token(&self) -> Option<SyntaxToken> {
14097 support::token(&self.syntax, SyntaxKind::RESTART_KW)
14098 }
14099 #[inline]
14100 pub fn sequence_token(&self) -> Option<SyntaxToken> {
14101 support::token(&self.syntax, SyntaxKind::SEQUENCE_KW)
14102 }
14103 #[inline]
14104 pub fn start_token(&self) -> Option<SyntaxToken> {
14105 support::token(&self.syntax, SyntaxKind::START_KW)
14106 }
14107 #[inline]
14108 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
14109 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
14110 }
14111 #[inline]
14112 pub fn with_token(&self) -> Option<SyntaxToken> {
14113 support::token(&self.syntax, SyntaxKind::WITH_KW)
14114 }
14115}
14116
14117#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14118pub struct SequenceOptionList {
14119 pub(crate) syntax: SyntaxNode,
14120}
14121impl SequenceOptionList {
14122 #[inline]
14123 pub fn sequence_options(&self) -> AstChildren<SequenceOption> {
14124 support::children(&self.syntax)
14125 }
14126 #[inline]
14127 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14128 support::token(&self.syntax, SyntaxKind::L_PAREN)
14129 }
14130 #[inline]
14131 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14132 support::token(&self.syntax, SyntaxKind::R_PAREN)
14133 }
14134}
14135
14136#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14137pub struct Serializable {
14138 pub(crate) syntax: SyntaxNode,
14139}
14140impl Serializable {
14141 #[inline]
14142 pub fn isolation_token(&self) -> Option<SyntaxToken> {
14143 support::token(&self.syntax, SyntaxKind::ISOLATION_KW)
14144 }
14145 #[inline]
14146 pub fn level_token(&self) -> Option<SyntaxToken> {
14147 support::token(&self.syntax, SyntaxKind::LEVEL_KW)
14148 }
14149 #[inline]
14150 pub fn serializable_token(&self) -> Option<SyntaxToken> {
14151 support::token(&self.syntax, SyntaxKind::SERIALIZABLE_KW)
14152 }
14153}
14154
14155#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14156pub struct ServerName {
14157 pub(crate) syntax: SyntaxNode,
14158}
14159impl ServerName {
14160 #[inline]
14161 pub fn name_ref(&self) -> Option<NameRef> {
14162 support::child(&self.syntax)
14163 }
14164 #[inline]
14165 pub fn server_token(&self) -> Option<SyntaxToken> {
14166 support::token(&self.syntax, SyntaxKind::SERVER_KW)
14167 }
14168}
14169
14170#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14171pub struct Set {
14172 pub(crate) syntax: SyntaxNode,
14173}
14174impl Set {
14175 #[inline]
14176 pub fn config_value(&self) -> Option<ConfigValue> {
14177 support::child(&self.syntax)
14178 }
14179 #[inline]
14180 pub fn config_values(&self) -> AstChildren<ConfigValue> {
14181 support::children(&self.syntax)
14182 }
14183 #[inline]
14184 pub fn literal(&self) -> Option<Literal> {
14185 support::child(&self.syntax)
14186 }
14187 #[inline]
14188 pub fn path(&self) -> Option<Path> {
14189 support::child(&self.syntax)
14190 }
14191 #[inline]
14192 pub fn eq_token(&self) -> Option<SyntaxToken> {
14193 support::token(&self.syntax, SyntaxKind::EQ)
14194 }
14195 #[inline]
14196 pub fn catalog_token(&self) -> Option<SyntaxToken> {
14197 support::token(&self.syntax, SyntaxKind::CATALOG_KW)
14198 }
14199 #[inline]
14200 pub fn content_token(&self) -> Option<SyntaxToken> {
14201 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
14202 }
14203 #[inline]
14204 pub fn current_token(&self) -> Option<SyntaxToken> {
14205 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
14206 }
14207 #[inline]
14208 pub fn default_token(&self) -> Option<SyntaxToken> {
14209 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14210 }
14211 #[inline]
14212 pub fn document_token(&self) -> Option<SyntaxToken> {
14213 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
14214 }
14215 #[inline]
14216 pub fn from_token(&self) -> Option<SyntaxToken> {
14217 support::token(&self.syntax, SyntaxKind::FROM_KW)
14218 }
14219 #[inline]
14220 pub fn local_token(&self) -> Option<SyntaxToken> {
14221 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14222 }
14223 #[inline]
14224 pub fn option_token(&self) -> Option<SyntaxToken> {
14225 support::token(&self.syntax, SyntaxKind::OPTION_KW)
14226 }
14227 #[inline]
14228 pub fn schema_token(&self) -> Option<SyntaxToken> {
14229 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
14230 }
14231 #[inline]
14232 pub fn session_token(&self) -> Option<SyntaxToken> {
14233 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14234 }
14235 #[inline]
14236 pub fn set_token(&self) -> Option<SyntaxToken> {
14237 support::token(&self.syntax, SyntaxKind::SET_KW)
14238 }
14239 #[inline]
14240 pub fn time_token(&self) -> Option<SyntaxToken> {
14241 support::token(&self.syntax, SyntaxKind::TIME_KW)
14242 }
14243 #[inline]
14244 pub fn to_token(&self) -> Option<SyntaxToken> {
14245 support::token(&self.syntax, SyntaxKind::TO_KW)
14246 }
14247 #[inline]
14248 pub fn xml_token(&self) -> Option<SyntaxToken> {
14249 support::token(&self.syntax, SyntaxKind::XML_KW)
14250 }
14251 #[inline]
14252 pub fn zone_token(&self) -> Option<SyntaxToken> {
14253 support::token(&self.syntax, SyntaxKind::ZONE_KW)
14254 }
14255}
14256
14257#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14258pub struct SetAccessMethod {
14259 pub(crate) syntax: SyntaxNode,
14260}
14261impl SetAccessMethod {
14262 #[inline]
14263 pub fn name_ref(&self) -> Option<NameRef> {
14264 support::child(&self.syntax)
14265 }
14266 #[inline]
14267 pub fn access_token(&self) -> Option<SyntaxToken> {
14268 support::token(&self.syntax, SyntaxKind::ACCESS_KW)
14269 }
14270 #[inline]
14271 pub fn method_token(&self) -> Option<SyntaxToken> {
14272 support::token(&self.syntax, SyntaxKind::METHOD_KW)
14273 }
14274 #[inline]
14275 pub fn set_token(&self) -> Option<SyntaxToken> {
14276 support::token(&self.syntax, SyntaxKind::SET_KW)
14277 }
14278}
14279
14280#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14281pub struct SetClause {
14282 pub(crate) syntax: SyntaxNode,
14283}
14284impl SetClause {
14285 #[inline]
14286 pub fn set_column_list(&self) -> Option<SetColumnList> {
14287 support::child(&self.syntax)
14288 }
14289 #[inline]
14290 pub fn set_token(&self) -> Option<SyntaxToken> {
14291 support::token(&self.syntax, SyntaxKind::SET_KW)
14292 }
14293}
14294
14295#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14296pub struct SetColumnList {
14297 pub(crate) syntax: SyntaxNode,
14298}
14299impl SetColumnList {
14300 #[inline]
14301 pub fn set_columns(&self) -> AstChildren<SetColumn> {
14302 support::children(&self.syntax)
14303 }
14304}
14305
14306#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14307pub struct SetCompression {
14308 pub(crate) syntax: SyntaxNode,
14309}
14310impl SetCompression {
14311 #[inline]
14312 pub fn compression_token(&self) -> Option<SyntaxToken> {
14313 support::token(&self.syntax, SyntaxKind::COMPRESSION_KW)
14314 }
14315 #[inline]
14316 pub fn set_token(&self) -> Option<SyntaxToken> {
14317 support::token(&self.syntax, SyntaxKind::SET_KW)
14318 }
14319}
14320
14321#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14322pub struct SetConfigParam {
14323 pub(crate) syntax: SyntaxNode,
14324}
14325impl SetConfigParam {
14326 #[inline]
14327 pub fn path(&self) -> Option<Path> {
14328 support::child(&self.syntax)
14329 }
14330 #[inline]
14331 pub fn set_token(&self) -> Option<SyntaxToken> {
14332 support::token(&self.syntax, SyntaxKind::SET_KW)
14333 }
14334}
14335
14336#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14337pub struct SetConstraints {
14338 pub(crate) syntax: SyntaxNode,
14339}
14340impl SetConstraints {
14341 #[inline]
14342 pub fn paths(&self) -> AstChildren<Path> {
14343 support::children(&self.syntax)
14344 }
14345 #[inline]
14346 pub fn all_token(&self) -> Option<SyntaxToken> {
14347 support::token(&self.syntax, SyntaxKind::ALL_KW)
14348 }
14349 #[inline]
14350 pub fn constraints_token(&self) -> Option<SyntaxToken> {
14351 support::token(&self.syntax, SyntaxKind::CONSTRAINTS_KW)
14352 }
14353 #[inline]
14354 pub fn deferred_token(&self) -> Option<SyntaxToken> {
14355 support::token(&self.syntax, SyntaxKind::DEFERRED_KW)
14356 }
14357 #[inline]
14358 pub fn immediate_token(&self) -> Option<SyntaxToken> {
14359 support::token(&self.syntax, SyntaxKind::IMMEDIATE_KW)
14360 }
14361 #[inline]
14362 pub fn set_token(&self) -> Option<SyntaxToken> {
14363 support::token(&self.syntax, SyntaxKind::SET_KW)
14364 }
14365}
14366
14367#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14368pub struct SetDefault {
14369 pub(crate) syntax: SyntaxNode,
14370}
14371impl SetDefault {
14372 #[inline]
14373 pub fn expr(&self) -> Option<Expr> {
14374 support::child(&self.syntax)
14375 }
14376 #[inline]
14377 pub fn default_token(&self) -> Option<SyntaxToken> {
14378 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14379 }
14380 #[inline]
14381 pub fn set_token(&self) -> Option<SyntaxToken> {
14382 support::token(&self.syntax, SyntaxKind::SET_KW)
14383 }
14384}
14385
14386#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14387pub struct SetDefaultColumns {
14388 pub(crate) syntax: SyntaxNode,
14389}
14390impl SetDefaultColumns {
14391 #[inline]
14392 pub fn column_list(&self) -> Option<ColumnList> {
14393 support::child(&self.syntax)
14394 }
14395 #[inline]
14396 pub fn default_token(&self) -> Option<SyntaxToken> {
14397 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14398 }
14399 #[inline]
14400 pub fn set_token(&self) -> Option<SyntaxToken> {
14401 support::token(&self.syntax, SyntaxKind::SET_KW)
14402 }
14403}
14404
14405#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14406pub struct SetExpr {
14407 pub(crate) syntax: SyntaxNode,
14408}
14409impl SetExpr {
14410 #[inline]
14411 pub fn expr(&self) -> Option<Expr> {
14412 support::child(&self.syntax)
14413 }
14414 #[inline]
14415 pub fn default_token(&self) -> Option<SyntaxToken> {
14416 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14417 }
14418}
14419
14420#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14421pub struct SetExprList {
14422 pub(crate) syntax: SyntaxNode,
14423}
14424impl SetExprList {
14425 #[inline]
14426 pub fn set_exprs(&self) -> AstChildren<SetExpr> {
14427 support::children(&self.syntax)
14428 }
14429 #[inline]
14430 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14431 support::token(&self.syntax, SyntaxKind::L_PAREN)
14432 }
14433 #[inline]
14434 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14435 support::token(&self.syntax, SyntaxKind::R_PAREN)
14436 }
14437 #[inline]
14438 pub fn row_token(&self) -> Option<SyntaxToken> {
14439 support::token(&self.syntax, SyntaxKind::ROW_KW)
14440 }
14441}
14442
14443#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14444pub struct SetExpression {
14445 pub(crate) syntax: SyntaxNode,
14446}
14447impl SetExpression {
14448 #[inline]
14449 pub fn expr(&self) -> Option<Expr> {
14450 support::child(&self.syntax)
14451 }
14452 #[inline]
14453 pub fn expression_token(&self) -> Option<SyntaxToken> {
14454 support::token(&self.syntax, SyntaxKind::EXPRESSION_KW)
14455 }
14456 #[inline]
14457 pub fn set_token(&self) -> Option<SyntaxToken> {
14458 support::token(&self.syntax, SyntaxKind::SET_KW)
14459 }
14460}
14461
14462#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14463pub struct SetFuncOption {
14464 pub(crate) syntax: SyntaxNode,
14465}
14466impl SetFuncOption {
14467 #[inline]
14468 pub fn set_token(&self) -> Option<SyntaxToken> {
14469 support::token(&self.syntax, SyntaxKind::SET_KW)
14470 }
14471}
14472
14473#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14474pub struct SetGenerated {
14475 pub(crate) syntax: SyntaxNode,
14476}
14477impl SetGenerated {
14478 #[inline]
14479 pub fn set_token(&self) -> Option<SyntaxToken> {
14480 support::token(&self.syntax, SyntaxKind::SET_KW)
14481 }
14482}
14483
14484#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14485pub struct SetGeneratedOptions {
14486 pub(crate) syntax: SyntaxNode,
14487}
14488impl SetGeneratedOptions {
14489 #[inline]
14490 pub fn generated_token(&self) -> Option<SyntaxToken> {
14491 support::token(&self.syntax, SyntaxKind::GENERATED_KW)
14492 }
14493 #[inline]
14494 pub fn set_token(&self) -> Option<SyntaxToken> {
14495 support::token(&self.syntax, SyntaxKind::SET_KW)
14496 }
14497}
14498
14499#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14500pub struct SetLogged {
14501 pub(crate) syntax: SyntaxNode,
14502}
14503impl SetLogged {
14504 #[inline]
14505 pub fn logged_token(&self) -> Option<SyntaxToken> {
14506 support::token(&self.syntax, SyntaxKind::LOGGED_KW)
14507 }
14508 #[inline]
14509 pub fn set_token(&self) -> Option<SyntaxToken> {
14510 support::token(&self.syntax, SyntaxKind::SET_KW)
14511 }
14512}
14513
14514#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14515pub struct SetMultipleColumns {
14516 pub(crate) syntax: SyntaxNode,
14517}
14518impl SetMultipleColumns {
14519 #[inline]
14520 pub fn column_list(&self) -> Option<ColumnList> {
14521 support::child(&self.syntax)
14522 }
14523 #[inline]
14524 pub fn paren_select(&self) -> Option<ParenSelect> {
14525 support::child(&self.syntax)
14526 }
14527 #[inline]
14528 pub fn set_expr_list(&self) -> Option<SetExprList> {
14529 support::child(&self.syntax)
14530 }
14531 #[inline]
14532 pub fn eq_token(&self) -> Option<SyntaxToken> {
14533 support::token(&self.syntax, SyntaxKind::EQ)
14534 }
14535}
14536
14537#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14538pub struct SetNotNull {
14539 pub(crate) syntax: SyntaxNode,
14540}
14541impl SetNotNull {
14542 #[inline]
14543 pub fn not_token(&self) -> Option<SyntaxToken> {
14544 support::token(&self.syntax, SyntaxKind::NOT_KW)
14545 }
14546 #[inline]
14547 pub fn null_token(&self) -> Option<SyntaxToken> {
14548 support::token(&self.syntax, SyntaxKind::NULL_KW)
14549 }
14550 #[inline]
14551 pub fn set_token(&self) -> Option<SyntaxToken> {
14552 support::token(&self.syntax, SyntaxKind::SET_KW)
14553 }
14554}
14555
14556#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14557pub struct SetNullColumns {
14558 pub(crate) syntax: SyntaxNode,
14559}
14560impl SetNullColumns {
14561 #[inline]
14562 pub fn column_list(&self) -> Option<ColumnList> {
14563 support::child(&self.syntax)
14564 }
14565 #[inline]
14566 pub fn null_token(&self) -> Option<SyntaxToken> {
14567 support::token(&self.syntax, SyntaxKind::NULL_KW)
14568 }
14569 #[inline]
14570 pub fn set_token(&self) -> Option<SyntaxToken> {
14571 support::token(&self.syntax, SyntaxKind::SET_KW)
14572 }
14573}
14574
14575#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14576pub struct SetOptions {
14577 pub(crate) syntax: SyntaxNode,
14578}
14579impl SetOptions {
14580 #[inline]
14581 pub fn attribute_list(&self) -> Option<AttributeList> {
14582 support::child(&self.syntax)
14583 }
14584 #[inline]
14585 pub fn set_token(&self) -> Option<SyntaxToken> {
14586 support::token(&self.syntax, SyntaxKind::SET_KW)
14587 }
14588}
14589
14590#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14591pub struct SetOptionsList {
14592 pub(crate) syntax: SyntaxNode,
14593}
14594impl SetOptionsList {
14595 #[inline]
14596 pub fn alter_option_list(&self) -> Option<AlterOptionList> {
14597 support::child(&self.syntax)
14598 }
14599 #[inline]
14600 pub fn options_token(&self) -> Option<SyntaxToken> {
14601 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
14602 }
14603 #[inline]
14604 pub fn set_token(&self) -> Option<SyntaxToken> {
14605 support::token(&self.syntax, SyntaxKind::SET_KW)
14606 }
14607}
14608
14609#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14610pub struct SetRole {
14611 pub(crate) syntax: SyntaxNode,
14612}
14613impl SetRole {
14614 #[inline]
14615 pub fn role_ref(&self) -> Option<RoleRef> {
14616 support::child(&self.syntax)
14617 }
14618 #[inline]
14619 pub fn local_token(&self) -> Option<SyntaxToken> {
14620 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14621 }
14622 #[inline]
14623 pub fn none_token(&self) -> Option<SyntaxToken> {
14624 support::token(&self.syntax, SyntaxKind::NONE_KW)
14625 }
14626 #[inline]
14627 pub fn reset_token(&self) -> Option<SyntaxToken> {
14628 support::token(&self.syntax, SyntaxKind::RESET_KW)
14629 }
14630 #[inline]
14631 pub fn role_token(&self) -> Option<SyntaxToken> {
14632 support::token(&self.syntax, SyntaxKind::ROLE_KW)
14633 }
14634 #[inline]
14635 pub fn session_token(&self) -> Option<SyntaxToken> {
14636 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14637 }
14638 #[inline]
14639 pub fn set_token(&self) -> Option<SyntaxToken> {
14640 support::token(&self.syntax, SyntaxKind::SET_KW)
14641 }
14642}
14643
14644#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14645pub struct SetSchema {
14646 pub(crate) syntax: SyntaxNode,
14647}
14648impl SetSchema {
14649 #[inline]
14650 pub fn name_ref(&self) -> Option<NameRef> {
14651 support::child(&self.syntax)
14652 }
14653 #[inline]
14654 pub fn schema_token(&self) -> Option<SyntaxToken> {
14655 support::token(&self.syntax, SyntaxKind::SCHEMA_KW)
14656 }
14657 #[inline]
14658 pub fn set_token(&self) -> Option<SyntaxToken> {
14659 support::token(&self.syntax, SyntaxKind::SET_KW)
14660 }
14661}
14662
14663#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14664pub struct SetSequenceOption {
14665 pub(crate) syntax: SyntaxNode,
14666}
14667impl SetSequenceOption {
14668 #[inline]
14669 pub fn set_token(&self) -> Option<SyntaxToken> {
14670 support::token(&self.syntax, SyntaxKind::SET_KW)
14671 }
14672}
14673
14674#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14675pub struct SetSessionAuth {
14676 pub(crate) syntax: SyntaxNode,
14677}
14678impl SetSessionAuth {
14679 #[inline]
14680 pub fn literal(&self) -> Option<Literal> {
14681 support::child(&self.syntax)
14682 }
14683 #[inline]
14684 pub fn role_ref(&self) -> Option<RoleRef> {
14685 support::child(&self.syntax)
14686 }
14687 #[inline]
14688 pub fn authorization_token(&self) -> Option<SyntaxToken> {
14689 support::token(&self.syntax, SyntaxKind::AUTHORIZATION_KW)
14690 }
14691 #[inline]
14692 pub fn default_token(&self) -> Option<SyntaxToken> {
14693 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
14694 }
14695 #[inline]
14696 pub fn local_token(&self) -> Option<SyntaxToken> {
14697 support::token(&self.syntax, SyntaxKind::LOCAL_KW)
14698 }
14699 #[inline]
14700 pub fn session_token(&self) -> Option<SyntaxToken> {
14701 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14702 }
14703 #[inline]
14704 pub fn set_token(&self) -> Option<SyntaxToken> {
14705 support::token(&self.syntax, SyntaxKind::SET_KW)
14706 }
14707}
14708
14709#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14710pub struct SetSingleColumn {
14711 pub(crate) syntax: SyntaxNode,
14712}
14713impl SetSingleColumn {
14714 #[inline]
14715 pub fn column(&self) -> Option<Column> {
14716 support::child(&self.syntax)
14717 }
14718 #[inline]
14719 pub fn set_expr(&self) -> Option<SetExpr> {
14720 support::child(&self.syntax)
14721 }
14722 #[inline]
14723 pub fn eq_token(&self) -> Option<SyntaxToken> {
14724 support::token(&self.syntax, SyntaxKind::EQ)
14725 }
14726}
14727
14728#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14729pub struct SetStatistics {
14730 pub(crate) syntax: SyntaxNode,
14731}
14732impl SetStatistics {
14733 #[inline]
14734 pub fn set_token(&self) -> Option<SyntaxToken> {
14735 support::token(&self.syntax, SyntaxKind::SET_KW)
14736 }
14737 #[inline]
14738 pub fn statistics_token(&self) -> Option<SyntaxToken> {
14739 support::token(&self.syntax, SyntaxKind::STATISTICS_KW)
14740 }
14741}
14742
14743#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14744pub struct SetStorage {
14745 pub(crate) syntax: SyntaxNode,
14746}
14747impl SetStorage {
14748 #[inline]
14749 pub fn set_token(&self) -> Option<SyntaxToken> {
14750 support::token(&self.syntax, SyntaxKind::SET_KW)
14751 }
14752 #[inline]
14753 pub fn storage_token(&self) -> Option<SyntaxToken> {
14754 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
14755 }
14756}
14757
14758#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14759pub struct SetTablespace {
14760 pub(crate) syntax: SyntaxNode,
14761}
14762impl SetTablespace {
14763 #[inline]
14764 pub fn path(&self) -> Option<Path> {
14765 support::child(&self.syntax)
14766 }
14767 #[inline]
14768 pub fn set_token(&self) -> Option<SyntaxToken> {
14769 support::token(&self.syntax, SyntaxKind::SET_KW)
14770 }
14771 #[inline]
14772 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
14773 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
14774 }
14775}
14776
14777#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14778pub struct SetTransaction {
14779 pub(crate) syntax: SyntaxNode,
14780}
14781impl SetTransaction {
14782 #[inline]
14783 pub fn literal(&self) -> Option<Literal> {
14784 support::child(&self.syntax)
14785 }
14786 #[inline]
14787 pub fn transaction_mode_list(&self) -> Option<TransactionModeList> {
14788 support::child(&self.syntax)
14789 }
14790 #[inline]
14791 pub fn as_token(&self) -> Option<SyntaxToken> {
14792 support::token(&self.syntax, SyntaxKind::AS_KW)
14793 }
14794 #[inline]
14795 pub fn characteristics_token(&self) -> Option<SyntaxToken> {
14796 support::token(&self.syntax, SyntaxKind::CHARACTERISTICS_KW)
14797 }
14798 #[inline]
14799 pub fn session_token(&self) -> Option<SyntaxToken> {
14800 support::token(&self.syntax, SyntaxKind::SESSION_KW)
14801 }
14802 #[inline]
14803 pub fn set_token(&self) -> Option<SyntaxToken> {
14804 support::token(&self.syntax, SyntaxKind::SET_KW)
14805 }
14806 #[inline]
14807 pub fn snapshot_token(&self) -> Option<SyntaxToken> {
14808 support::token(&self.syntax, SyntaxKind::SNAPSHOT_KW)
14809 }
14810 #[inline]
14811 pub fn transaction_token(&self) -> Option<SyntaxToken> {
14812 support::token(&self.syntax, SyntaxKind::TRANSACTION_KW)
14813 }
14814}
14815
14816#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14817pub struct SetType {
14818 pub(crate) syntax: SyntaxNode,
14819}
14820impl SetType {
14821 #[inline]
14822 pub fn collate(&self) -> Option<Collate> {
14823 support::child(&self.syntax)
14824 }
14825 #[inline]
14826 pub fn ty(&self) -> Option<Type> {
14827 support::child(&self.syntax)
14828 }
14829 #[inline]
14830 pub fn set_token(&self) -> Option<SyntaxToken> {
14831 support::token(&self.syntax, SyntaxKind::SET_KW)
14832 }
14833 #[inline]
14834 pub fn type_token(&self) -> Option<SyntaxToken> {
14835 support::token(&self.syntax, SyntaxKind::TYPE_KW)
14836 }
14837}
14838
14839#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14840pub struct SetUnlogged {
14841 pub(crate) syntax: SyntaxNode,
14842}
14843impl SetUnlogged {
14844 #[inline]
14845 pub fn set_token(&self) -> Option<SyntaxToken> {
14846 support::token(&self.syntax, SyntaxKind::SET_KW)
14847 }
14848 #[inline]
14849 pub fn unlogged_token(&self) -> Option<SyntaxToken> {
14850 support::token(&self.syntax, SyntaxKind::UNLOGGED_KW)
14851 }
14852}
14853
14854#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14855pub struct SetWithoutCluster {
14856 pub(crate) syntax: SyntaxNode,
14857}
14858impl SetWithoutCluster {
14859 #[inline]
14860 pub fn cluster_token(&self) -> Option<SyntaxToken> {
14861 support::token(&self.syntax, SyntaxKind::CLUSTER_KW)
14862 }
14863 #[inline]
14864 pub fn set_token(&self) -> Option<SyntaxToken> {
14865 support::token(&self.syntax, SyntaxKind::SET_KW)
14866 }
14867 #[inline]
14868 pub fn without_token(&self) -> Option<SyntaxToken> {
14869 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14870 }
14871}
14872
14873#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14874pub struct SetWithoutOids {
14875 pub(crate) syntax: SyntaxNode,
14876}
14877impl SetWithoutOids {
14878 #[inline]
14879 pub fn oids_token(&self) -> Option<SyntaxToken> {
14880 support::token(&self.syntax, SyntaxKind::OIDS_KW)
14881 }
14882 #[inline]
14883 pub fn set_token(&self) -> Option<SyntaxToken> {
14884 support::token(&self.syntax, SyntaxKind::SET_KW)
14885 }
14886 #[inline]
14887 pub fn without_token(&self) -> Option<SyntaxToken> {
14888 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
14889 }
14890}
14891
14892#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14893pub struct Show {
14894 pub(crate) syntax: SyntaxNode,
14895}
14896impl Show {
14897 #[inline]
14898 pub fn show_token(&self) -> Option<SyntaxToken> {
14899 support::token(&self.syntax, SyntaxKind::SHOW_KW)
14900 }
14901}
14902
14903#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14904pub struct SimilarTo {
14905 pub(crate) syntax: SyntaxNode,
14906}
14907impl SimilarTo {
14908 #[inline]
14909 pub fn similar_token(&self) -> Option<SyntaxToken> {
14910 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
14911 }
14912 #[inline]
14913 pub fn to_token(&self) -> Option<SyntaxToken> {
14914 support::token(&self.syntax, SyntaxKind::TO_KW)
14915 }
14916}
14917
14918#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14919pub struct SliceExpr {
14920 pub(crate) syntax: SyntaxNode,
14921}
14922impl SliceExpr {
14923 #[inline]
14924 pub fn l_brack_token(&self) -> Option<SyntaxToken> {
14925 support::token(&self.syntax, SyntaxKind::L_BRACK)
14926 }
14927 #[inline]
14928 pub fn r_brack_token(&self) -> Option<SyntaxToken> {
14929 support::token(&self.syntax, SyntaxKind::R_BRACK)
14930 }
14931 #[inline]
14932 pub fn colon_token(&self) -> Option<SyntaxToken> {
14933 support::token(&self.syntax, SyntaxKind::COLON)
14934 }
14935}
14936
14937#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14938pub struct SomeFn {
14939 pub(crate) syntax: SyntaxNode,
14940}
14941impl SomeFn {
14942 #[inline]
14943 pub fn expr(&self) -> Option<Expr> {
14944 support::child(&self.syntax)
14945 }
14946 #[inline]
14947 pub fn select_variant(&self) -> Option<SelectVariant> {
14948 support::child(&self.syntax)
14949 }
14950 #[inline]
14951 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
14952 support::token(&self.syntax, SyntaxKind::L_PAREN)
14953 }
14954 #[inline]
14955 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
14956 support::token(&self.syntax, SyntaxKind::R_PAREN)
14957 }
14958 #[inline]
14959 pub fn some_token(&self) -> Option<SyntaxToken> {
14960 support::token(&self.syntax, SyntaxKind::SOME_KW)
14961 }
14962}
14963
14964#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14965pub struct SortAsc {
14966 pub(crate) syntax: SyntaxNode,
14967}
14968impl SortAsc {
14969 #[inline]
14970 pub fn asc_token(&self) -> Option<SyntaxToken> {
14971 support::token(&self.syntax, SyntaxKind::ASC_KW)
14972 }
14973}
14974
14975#[derive(Debug, Clone, PartialEq, Eq, Hash)]
14976pub struct SortBy {
14977 pub(crate) syntax: SyntaxNode,
14978}
14979impl SortBy {
14980 #[inline]
14981 pub fn expr(&self) -> Option<Expr> {
14982 support::child(&self.syntax)
14983 }
14984 #[inline]
14985 pub fn nulls_first(&self) -> Option<NullsFirst> {
14986 support::child(&self.syntax)
14987 }
14988 #[inline]
14989 pub fn nulls_last(&self) -> Option<NullsLast> {
14990 support::child(&self.syntax)
14991 }
14992 #[inline]
14993 pub fn sort_asc(&self) -> Option<SortAsc> {
14994 support::child(&self.syntax)
14995 }
14996 #[inline]
14997 pub fn sort_desc(&self) -> Option<SortDesc> {
14998 support::child(&self.syntax)
14999 }
15000 #[inline]
15001 pub fn sort_using(&self) -> Option<SortUsing> {
15002 support::child(&self.syntax)
15003 }
15004}
15005
15006#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15007pub struct SortByList {
15008 pub(crate) syntax: SyntaxNode,
15009}
15010impl SortByList {
15011 #[inline]
15012 pub fn sort_bys(&self) -> AstChildren<SortBy> {
15013 support::children(&self.syntax)
15014 }
15015}
15016
15017#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15018pub struct SortDesc {
15019 pub(crate) syntax: SyntaxNode,
15020}
15021impl SortDesc {
15022 #[inline]
15023 pub fn desc_token(&self) -> Option<SyntaxToken> {
15024 support::token(&self.syntax, SyntaxKind::DESC_KW)
15025 }
15026}
15027
15028#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15029pub struct SortUsing {
15030 pub(crate) syntax: SyntaxNode,
15031}
15032impl SortUsing {
15033 #[inline]
15034 pub fn op(&self) -> Option<Op> {
15035 support::child(&self.syntax)
15036 }
15037 #[inline]
15038 pub fn using_token(&self) -> Option<SyntaxToken> {
15039 support::token(&self.syntax, SyntaxKind::USING_KW)
15040 }
15041}
15042
15043#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15044pub struct SourceFile {
15045 pub(crate) syntax: SyntaxNode,
15046}
15047impl SourceFile {
15048 #[inline]
15049 pub fn stmts(&self) -> AstChildren<Stmt> {
15050 support::children(&self.syntax)
15051 }
15052}
15053
15054#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15055pub struct SplitPartition {
15056 pub(crate) syntax: SyntaxNode,
15057}
15058impl SplitPartition {
15059 #[inline]
15060 pub fn partition_list(&self) -> Option<PartitionList> {
15061 support::child(&self.syntax)
15062 }
15063 #[inline]
15064 pub fn into_token(&self) -> Option<SyntaxToken> {
15065 support::token(&self.syntax, SyntaxKind::INTO_KW)
15066 }
15067 #[inline]
15068 pub fn partition_token(&self) -> Option<SyntaxToken> {
15069 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
15070 }
15071 #[inline]
15072 pub fn split_token(&self) -> Option<SyntaxToken> {
15073 support::token(&self.syntax, SyntaxKind::SPLIT_KW)
15074 }
15075}
15076
15077#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15078pub struct Storage {
15079 pub(crate) syntax: SyntaxNode,
15080}
15081impl Storage {
15082 #[inline]
15083 pub fn default_token(&self) -> Option<SyntaxToken> {
15084 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
15085 }
15086 #[inline]
15087 pub fn external_token(&self) -> Option<SyntaxToken> {
15088 support::token(&self.syntax, SyntaxKind::EXTERNAL_KW)
15089 }
15090 #[inline]
15091 pub fn ident_token(&self) -> Option<SyntaxToken> {
15092 support::token(&self.syntax, SyntaxKind::IDENT)
15093 }
15094 #[inline]
15095 pub fn storage_token(&self) -> Option<SyntaxToken> {
15096 support::token(&self.syntax, SyntaxKind::STORAGE_KW)
15097 }
15098}
15099
15100#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15101pub struct StrictFuncOption {
15102 pub(crate) syntax: SyntaxNode,
15103}
15104impl StrictFuncOption {
15105 #[inline]
15106 pub fn called_token(&self) -> Option<SyntaxToken> {
15107 support::token(&self.syntax, SyntaxKind::CALLED_KW)
15108 }
15109 #[inline]
15110 pub fn input_token(&self) -> Option<SyntaxToken> {
15111 support::token(&self.syntax, SyntaxKind::INPUT_KW)
15112 }
15113 #[inline]
15114 pub fn null_token(&self) -> Option<SyntaxToken> {
15115 support::token(&self.syntax, SyntaxKind::NULL_KW)
15116 }
15117 #[inline]
15118 pub fn on_token(&self) -> Option<SyntaxToken> {
15119 support::token(&self.syntax, SyntaxKind::ON_KW)
15120 }
15121 #[inline]
15122 pub fn returns_token(&self) -> Option<SyntaxToken> {
15123 support::token(&self.syntax, SyntaxKind::RETURNS_KW)
15124 }
15125 #[inline]
15126 pub fn strict_token(&self) -> Option<SyntaxToken> {
15127 support::token(&self.syntax, SyntaxKind::STRICT_KW)
15128 }
15129}
15130
15131#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15132pub struct SubstringFn {
15133 pub(crate) syntax: SyntaxNode,
15134}
15135impl SubstringFn {
15136 #[inline]
15137 pub fn expr(&self) -> Option<Expr> {
15138 support::child(&self.syntax)
15139 }
15140 #[inline]
15141 pub fn exprs(&self) -> AstChildren<Expr> {
15142 support::children(&self.syntax)
15143 }
15144 #[inline]
15145 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15146 support::token(&self.syntax, SyntaxKind::L_PAREN)
15147 }
15148 #[inline]
15149 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15150 support::token(&self.syntax, SyntaxKind::R_PAREN)
15151 }
15152 #[inline]
15153 pub fn for_token(&self) -> Option<SyntaxToken> {
15154 support::token(&self.syntax, SyntaxKind::FOR_KW)
15155 }
15156 #[inline]
15157 pub fn from_token(&self) -> Option<SyntaxToken> {
15158 support::token(&self.syntax, SyntaxKind::FROM_KW)
15159 }
15160 #[inline]
15161 pub fn similar_token(&self) -> Option<SyntaxToken> {
15162 support::token(&self.syntax, SyntaxKind::SIMILAR_KW)
15163 }
15164 #[inline]
15165 pub fn substring_token(&self) -> Option<SyntaxToken> {
15166 support::token(&self.syntax, SyntaxKind::SUBSTRING_KW)
15167 }
15168}
15169
15170#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15171pub struct SupportFuncOption {
15172 pub(crate) syntax: SyntaxNode,
15173}
15174impl SupportFuncOption {
15175 #[inline]
15176 pub fn support_token(&self) -> Option<SyntaxToken> {
15177 support::token(&self.syntax, SyntaxKind::SUPPORT_KW)
15178 }
15179}
15180
15181#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15182pub struct Table {
15183 pub(crate) syntax: SyntaxNode,
15184}
15185impl Table {
15186 #[inline]
15187 pub fn relation_name(&self) -> Option<RelationName> {
15188 support::child(&self.syntax)
15189 }
15190 #[inline]
15191 pub fn with_clause(&self) -> Option<WithClause> {
15192 support::child(&self.syntax)
15193 }
15194 #[inline]
15195 pub fn table_token(&self) -> Option<SyntaxToken> {
15196 support::token(&self.syntax, SyntaxKind::TABLE_KW)
15197 }
15198}
15199
15200#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15201pub struct TableAndColumns {
15202 pub(crate) syntax: SyntaxNode,
15203}
15204impl TableAndColumns {
15205 #[inline]
15206 pub fn column_list(&self) -> Option<ColumnList> {
15207 support::child(&self.syntax)
15208 }
15209 #[inline]
15210 pub fn relation_name(&self) -> Option<RelationName> {
15211 support::child(&self.syntax)
15212 }
15213}
15214
15215#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15216pub struct TableAndColumnsList {
15217 pub(crate) syntax: SyntaxNode,
15218}
15219impl TableAndColumnsList {
15220 #[inline]
15221 pub fn table_and_columnss(&self) -> AstChildren<TableAndColumns> {
15222 support::children(&self.syntax)
15223 }
15224}
15225
15226#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15227pub struct TableArgList {
15228 pub(crate) syntax: SyntaxNode,
15229}
15230impl TableArgList {
15231 #[inline]
15232 pub fn args(&self) -> AstChildren<TableArg> {
15233 support::children(&self.syntax)
15234 }
15235 #[inline]
15236 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15237 support::token(&self.syntax, SyntaxKind::L_PAREN)
15238 }
15239 #[inline]
15240 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15241 support::token(&self.syntax, SyntaxKind::R_PAREN)
15242 }
15243}
15244
15245#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15246pub struct TableList {
15247 pub(crate) syntax: SyntaxNode,
15248}
15249impl TableList {
15250 #[inline]
15251 pub fn relation_names(&self) -> AstChildren<RelationName> {
15252 support::children(&self.syntax)
15253 }
15254}
15255
15256#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15257pub struct TablesampleClause {
15258 pub(crate) syntax: SyntaxNode,
15259}
15260impl TablesampleClause {
15261 #[inline]
15262 pub fn call_expr(&self) -> Option<CallExpr> {
15263 support::child(&self.syntax)
15264 }
15265 #[inline]
15266 pub fn repeatable_clause(&self) -> Option<RepeatableClause> {
15267 support::child(&self.syntax)
15268 }
15269 #[inline]
15270 pub fn tablesample_token(&self) -> Option<SyntaxToken> {
15271 support::token(&self.syntax, SyntaxKind::TABLESAMPLE_KW)
15272 }
15273}
15274
15275#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15276pub struct Tablespace {
15277 pub(crate) syntax: SyntaxNode,
15278}
15279impl Tablespace {
15280 #[inline]
15281 pub fn name_ref(&self) -> Option<NameRef> {
15282 support::child(&self.syntax)
15283 }
15284 #[inline]
15285 pub fn tablespace_token(&self) -> Option<SyntaxToken> {
15286 support::token(&self.syntax, SyntaxKind::TABLESPACE_KW)
15287 }
15288}
15289
15290#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15291pub struct Target {
15292 pub(crate) syntax: SyntaxNode,
15293}
15294impl Target {
15295 #[inline]
15296 pub fn as_name(&self) -> Option<AsName> {
15297 support::child(&self.syntax)
15298 }
15299 #[inline]
15300 pub fn expr(&self) -> Option<Expr> {
15301 support::child(&self.syntax)
15302 }
15303 #[inline]
15304 pub fn star_token(&self) -> Option<SyntaxToken> {
15305 support::token(&self.syntax, SyntaxKind::STAR)
15306 }
15307}
15308
15309#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15310pub struct TargetList {
15311 pub(crate) syntax: SyntaxNode,
15312}
15313impl TargetList {
15314 #[inline]
15315 pub fn targets(&self) -> AstChildren<Target> {
15316 support::children(&self.syntax)
15317 }
15318}
15319
15320#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15321pub struct TimeType {
15322 pub(crate) syntax: SyntaxNode,
15323}
15324impl TimeType {
15325 #[inline]
15326 pub fn literal(&self) -> Option<Literal> {
15327 support::child(&self.syntax)
15328 }
15329 #[inline]
15330 pub fn timezone(&self) -> Option<Timezone> {
15331 support::child(&self.syntax)
15332 }
15333 #[inline]
15334 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15335 support::token(&self.syntax, SyntaxKind::L_PAREN)
15336 }
15337 #[inline]
15338 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15339 support::token(&self.syntax, SyntaxKind::R_PAREN)
15340 }
15341 #[inline]
15342 pub fn time_token(&self) -> Option<SyntaxToken> {
15343 support::token(&self.syntax, SyntaxKind::TIME_KW)
15344 }
15345 #[inline]
15346 pub fn timestamp_token(&self) -> Option<SyntaxToken> {
15347 support::token(&self.syntax, SyntaxKind::TIMESTAMP_KW)
15348 }
15349}
15350
15351#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15352pub struct Timing {
15353 pub(crate) syntax: SyntaxNode,
15354}
15355impl Timing {
15356 #[inline]
15357 pub fn after_token(&self) -> Option<SyntaxToken> {
15358 support::token(&self.syntax, SyntaxKind::AFTER_KW)
15359 }
15360 #[inline]
15361 pub fn before_token(&self) -> Option<SyntaxToken> {
15362 support::token(&self.syntax, SyntaxKind::BEFORE_KW)
15363 }
15364 #[inline]
15365 pub fn instead_token(&self) -> Option<SyntaxToken> {
15366 support::token(&self.syntax, SyntaxKind::INSTEAD_KW)
15367 }
15368 #[inline]
15369 pub fn of_token(&self) -> Option<SyntaxToken> {
15370 support::token(&self.syntax, SyntaxKind::OF_KW)
15371 }
15372}
15373
15374#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15375pub struct TransactionModeList {
15376 pub(crate) syntax: SyntaxNode,
15377}
15378impl TransactionModeList {
15379 #[inline]
15380 pub fn transaction_modes(&self) -> AstChildren<TransactionMode> {
15381 support::children(&self.syntax)
15382 }
15383}
15384
15385#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15386pub struct TransformFromFunc {
15387 pub(crate) syntax: SyntaxNode,
15388}
15389impl TransformFromFunc {
15390 #[inline]
15391 pub fn function_sig(&self) -> Option<FunctionSig> {
15392 support::child(&self.syntax)
15393 }
15394 #[inline]
15395 pub fn from_token(&self) -> Option<SyntaxToken> {
15396 support::token(&self.syntax, SyntaxKind::FROM_KW)
15397 }
15398 #[inline]
15399 pub fn function_token(&self) -> Option<SyntaxToken> {
15400 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
15401 }
15402 #[inline]
15403 pub fn sql_token(&self) -> Option<SyntaxToken> {
15404 support::token(&self.syntax, SyntaxKind::SQL_KW)
15405 }
15406 #[inline]
15407 pub fn with_token(&self) -> Option<SyntaxToken> {
15408 support::token(&self.syntax, SyntaxKind::WITH_KW)
15409 }
15410}
15411
15412#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15413pub struct TransformFuncOption {
15414 pub(crate) syntax: SyntaxNode,
15415}
15416impl TransformFuncOption {
15417 #[inline]
15418 pub fn transform_token(&self) -> Option<SyntaxToken> {
15419 support::token(&self.syntax, SyntaxKind::TRANSFORM_KW)
15420 }
15421}
15422
15423#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15424pub struct TransformToFunc {
15425 pub(crate) syntax: SyntaxNode,
15426}
15427impl TransformToFunc {
15428 #[inline]
15429 pub fn function_sig(&self) -> Option<FunctionSig> {
15430 support::child(&self.syntax)
15431 }
15432 #[inline]
15433 pub fn function_token(&self) -> Option<SyntaxToken> {
15434 support::token(&self.syntax, SyntaxKind::FUNCTION_KW)
15435 }
15436 #[inline]
15437 pub fn sql_token(&self) -> Option<SyntaxToken> {
15438 support::token(&self.syntax, SyntaxKind::SQL_KW)
15439 }
15440 #[inline]
15441 pub fn to_token(&self) -> Option<SyntaxToken> {
15442 support::token(&self.syntax, SyntaxKind::TO_KW)
15443 }
15444 #[inline]
15445 pub fn with_token(&self) -> Option<SyntaxToken> {
15446 support::token(&self.syntax, SyntaxKind::WITH_KW)
15447 }
15448}
15449
15450#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15451pub struct TriggerEvent {
15452 pub(crate) syntax: SyntaxNode,
15453}
15454impl TriggerEvent {
15455 #[inline]
15456 pub fn trigger_event_update(&self) -> Option<TriggerEventUpdate> {
15457 support::child(&self.syntax)
15458 }
15459 #[inline]
15460 pub fn delete_token(&self) -> Option<SyntaxToken> {
15461 support::token(&self.syntax, SyntaxKind::DELETE_KW)
15462 }
15463 #[inline]
15464 pub fn insert_token(&self) -> Option<SyntaxToken> {
15465 support::token(&self.syntax, SyntaxKind::INSERT_KW)
15466 }
15467 #[inline]
15468 pub fn truncate_token(&self) -> Option<SyntaxToken> {
15469 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
15470 }
15471}
15472
15473#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15474pub struct TriggerEventList {
15475 pub(crate) syntax: SyntaxNode,
15476}
15477impl TriggerEventList {
15478 #[inline]
15479 pub fn trigger_events(&self) -> AstChildren<TriggerEvent> {
15480 support::children(&self.syntax)
15481 }
15482}
15483
15484#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15485pub struct TriggerEventUpdate {
15486 pub(crate) syntax: SyntaxNode,
15487}
15488impl TriggerEventUpdate {
15489 #[inline]
15490 pub fn name_refs(&self) -> AstChildren<NameRef> {
15491 support::children(&self.syntax)
15492 }
15493 #[inline]
15494 pub fn of_token(&self) -> Option<SyntaxToken> {
15495 support::token(&self.syntax, SyntaxKind::OF_KW)
15496 }
15497 #[inline]
15498 pub fn update_token(&self) -> Option<SyntaxToken> {
15499 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
15500 }
15501}
15502
15503#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15504pub struct TrimFn {
15505 pub(crate) syntax: SyntaxNode,
15506}
15507impl TrimFn {
15508 #[inline]
15509 pub fn expr(&self) -> Option<Expr> {
15510 support::child(&self.syntax)
15511 }
15512 #[inline]
15513 pub fn exprs(&self) -> AstChildren<Expr> {
15514 support::children(&self.syntax)
15515 }
15516 #[inline]
15517 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15518 support::token(&self.syntax, SyntaxKind::L_PAREN)
15519 }
15520 #[inline]
15521 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15522 support::token(&self.syntax, SyntaxKind::R_PAREN)
15523 }
15524 #[inline]
15525 pub fn from_token(&self) -> Option<SyntaxToken> {
15526 support::token(&self.syntax, SyntaxKind::FROM_KW)
15527 }
15528 #[inline]
15529 pub fn trim_token(&self) -> Option<SyntaxToken> {
15530 support::token(&self.syntax, SyntaxKind::TRIM_KW)
15531 }
15532}
15533
15534#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15535pub struct Truncate {
15536 pub(crate) syntax: SyntaxNode,
15537}
15538impl Truncate {
15539 #[inline]
15540 pub fn table_list(&self) -> Option<TableList> {
15541 support::child(&self.syntax)
15542 }
15543 #[inline]
15544 pub fn cascade_token(&self) -> Option<SyntaxToken> {
15545 support::token(&self.syntax, SyntaxKind::CASCADE_KW)
15546 }
15547 #[inline]
15548 pub fn continue_token(&self) -> Option<SyntaxToken> {
15549 support::token(&self.syntax, SyntaxKind::CONTINUE_KW)
15550 }
15551 #[inline]
15552 pub fn identity_token(&self) -> Option<SyntaxToken> {
15553 support::token(&self.syntax, SyntaxKind::IDENTITY_KW)
15554 }
15555 #[inline]
15556 pub fn restart_token(&self) -> Option<SyntaxToken> {
15557 support::token(&self.syntax, SyntaxKind::RESTART_KW)
15558 }
15559 #[inline]
15560 pub fn restrict_token(&self) -> Option<SyntaxToken> {
15561 support::token(&self.syntax, SyntaxKind::RESTRICT_KW)
15562 }
15563 #[inline]
15564 pub fn table_token(&self) -> Option<SyntaxToken> {
15565 support::token(&self.syntax, SyntaxKind::TABLE_KW)
15566 }
15567 #[inline]
15568 pub fn truncate_token(&self) -> Option<SyntaxToken> {
15569 support::token(&self.syntax, SyntaxKind::TRUNCATE_KW)
15570 }
15571}
15572
15573#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15574pub struct TupleExpr {
15575 pub(crate) syntax: SyntaxNode,
15576}
15577impl TupleExpr {
15578 #[inline]
15579 pub fn exprs(&self) -> AstChildren<Expr> {
15580 support::children(&self.syntax)
15581 }
15582 #[inline]
15583 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15584 support::token(&self.syntax, SyntaxKind::L_PAREN)
15585 }
15586 #[inline]
15587 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15588 support::token(&self.syntax, SyntaxKind::R_PAREN)
15589 }
15590}
15591
15592#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15593pub struct UnicodeNormalForm {
15594 pub(crate) syntax: SyntaxNode,
15595}
15596impl UnicodeNormalForm {
15597 #[inline]
15598 pub fn nfc_token(&self) -> Option<SyntaxToken> {
15599 support::token(&self.syntax, SyntaxKind::NFC_KW)
15600 }
15601 #[inline]
15602 pub fn nfd_token(&self) -> Option<SyntaxToken> {
15603 support::token(&self.syntax, SyntaxKind::NFD_KW)
15604 }
15605 #[inline]
15606 pub fn nfkc_token(&self) -> Option<SyntaxToken> {
15607 support::token(&self.syntax, SyntaxKind::NFKC_KW)
15608 }
15609 #[inline]
15610 pub fn nfkd_token(&self) -> Option<SyntaxToken> {
15611 support::token(&self.syntax, SyntaxKind::NFKD_KW)
15612 }
15613}
15614
15615#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15616pub struct UniqueConstraint {
15617 pub(crate) syntax: SyntaxNode,
15618}
15619impl UniqueConstraint {
15620 #[inline]
15621 pub fn column_list(&self) -> Option<ColumnList> {
15622 support::child(&self.syntax)
15623 }
15624 #[inline]
15625 pub fn constraint_name(&self) -> Option<ConstraintName> {
15626 support::child(&self.syntax)
15627 }
15628 #[inline]
15629 pub fn nulls_distinct(&self) -> Option<NullsDistinct> {
15630 support::child(&self.syntax)
15631 }
15632 #[inline]
15633 pub fn nulls_not_distinct(&self) -> Option<NullsNotDistinct> {
15634 support::child(&self.syntax)
15635 }
15636 #[inline]
15637 pub fn using_index(&self) -> Option<UsingIndex> {
15638 support::child(&self.syntax)
15639 }
15640 #[inline]
15641 pub fn unique_token(&self) -> Option<SyntaxToken> {
15642 support::token(&self.syntax, SyntaxKind::UNIQUE_KW)
15643 }
15644}
15645
15646#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15647pub struct Unlisten {
15648 pub(crate) syntax: SyntaxNode,
15649}
15650impl Unlisten {
15651 #[inline]
15652 pub fn name_ref(&self) -> Option<NameRef> {
15653 support::child(&self.syntax)
15654 }
15655 #[inline]
15656 pub fn star_token(&self) -> Option<SyntaxToken> {
15657 support::token(&self.syntax, SyntaxKind::STAR)
15658 }
15659 #[inline]
15660 pub fn unlisten_token(&self) -> Option<SyntaxToken> {
15661 support::token(&self.syntax, SyntaxKind::UNLISTEN_KW)
15662 }
15663}
15664
15665#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15666pub struct Update {
15667 pub(crate) syntax: SyntaxNode,
15668}
15669impl Update {
15670 #[inline]
15671 pub fn alias(&self) -> Option<Alias> {
15672 support::child(&self.syntax)
15673 }
15674 #[inline]
15675 pub fn from_clause(&self) -> Option<FromClause> {
15676 support::child(&self.syntax)
15677 }
15678 #[inline]
15679 pub fn relation_name(&self) -> Option<RelationName> {
15680 support::child(&self.syntax)
15681 }
15682 #[inline]
15683 pub fn returning_clause(&self) -> Option<ReturningClause> {
15684 support::child(&self.syntax)
15685 }
15686 #[inline]
15687 pub fn set_clause(&self) -> Option<SetClause> {
15688 support::child(&self.syntax)
15689 }
15690 #[inline]
15691 pub fn where_clause(&self) -> Option<WhereClause> {
15692 support::child(&self.syntax)
15693 }
15694 #[inline]
15695 pub fn with_clause(&self) -> Option<WithClause> {
15696 support::child(&self.syntax)
15697 }
15698 #[inline]
15699 pub fn update_token(&self) -> Option<SyntaxToken> {
15700 support::token(&self.syntax, SyntaxKind::UPDATE_KW)
15701 }
15702}
15703
15704#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15705pub struct UsingClause {
15706 pub(crate) syntax: SyntaxNode,
15707}
15708impl UsingClause {
15709 #[inline]
15710 pub fn from_items(&self) -> AstChildren<FromItem> {
15711 support::children(&self.syntax)
15712 }
15713 #[inline]
15714 pub fn using_token(&self) -> Option<SyntaxToken> {
15715 support::token(&self.syntax, SyntaxKind::USING_KW)
15716 }
15717}
15718
15719#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15720pub struct UsingExprClause {
15721 pub(crate) syntax: SyntaxNode,
15722}
15723impl UsingExprClause {
15724 #[inline]
15725 pub fn expr(&self) -> Option<Expr> {
15726 support::child(&self.syntax)
15727 }
15728 #[inline]
15729 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15730 support::token(&self.syntax, SyntaxKind::L_PAREN)
15731 }
15732 #[inline]
15733 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15734 support::token(&self.syntax, SyntaxKind::R_PAREN)
15735 }
15736 #[inline]
15737 pub fn using_token(&self) -> Option<SyntaxToken> {
15738 support::token(&self.syntax, SyntaxKind::USING_KW)
15739 }
15740}
15741
15742#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15743pub struct UsingIndex {
15744 pub(crate) syntax: SyntaxNode,
15745}
15746impl UsingIndex {
15747 #[inline]
15748 pub fn name_ref(&self) -> Option<NameRef> {
15749 support::child(&self.syntax)
15750 }
15751 #[inline]
15752 pub fn index_token(&self) -> Option<SyntaxToken> {
15753 support::token(&self.syntax, SyntaxKind::INDEX_KW)
15754 }
15755 #[inline]
15756 pub fn using_token(&self) -> Option<SyntaxToken> {
15757 support::token(&self.syntax, SyntaxKind::USING_KW)
15758 }
15759}
15760
15761#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15762pub struct UsingMethod {
15763 pub(crate) syntax: SyntaxNode,
15764}
15765impl UsingMethod {
15766 #[inline]
15767 pub fn name_ref(&self) -> Option<NameRef> {
15768 support::child(&self.syntax)
15769 }
15770 #[inline]
15771 pub fn using_token(&self) -> Option<SyntaxToken> {
15772 support::token(&self.syntax, SyntaxKind::USING_KW)
15773 }
15774}
15775
15776#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15777pub struct UsingOnClause {
15778 pub(crate) syntax: SyntaxNode,
15779}
15780impl UsingOnClause {
15781 #[inline]
15782 pub fn from_item(&self) -> Option<FromItem> {
15783 support::child(&self.syntax)
15784 }
15785 #[inline]
15786 pub fn on_clause(&self) -> Option<OnClause> {
15787 support::child(&self.syntax)
15788 }
15789 #[inline]
15790 pub fn using_token(&self) -> Option<SyntaxToken> {
15791 support::token(&self.syntax, SyntaxKind::USING_KW)
15792 }
15793}
15794
15795#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15796pub struct Vacuum {
15797 pub(crate) syntax: SyntaxNode,
15798}
15799impl Vacuum {
15800 #[inline]
15801 pub fn table_and_columns_list(&self) -> Option<TableAndColumnsList> {
15802 support::child(&self.syntax)
15803 }
15804 #[inline]
15805 pub fn vacuum_option_list(&self) -> Option<VacuumOptionList> {
15806 support::child(&self.syntax)
15807 }
15808 #[inline]
15809 pub fn analyse_token(&self) -> Option<SyntaxToken> {
15810 support::token(&self.syntax, SyntaxKind::ANALYSE_KW)
15811 }
15812 #[inline]
15813 pub fn analyze_token(&self) -> Option<SyntaxToken> {
15814 support::token(&self.syntax, SyntaxKind::ANALYZE_KW)
15815 }
15816 #[inline]
15817 pub fn freeze_token(&self) -> Option<SyntaxToken> {
15818 support::token(&self.syntax, SyntaxKind::FREEZE_KW)
15819 }
15820 #[inline]
15821 pub fn full_token(&self) -> Option<SyntaxToken> {
15822 support::token(&self.syntax, SyntaxKind::FULL_KW)
15823 }
15824 #[inline]
15825 pub fn vacuum_token(&self) -> Option<SyntaxToken> {
15826 support::token(&self.syntax, SyntaxKind::VACUUM_KW)
15827 }
15828 #[inline]
15829 pub fn verbose_token(&self) -> Option<SyntaxToken> {
15830 support::token(&self.syntax, SyntaxKind::VERBOSE_KW)
15831 }
15832}
15833
15834#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15835pub struct VacuumOption {
15836 pub(crate) syntax: SyntaxNode,
15837}
15838impl VacuumOption {
15839 #[inline]
15840 pub fn literal(&self) -> Option<Literal> {
15841 support::child(&self.syntax)
15842 }
15843}
15844
15845#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15846pub struct VacuumOptionList {
15847 pub(crate) syntax: SyntaxNode,
15848}
15849impl VacuumOptionList {
15850 #[inline]
15851 pub fn vacuum_options(&self) -> AstChildren<VacuumOption> {
15852 support::children(&self.syntax)
15853 }
15854 #[inline]
15855 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15856 support::token(&self.syntax, SyntaxKind::L_PAREN)
15857 }
15858 #[inline]
15859 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15860 support::token(&self.syntax, SyntaxKind::R_PAREN)
15861 }
15862}
15863
15864#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15865pub struct ValidateConstraint {
15866 pub(crate) syntax: SyntaxNode,
15867}
15868impl ValidateConstraint {
15869 #[inline]
15870 pub fn name_ref(&self) -> Option<NameRef> {
15871 support::child(&self.syntax)
15872 }
15873 #[inline]
15874 pub fn constraint_token(&self) -> Option<SyntaxToken> {
15875 support::token(&self.syntax, SyntaxKind::CONSTRAINT_KW)
15876 }
15877 #[inline]
15878 pub fn validate_token(&self) -> Option<SyntaxToken> {
15879 support::token(&self.syntax, SyntaxKind::VALIDATE_KW)
15880 }
15881}
15882
15883#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15884pub struct Values {
15885 pub(crate) syntax: SyntaxNode,
15886}
15887impl Values {
15888 #[inline]
15889 pub fn row_list(&self) -> Option<RowList> {
15890 support::child(&self.syntax)
15891 }
15892 #[inline]
15893 pub fn with_clause(&self) -> Option<WithClause> {
15894 support::child(&self.syntax)
15895 }
15896 #[inline]
15897 pub fn values_token(&self) -> Option<SyntaxToken> {
15898 support::token(&self.syntax, SyntaxKind::VALUES_KW)
15899 }
15900}
15901
15902#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15903pub struct Variant {
15904 pub(crate) syntax: SyntaxNode,
15905}
15906impl Variant {
15907 #[inline]
15908 pub fn literal(&self) -> Option<Literal> {
15909 support::child(&self.syntax)
15910 }
15911}
15912
15913#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15914pub struct VariantList {
15915 pub(crate) syntax: SyntaxNode,
15916}
15917impl VariantList {
15918 #[inline]
15919 pub fn variants(&self) -> AstChildren<Variant> {
15920 support::children(&self.syntax)
15921 }
15922 #[inline]
15923 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15924 support::token(&self.syntax, SyntaxKind::L_PAREN)
15925 }
15926 #[inline]
15927 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15928 support::token(&self.syntax, SyntaxKind::R_PAREN)
15929 }
15930}
15931
15932#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15933pub struct VolatilityFuncOption {
15934 pub(crate) syntax: SyntaxNode,
15935}
15936impl VolatilityFuncOption {
15937 #[inline]
15938 pub fn immutable_token(&self) -> Option<SyntaxToken> {
15939 support::token(&self.syntax, SyntaxKind::IMMUTABLE_KW)
15940 }
15941 #[inline]
15942 pub fn stable_token(&self) -> Option<SyntaxToken> {
15943 support::token(&self.syntax, SyntaxKind::STABLE_KW)
15944 }
15945 #[inline]
15946 pub fn volatile_token(&self) -> Option<SyntaxToken> {
15947 support::token(&self.syntax, SyntaxKind::VOLATILE_KW)
15948 }
15949}
15950
15951#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15952pub struct WhenClause {
15953 pub(crate) syntax: SyntaxNode,
15954}
15955impl WhenClause {
15956 #[inline]
15957 pub fn then_token(&self) -> Option<SyntaxToken> {
15958 support::token(&self.syntax, SyntaxKind::THEN_KW)
15959 }
15960 #[inline]
15961 pub fn when_token(&self) -> Option<SyntaxToken> {
15962 support::token(&self.syntax, SyntaxKind::WHEN_KW)
15963 }
15964}
15965
15966#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15967pub struct WhenClauseList {
15968 pub(crate) syntax: SyntaxNode,
15969}
15970impl WhenClauseList {
15971 #[inline]
15972 pub fn when_clause(&self) -> Option<WhenClause> {
15973 support::child(&self.syntax)
15974 }
15975 #[inline]
15976 pub fn when_clauses(&self) -> AstChildren<WhenClause> {
15977 support::children(&self.syntax)
15978 }
15979}
15980
15981#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15982pub struct WhenCondition {
15983 pub(crate) syntax: SyntaxNode,
15984}
15985impl WhenCondition {
15986 #[inline]
15987 pub fn expr(&self) -> Option<Expr> {
15988 support::child(&self.syntax)
15989 }
15990 #[inline]
15991 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
15992 support::token(&self.syntax, SyntaxKind::L_PAREN)
15993 }
15994 #[inline]
15995 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
15996 support::token(&self.syntax, SyntaxKind::R_PAREN)
15997 }
15998 #[inline]
15999 pub fn when_token(&self) -> Option<SyntaxToken> {
16000 support::token(&self.syntax, SyntaxKind::WHEN_KW)
16001 }
16002}
16003
16004#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16005pub struct WhereClause {
16006 pub(crate) syntax: SyntaxNode,
16007}
16008impl WhereClause {
16009 #[inline]
16010 pub fn expr(&self) -> Option<Expr> {
16011 support::child(&self.syntax)
16012 }
16013 #[inline]
16014 pub fn where_token(&self) -> Option<SyntaxToken> {
16015 support::token(&self.syntax, SyntaxKind::WHERE_KW)
16016 }
16017}
16018
16019#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16020pub struct WhereConditionClause {
16021 pub(crate) syntax: SyntaxNode,
16022}
16023impl WhereConditionClause {
16024 #[inline]
16025 pub fn expr(&self) -> Option<Expr> {
16026 support::child(&self.syntax)
16027 }
16028 #[inline]
16029 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16030 support::token(&self.syntax, SyntaxKind::L_PAREN)
16031 }
16032 #[inline]
16033 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16034 support::token(&self.syntax, SyntaxKind::R_PAREN)
16035 }
16036 #[inline]
16037 pub fn where_token(&self) -> Option<SyntaxToken> {
16038 support::token(&self.syntax, SyntaxKind::WHERE_KW)
16039 }
16040}
16041
16042#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16043pub struct WhereCurrentOf {
16044 pub(crate) syntax: SyntaxNode,
16045}
16046impl WhereCurrentOf {
16047 #[inline]
16048 pub fn name_ref(&self) -> Option<NameRef> {
16049 support::child(&self.syntax)
16050 }
16051 #[inline]
16052 pub fn current_token(&self) -> Option<SyntaxToken> {
16053 support::token(&self.syntax, SyntaxKind::CURRENT_KW)
16054 }
16055 #[inline]
16056 pub fn of_token(&self) -> Option<SyntaxToken> {
16057 support::token(&self.syntax, SyntaxKind::OF_KW)
16058 }
16059 #[inline]
16060 pub fn where_token(&self) -> Option<SyntaxToken> {
16061 support::token(&self.syntax, SyntaxKind::WHERE_KW)
16062 }
16063}
16064
16065#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16066pub struct WindowClause {
16067 pub(crate) syntax: SyntaxNode,
16068}
16069impl WindowClause {
16070 #[inline]
16071 pub fn window_defs(&self) -> AstChildren<WindowDef> {
16072 support::children(&self.syntax)
16073 }
16074 #[inline]
16075 pub fn window_token(&self) -> Option<SyntaxToken> {
16076 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
16077 }
16078}
16079
16080#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16081pub struct WindowDef {
16082 pub(crate) syntax: SyntaxNode,
16083}
16084impl WindowDef {
16085 #[inline]
16086 pub fn name(&self) -> Option<Name> {
16087 support::child(&self.syntax)
16088 }
16089 #[inline]
16090 pub fn window_spec(&self) -> Option<WindowSpec> {
16091 support::child(&self.syntax)
16092 }
16093 #[inline]
16094 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16095 support::token(&self.syntax, SyntaxKind::L_PAREN)
16096 }
16097 #[inline]
16098 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16099 support::token(&self.syntax, SyntaxKind::R_PAREN)
16100 }
16101 #[inline]
16102 pub fn as_token(&self) -> Option<SyntaxToken> {
16103 support::token(&self.syntax, SyntaxKind::AS_KW)
16104 }
16105}
16106
16107#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16108pub struct WindowFuncOption {
16109 pub(crate) syntax: SyntaxNode,
16110}
16111impl WindowFuncOption {
16112 #[inline]
16113 pub fn window_token(&self) -> Option<SyntaxToken> {
16114 support::token(&self.syntax, SyntaxKind::WINDOW_KW)
16115 }
16116}
16117
16118#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16119pub struct WindowSpec {
16120 pub(crate) syntax: SyntaxNode,
16121}
16122impl WindowSpec {
16123 #[inline]
16124 pub fn exprs(&self) -> AstChildren<Expr> {
16125 support::children(&self.syntax)
16126 }
16127 #[inline]
16128 pub fn frame_clause(&self) -> Option<FrameClause> {
16129 support::child(&self.syntax)
16130 }
16131 #[inline]
16132 pub fn order_by_clause(&self) -> Option<OrderByClause> {
16133 support::child(&self.syntax)
16134 }
16135 #[inline]
16136 pub fn by_token(&self) -> Option<SyntaxToken> {
16137 support::token(&self.syntax, SyntaxKind::BY_KW)
16138 }
16139 #[inline]
16140 pub fn ident_token(&self) -> Option<SyntaxToken> {
16141 support::token(&self.syntax, SyntaxKind::IDENT)
16142 }
16143 #[inline]
16144 pub fn partition_token(&self) -> Option<SyntaxToken> {
16145 support::token(&self.syntax, SyntaxKind::PARTITION_KW)
16146 }
16147}
16148
16149#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16150pub struct WithCheckExprClause {
16151 pub(crate) syntax: SyntaxNode,
16152}
16153impl WithCheckExprClause {
16154 #[inline]
16155 pub fn expr(&self) -> Option<Expr> {
16156 support::child(&self.syntax)
16157 }
16158 #[inline]
16159 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16160 support::token(&self.syntax, SyntaxKind::L_PAREN)
16161 }
16162 #[inline]
16163 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16164 support::token(&self.syntax, SyntaxKind::R_PAREN)
16165 }
16166 #[inline]
16167 pub fn check_token(&self) -> Option<SyntaxToken> {
16168 support::token(&self.syntax, SyntaxKind::CHECK_KW)
16169 }
16170 #[inline]
16171 pub fn with_token(&self) -> Option<SyntaxToken> {
16172 support::token(&self.syntax, SyntaxKind::WITH_KW)
16173 }
16174}
16175
16176#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16177pub struct WithClause {
16178 pub(crate) syntax: SyntaxNode,
16179}
16180impl WithClause {
16181 #[inline]
16182 pub fn with_tables(&self) -> AstChildren<WithTable> {
16183 support::children(&self.syntax)
16184 }
16185 #[inline]
16186 pub fn recursive_token(&self) -> Option<SyntaxToken> {
16187 support::token(&self.syntax, SyntaxKind::RECURSIVE_KW)
16188 }
16189 #[inline]
16190 pub fn with_token(&self) -> Option<SyntaxToken> {
16191 support::token(&self.syntax, SyntaxKind::WITH_KW)
16192 }
16193}
16194
16195#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16196pub struct WithData {
16197 pub(crate) syntax: SyntaxNode,
16198}
16199impl WithData {
16200 #[inline]
16201 pub fn data_token(&self) -> Option<SyntaxToken> {
16202 support::token(&self.syntax, SyntaxKind::DATA_KW)
16203 }
16204 #[inline]
16205 pub fn with_token(&self) -> Option<SyntaxToken> {
16206 support::token(&self.syntax, SyntaxKind::WITH_KW)
16207 }
16208}
16209
16210#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16211pub struct WithNoData {
16212 pub(crate) syntax: SyntaxNode,
16213}
16214impl WithNoData {
16215 #[inline]
16216 pub fn data_token(&self) -> Option<SyntaxToken> {
16217 support::token(&self.syntax, SyntaxKind::DATA_KW)
16218 }
16219 #[inline]
16220 pub fn no_token(&self) -> Option<SyntaxToken> {
16221 support::token(&self.syntax, SyntaxKind::NO_KW)
16222 }
16223 #[inline]
16224 pub fn with_token(&self) -> Option<SyntaxToken> {
16225 support::token(&self.syntax, SyntaxKind::WITH_KW)
16226 }
16227}
16228
16229#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16230pub struct WithOptions {
16231 pub(crate) syntax: SyntaxNode,
16232}
16233impl WithOptions {
16234 #[inline]
16235 pub fn options_token(&self) -> Option<SyntaxToken> {
16236 support::token(&self.syntax, SyntaxKind::OPTIONS_KW)
16237 }
16238 #[inline]
16239 pub fn with_token(&self) -> Option<SyntaxToken> {
16240 support::token(&self.syntax, SyntaxKind::WITH_KW)
16241 }
16242}
16243
16244#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16245pub struct WithParams {
16246 pub(crate) syntax: SyntaxNode,
16247}
16248impl WithParams {
16249 #[inline]
16250 pub fn attribute_list(&self) -> Option<AttributeList> {
16251 support::child(&self.syntax)
16252 }
16253 #[inline]
16254 pub fn with_token(&self) -> Option<SyntaxToken> {
16255 support::token(&self.syntax, SyntaxKind::WITH_KW)
16256 }
16257}
16258
16259#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16260pub struct WithTable {
16261 pub(crate) syntax: SyntaxNode,
16262}
16263impl WithTable {
16264 #[inline]
16265 pub fn column_list(&self) -> Option<ColumnList> {
16266 support::child(&self.syntax)
16267 }
16268 #[inline]
16269 pub fn materialized(&self) -> Option<Materialized> {
16270 support::child(&self.syntax)
16271 }
16272 #[inline]
16273 pub fn name(&self) -> Option<Name> {
16274 support::child(&self.syntax)
16275 }
16276 #[inline]
16277 pub fn not_materialized(&self) -> Option<NotMaterialized> {
16278 support::child(&self.syntax)
16279 }
16280 #[inline]
16281 pub fn query(&self) -> Option<WithQuery> {
16282 support::child(&self.syntax)
16283 }
16284 #[inline]
16285 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16286 support::token(&self.syntax, SyntaxKind::L_PAREN)
16287 }
16288 #[inline]
16289 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16290 support::token(&self.syntax, SyntaxKind::R_PAREN)
16291 }
16292 #[inline]
16293 pub fn as_token(&self) -> Option<SyntaxToken> {
16294 support::token(&self.syntax, SyntaxKind::AS_KW)
16295 }
16296}
16297
16298#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16299pub struct WithTimezone {
16300 pub(crate) syntax: SyntaxNode,
16301}
16302impl WithTimezone {
16303 #[inline]
16304 pub fn time_token(&self) -> Option<SyntaxToken> {
16305 support::token(&self.syntax, SyntaxKind::TIME_KW)
16306 }
16307 #[inline]
16308 pub fn with_token(&self) -> Option<SyntaxToken> {
16309 support::token(&self.syntax, SyntaxKind::WITH_KW)
16310 }
16311 #[inline]
16312 pub fn zone_token(&self) -> Option<SyntaxToken> {
16313 support::token(&self.syntax, SyntaxKind::ZONE_KW)
16314 }
16315}
16316
16317#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16318pub struct WithinClause {
16319 pub(crate) syntax: SyntaxNode,
16320}
16321impl WithinClause {
16322 #[inline]
16323 pub fn order_by_clause(&self) -> Option<OrderByClause> {
16324 support::child(&self.syntax)
16325 }
16326 #[inline]
16327 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16328 support::token(&self.syntax, SyntaxKind::L_PAREN)
16329 }
16330 #[inline]
16331 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16332 support::token(&self.syntax, SyntaxKind::R_PAREN)
16333 }
16334 #[inline]
16335 pub fn group_token(&self) -> Option<SyntaxToken> {
16336 support::token(&self.syntax, SyntaxKind::GROUP_KW)
16337 }
16338 #[inline]
16339 pub fn within_token(&self) -> Option<SyntaxToken> {
16340 support::token(&self.syntax, SyntaxKind::WITHIN_KW)
16341 }
16342}
16343
16344#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16345pub struct WithoutOids {
16346 pub(crate) syntax: SyntaxNode,
16347}
16348impl WithoutOids {
16349 #[inline]
16350 pub fn oids_token(&self) -> Option<SyntaxToken> {
16351 support::token(&self.syntax, SyntaxKind::OIDS_KW)
16352 }
16353 #[inline]
16354 pub fn without_token(&self) -> Option<SyntaxToken> {
16355 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
16356 }
16357}
16358
16359#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16360pub struct WithoutTimezone {
16361 pub(crate) syntax: SyntaxNode,
16362}
16363impl WithoutTimezone {
16364 #[inline]
16365 pub fn time_token(&self) -> Option<SyntaxToken> {
16366 support::token(&self.syntax, SyntaxKind::TIME_KW)
16367 }
16368 #[inline]
16369 pub fn without_token(&self) -> Option<SyntaxToken> {
16370 support::token(&self.syntax, SyntaxKind::WITHOUT_KW)
16371 }
16372 #[inline]
16373 pub fn zone_token(&self) -> Option<SyntaxToken> {
16374 support::token(&self.syntax, SyntaxKind::ZONE_KW)
16375 }
16376}
16377
16378#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16379pub struct XmlAttributeList {
16380 pub(crate) syntax: SyntaxNode,
16381}
16382impl XmlAttributeList {
16383 #[inline]
16384 pub fn expr_as_names(&self) -> AstChildren<ExprAsName> {
16385 support::children(&self.syntax)
16386 }
16387}
16388
16389#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16390pub struct XmlColumnOption {
16391 pub(crate) syntax: SyntaxNode,
16392}
16393impl XmlColumnOption {
16394 #[inline]
16395 pub fn expr(&self) -> Option<Expr> {
16396 support::child(&self.syntax)
16397 }
16398 #[inline]
16399 pub fn default_token(&self) -> Option<SyntaxToken> {
16400 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
16401 }
16402 #[inline]
16403 pub fn ident_token(&self) -> Option<SyntaxToken> {
16404 support::token(&self.syntax, SyntaxKind::IDENT)
16405 }
16406 #[inline]
16407 pub fn not_token(&self) -> Option<SyntaxToken> {
16408 support::token(&self.syntax, SyntaxKind::NOT_KW)
16409 }
16410 #[inline]
16411 pub fn null_token(&self) -> Option<SyntaxToken> {
16412 support::token(&self.syntax, SyntaxKind::NULL_KW)
16413 }
16414 #[inline]
16415 pub fn path_token(&self) -> Option<SyntaxToken> {
16416 support::token(&self.syntax, SyntaxKind::PATH_KW)
16417 }
16418}
16419
16420#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16421pub struct XmlColumnOptionList {
16422 pub(crate) syntax: SyntaxNode,
16423}
16424impl XmlColumnOptionList {
16425 #[inline]
16426 pub fn xml_column_option(&self) -> Option<XmlColumnOption> {
16427 support::child(&self.syntax)
16428 }
16429 #[inline]
16430 pub fn xml_column_options(&self) -> AstChildren<XmlColumnOption> {
16431 support::children(&self.syntax)
16432 }
16433}
16434
16435#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16436pub struct XmlElementFn {
16437 pub(crate) syntax: SyntaxNode,
16438}
16439impl XmlElementFn {
16440 #[inline]
16441 pub fn exprs(&self) -> AstChildren<Expr> {
16442 support::children(&self.syntax)
16443 }
16444 #[inline]
16445 pub fn name(&self) -> Option<Name> {
16446 support::child(&self.syntax)
16447 }
16448 #[inline]
16449 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
16450 support::child(&self.syntax)
16451 }
16452 #[inline]
16453 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16454 support::token(&self.syntax, SyntaxKind::L_PAREN)
16455 }
16456 #[inline]
16457 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16458 support::token(&self.syntax, SyntaxKind::R_PAREN)
16459 }
16460 #[inline]
16461 pub fn comma_token(&self) -> Option<SyntaxToken> {
16462 support::token(&self.syntax, SyntaxKind::COMMA)
16463 }
16464 #[inline]
16465 pub fn name_token(&self) -> Option<SyntaxToken> {
16466 support::token(&self.syntax, SyntaxKind::NAME_KW)
16467 }
16468 #[inline]
16469 pub fn xmlattributes_token(&self) -> Option<SyntaxToken> {
16470 support::token(&self.syntax, SyntaxKind::XMLATTRIBUTES_KW)
16471 }
16472 #[inline]
16473 pub fn xmlelement_token(&self) -> Option<SyntaxToken> {
16474 support::token(&self.syntax, SyntaxKind::XMLELEMENT_KW)
16475 }
16476}
16477
16478#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16479pub struct XmlExistsFn {
16480 pub(crate) syntax: SyntaxNode,
16481}
16482impl XmlExistsFn {
16483 #[inline]
16484 pub fn expr(&self) -> Option<Expr> {
16485 support::child(&self.syntax)
16486 }
16487 #[inline]
16488 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
16489 support::child(&self.syntax)
16490 }
16491 #[inline]
16492 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16493 support::token(&self.syntax, SyntaxKind::L_PAREN)
16494 }
16495 #[inline]
16496 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16497 support::token(&self.syntax, SyntaxKind::R_PAREN)
16498 }
16499 #[inline]
16500 pub fn passing_token(&self) -> Option<SyntaxToken> {
16501 support::token(&self.syntax, SyntaxKind::PASSING_KW)
16502 }
16503 #[inline]
16504 pub fn xmlexists_token(&self) -> Option<SyntaxToken> {
16505 support::token(&self.syntax, SyntaxKind::XMLEXISTS_KW)
16506 }
16507}
16508
16509#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16510pub struct XmlForestFn {
16511 pub(crate) syntax: SyntaxNode,
16512}
16513impl XmlForestFn {
16514 #[inline]
16515 pub fn xml_attribute_list(&self) -> Option<XmlAttributeList> {
16516 support::child(&self.syntax)
16517 }
16518 #[inline]
16519 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16520 support::token(&self.syntax, SyntaxKind::L_PAREN)
16521 }
16522 #[inline]
16523 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16524 support::token(&self.syntax, SyntaxKind::R_PAREN)
16525 }
16526 #[inline]
16527 pub fn xmlforest_token(&self) -> Option<SyntaxToken> {
16528 support::token(&self.syntax, SyntaxKind::XMLFOREST_KW)
16529 }
16530}
16531
16532#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16533pub struct XmlNamespace {
16534 pub(crate) syntax: SyntaxNode,
16535}
16536impl XmlNamespace {
16537 #[inline]
16538 pub fn expr(&self) -> Option<Expr> {
16539 support::child(&self.syntax)
16540 }
16541 #[inline]
16542 pub fn name(&self) -> Option<Name> {
16543 support::child(&self.syntax)
16544 }
16545 #[inline]
16546 pub fn as_token(&self) -> Option<SyntaxToken> {
16547 support::token(&self.syntax, SyntaxKind::AS_KW)
16548 }
16549 #[inline]
16550 pub fn default_token(&self) -> Option<SyntaxToken> {
16551 support::token(&self.syntax, SyntaxKind::DEFAULT_KW)
16552 }
16553}
16554
16555#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16556pub struct XmlNamespaceList {
16557 pub(crate) syntax: SyntaxNode,
16558}
16559impl XmlNamespaceList {
16560 #[inline]
16561 pub fn xml_namespaces(&self) -> AstChildren<XmlNamespace> {
16562 support::children(&self.syntax)
16563 }
16564 #[inline]
16565 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16566 support::token(&self.syntax, SyntaxKind::L_PAREN)
16567 }
16568 #[inline]
16569 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16570 support::token(&self.syntax, SyntaxKind::R_PAREN)
16571 }
16572}
16573
16574#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16575pub struct XmlParseFn {
16576 pub(crate) syntax: SyntaxNode,
16577}
16578impl XmlParseFn {
16579 #[inline]
16580 pub fn expr(&self) -> Option<Expr> {
16581 support::child(&self.syntax)
16582 }
16583 #[inline]
16584 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16585 support::token(&self.syntax, SyntaxKind::L_PAREN)
16586 }
16587 #[inline]
16588 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16589 support::token(&self.syntax, SyntaxKind::R_PAREN)
16590 }
16591 #[inline]
16592 pub fn content_token(&self) -> Option<SyntaxToken> {
16593 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
16594 }
16595 #[inline]
16596 pub fn document_token(&self) -> Option<SyntaxToken> {
16597 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
16598 }
16599 #[inline]
16600 pub fn preserve_token(&self) -> Option<SyntaxToken> {
16601 support::token(&self.syntax, SyntaxKind::PRESERVE_KW)
16602 }
16603 #[inline]
16604 pub fn strip_token(&self) -> Option<SyntaxToken> {
16605 support::token(&self.syntax, SyntaxKind::STRIP_KW)
16606 }
16607 #[inline]
16608 pub fn whitespace_token(&self) -> Option<SyntaxToken> {
16609 support::token(&self.syntax, SyntaxKind::WHITESPACE_KW)
16610 }
16611 #[inline]
16612 pub fn xmlparse_token(&self) -> Option<SyntaxToken> {
16613 support::token(&self.syntax, SyntaxKind::XMLPARSE_KW)
16614 }
16615}
16616
16617#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16618pub struct XmlPassingMech {
16619 pub(crate) syntax: SyntaxNode,
16620}
16621impl XmlPassingMech {
16622 #[inline]
16623 pub fn by_token(&self) -> Option<SyntaxToken> {
16624 support::token(&self.syntax, SyntaxKind::BY_KW)
16625 }
16626 #[inline]
16627 pub fn ref_token(&self) -> Option<SyntaxToken> {
16628 support::token(&self.syntax, SyntaxKind::REF_KW)
16629 }
16630 #[inline]
16631 pub fn value_token(&self) -> Option<SyntaxToken> {
16632 support::token(&self.syntax, SyntaxKind::VALUE_KW)
16633 }
16634}
16635
16636#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16637pub struct XmlPiFn {
16638 pub(crate) syntax: SyntaxNode,
16639}
16640impl XmlPiFn {
16641 #[inline]
16642 pub fn expr(&self) -> Option<Expr> {
16643 support::child(&self.syntax)
16644 }
16645 #[inline]
16646 pub fn name(&self) -> Option<Name> {
16647 support::child(&self.syntax)
16648 }
16649 #[inline]
16650 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16651 support::token(&self.syntax, SyntaxKind::L_PAREN)
16652 }
16653 #[inline]
16654 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16655 support::token(&self.syntax, SyntaxKind::R_PAREN)
16656 }
16657 #[inline]
16658 pub fn comma_token(&self) -> Option<SyntaxToken> {
16659 support::token(&self.syntax, SyntaxKind::COMMA)
16660 }
16661 #[inline]
16662 pub fn name_token(&self) -> Option<SyntaxToken> {
16663 support::token(&self.syntax, SyntaxKind::NAME_KW)
16664 }
16665 #[inline]
16666 pub fn xmlpi_token(&self) -> Option<SyntaxToken> {
16667 support::token(&self.syntax, SyntaxKind::XMLPI_KW)
16668 }
16669}
16670
16671#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16672pub struct XmlRootFn {
16673 pub(crate) syntax: SyntaxNode,
16674}
16675impl XmlRootFn {
16676 #[inline]
16677 pub fn expr(&self) -> Option<Expr> {
16678 support::child(&self.syntax)
16679 }
16680 #[inline]
16681 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16682 support::token(&self.syntax, SyntaxKind::L_PAREN)
16683 }
16684 #[inline]
16685 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16686 support::token(&self.syntax, SyntaxKind::R_PAREN)
16687 }
16688 #[inline]
16689 pub fn comma_token(&self) -> Option<SyntaxToken> {
16690 support::token(&self.syntax, SyntaxKind::COMMA)
16691 }
16692 #[inline]
16693 pub fn no_token(&self) -> Option<SyntaxToken> {
16694 support::token(&self.syntax, SyntaxKind::NO_KW)
16695 }
16696 #[inline]
16697 pub fn standalone_token(&self) -> Option<SyntaxToken> {
16698 support::token(&self.syntax, SyntaxKind::STANDALONE_KW)
16699 }
16700 #[inline]
16701 pub fn value_token(&self) -> Option<SyntaxToken> {
16702 support::token(&self.syntax, SyntaxKind::VALUE_KW)
16703 }
16704 #[inline]
16705 pub fn version_token(&self) -> Option<SyntaxToken> {
16706 support::token(&self.syntax, SyntaxKind::VERSION_KW)
16707 }
16708 #[inline]
16709 pub fn xmlroot_token(&self) -> Option<SyntaxToken> {
16710 support::token(&self.syntax, SyntaxKind::XMLROOT_KW)
16711 }
16712 #[inline]
16713 pub fn yes_token(&self) -> Option<SyntaxToken> {
16714 support::token(&self.syntax, SyntaxKind::YES_KW)
16715 }
16716}
16717
16718#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16719pub struct XmlRowPassingClause {
16720 pub(crate) syntax: SyntaxNode,
16721}
16722impl XmlRowPassingClause {
16723 #[inline]
16724 pub fn expr(&self) -> Option<Expr> {
16725 support::child(&self.syntax)
16726 }
16727 #[inline]
16728 pub fn xml_passing_mech(&self) -> Option<XmlPassingMech> {
16729 support::child(&self.syntax)
16730 }
16731 #[inline]
16732 pub fn passing_token(&self) -> Option<SyntaxToken> {
16733 support::token(&self.syntax, SyntaxKind::PASSING_KW)
16734 }
16735}
16736
16737#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16738pub struct XmlSerializeFn {
16739 pub(crate) syntax: SyntaxNode,
16740}
16741impl XmlSerializeFn {
16742 #[inline]
16743 pub fn expr(&self) -> Option<Expr> {
16744 support::child(&self.syntax)
16745 }
16746 #[inline]
16747 pub fn ty(&self) -> Option<Type> {
16748 support::child(&self.syntax)
16749 }
16750 #[inline]
16751 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16752 support::token(&self.syntax, SyntaxKind::L_PAREN)
16753 }
16754 #[inline]
16755 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16756 support::token(&self.syntax, SyntaxKind::R_PAREN)
16757 }
16758 #[inline]
16759 pub fn as_token(&self) -> Option<SyntaxToken> {
16760 support::token(&self.syntax, SyntaxKind::AS_KW)
16761 }
16762 #[inline]
16763 pub fn content_token(&self) -> Option<SyntaxToken> {
16764 support::token(&self.syntax, SyntaxKind::CONTENT_KW)
16765 }
16766 #[inline]
16767 pub fn document_token(&self) -> Option<SyntaxToken> {
16768 support::token(&self.syntax, SyntaxKind::DOCUMENT_KW)
16769 }
16770 #[inline]
16771 pub fn ident_token(&self) -> Option<SyntaxToken> {
16772 support::token(&self.syntax, SyntaxKind::IDENT)
16773 }
16774 #[inline]
16775 pub fn no_token(&self) -> Option<SyntaxToken> {
16776 support::token(&self.syntax, SyntaxKind::NO_KW)
16777 }
16778 #[inline]
16779 pub fn xmlserialize_token(&self) -> Option<SyntaxToken> {
16780 support::token(&self.syntax, SyntaxKind::XMLSERIALIZE_KW)
16781 }
16782}
16783
16784#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16785pub struct XmlTable {
16786 pub(crate) syntax: SyntaxNode,
16787}
16788impl XmlTable {
16789 #[inline]
16790 pub fn xml_namespace_list(&self) -> Option<XmlNamespaceList> {
16791 support::child(&self.syntax)
16792 }
16793 #[inline]
16794 pub fn xml_row_passing_clause(&self) -> Option<XmlRowPassingClause> {
16795 support::child(&self.syntax)
16796 }
16797 #[inline]
16798 pub fn xml_table_column_list(&self) -> Option<XmlTableColumnList> {
16799 support::child(&self.syntax)
16800 }
16801 #[inline]
16802 pub fn l_paren_token(&self) -> Option<SyntaxToken> {
16803 support::token(&self.syntax, SyntaxKind::L_PAREN)
16804 }
16805 #[inline]
16806 pub fn r_paren_token(&self) -> Option<SyntaxToken> {
16807 support::token(&self.syntax, SyntaxKind::R_PAREN)
16808 }
16809 #[inline]
16810 pub fn comma_token(&self) -> Option<SyntaxToken> {
16811 support::token(&self.syntax, SyntaxKind::COMMA)
16812 }
16813 #[inline]
16814 pub fn xmlnamespaces_token(&self) -> Option<SyntaxToken> {
16815 support::token(&self.syntax, SyntaxKind::XMLNAMESPACES_KW)
16816 }
16817 #[inline]
16818 pub fn xmltable_token(&self) -> Option<SyntaxToken> {
16819 support::token(&self.syntax, SyntaxKind::XMLTABLE_KW)
16820 }
16821}
16822
16823#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16824pub struct XmlTableColumn {
16825 pub(crate) syntax: SyntaxNode,
16826}
16827impl XmlTableColumn {
16828 #[inline]
16829 pub fn name(&self) -> Option<Name> {
16830 support::child(&self.syntax)
16831 }
16832 #[inline]
16833 pub fn ty(&self) -> Option<Type> {
16834 support::child(&self.syntax)
16835 }
16836 #[inline]
16837 pub fn xml_column_option_list(&self) -> Option<XmlColumnOptionList> {
16838 support::child(&self.syntax)
16839 }
16840 #[inline]
16841 pub fn for_token(&self) -> Option<SyntaxToken> {
16842 support::token(&self.syntax, SyntaxKind::FOR_KW)
16843 }
16844 #[inline]
16845 pub fn ordinality_token(&self) -> Option<SyntaxToken> {
16846 support::token(&self.syntax, SyntaxKind::ORDINALITY_KW)
16847 }
16848}
16849
16850#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16851pub struct XmlTableColumnList {
16852 pub(crate) syntax: SyntaxNode,
16853}
16854impl XmlTableColumnList {
16855 #[inline]
16856 pub fn xml_table_columns(&self) -> AstChildren<XmlTableColumn> {
16857 support::children(&self.syntax)
16858 }
16859}
16860
16861#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16862pub enum AlterColumnOption {
16863 AddGenerated(AddGenerated),
16864 DropDefault(DropDefault),
16865 DropExpression(DropExpression),
16866 DropIdentity(DropIdentity),
16867 DropNotNull(DropNotNull),
16868 Inherit(Inherit),
16869 NoInherit(NoInherit),
16870 ResetOptions(ResetOptions),
16871 Restart(Restart),
16872 SetCompression(SetCompression),
16873 SetDefault(SetDefault),
16874 SetExpression(SetExpression),
16875 SetGenerated(SetGenerated),
16876 SetGeneratedOptions(SetGeneratedOptions),
16877 SetNotNull(SetNotNull),
16878 SetOptions(SetOptions),
16879 SetOptionsList(SetOptionsList),
16880 SetSequenceOption(SetSequenceOption),
16881 SetStatistics(SetStatistics),
16882 SetStorage(SetStorage),
16883 SetType(SetType),
16884}
16885
16886#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16887pub enum AlterDomainAction {
16888 AddConstraint(AddConstraint),
16889 DropConstraint(DropConstraint),
16890 DropDefault(DropDefault),
16891 DropNotNull(DropNotNull),
16892 OwnerTo(OwnerTo),
16893 RenameConstraint(RenameConstraint),
16894 RenameTo(RenameTo),
16895 SetDefault(SetDefault),
16896 SetNotNull(SetNotNull),
16897 SetSchema(SetSchema),
16898 ValidateConstraint(ValidateConstraint),
16899}
16900
16901#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16902pub enum AlterIndexAction {
16903 AlterSetStatistics(AlterSetStatistics),
16904 AttachPartition(AttachPartition),
16905 DependsOnExtension(DependsOnExtension),
16906 NoDependsOnExtension(NoDependsOnExtension),
16907 RenameTo(RenameTo),
16908 ResetOptions(ResetOptions),
16909 SetOptions(SetOptions),
16910 SetTablespace(SetTablespace),
16911}
16912
16913#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16914pub enum AlterMaterializedViewAction {
16915 DependsOnExtension(DependsOnExtension),
16916 NoDependsOnExtension(NoDependsOnExtension),
16917 RenameColumn(RenameColumn),
16918 RenameTo(RenameTo),
16919 SetSchema(SetSchema),
16920 AlterTableAction(AlterTableAction),
16921}
16922
16923#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16924pub enum AlterTableAction {
16925 AddColumn(AddColumn),
16926 AddConstraint(AddConstraint),
16927 AlterColumn(AlterColumn),
16928 AlterConstraint(AlterConstraint),
16929 AttachPartition(AttachPartition),
16930 ClusterOn(ClusterOn),
16931 DetachPartition(DetachPartition),
16932 DisableRls(DisableRls),
16933 DisableRule(DisableRule),
16934 DisableTrigger(DisableTrigger),
16935 DropColumn(DropColumn),
16936 DropConstraint(DropConstraint),
16937 EnableAlwaysRule(EnableAlwaysRule),
16938 EnableAlwaysTrigger(EnableAlwaysTrigger),
16939 EnableReplicaRule(EnableReplicaRule),
16940 EnableReplicaTrigger(EnableReplicaTrigger),
16941 EnableRls(EnableRls),
16942 EnableRule(EnableRule),
16943 EnableTrigger(EnableTrigger),
16944 ForceRls(ForceRls),
16945 InheritTable(InheritTable),
16946 MergePartitions(MergePartitions),
16947 NoForceRls(NoForceRls),
16948 NoInheritTable(NoInheritTable),
16949 NotOf(NotOf),
16950 OfType(OfType),
16951 OptionItemList(OptionItemList),
16952 OwnerTo(OwnerTo),
16953 RenameColumn(RenameColumn),
16954 RenameConstraint(RenameConstraint),
16955 RenameTo(RenameTo),
16956 ReplicaIdentity(ReplicaIdentity),
16957 ResetOptions(ResetOptions),
16958 SetAccessMethod(SetAccessMethod),
16959 SetLogged(SetLogged),
16960 SetOptions(SetOptions),
16961 SetSchema(SetSchema),
16962 SetTablespace(SetTablespace),
16963 SetUnlogged(SetUnlogged),
16964 SetWithoutCluster(SetWithoutCluster),
16965 SetWithoutOids(SetWithoutOids),
16966 SplitPartition(SplitPartition),
16967 ValidateConstraint(ValidateConstraint),
16968}
16969
16970#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16971pub enum ColumnConstraint {
16972 CheckConstraint(CheckConstraint),
16973 DefaultConstraint(DefaultConstraint),
16974 ExcludeConstraint(ExcludeConstraint),
16975 NotNullConstraint(NotNullConstraint),
16976 PrimaryKeyConstraint(PrimaryKeyConstraint),
16977 ReferencesConstraint(ReferencesConstraint),
16978 UniqueConstraint(UniqueConstraint),
16979}
16980
16981#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16982pub enum ConfigValue {
16983 Literal(Literal),
16984 NameRef(NameRef),
16985}
16986
16987#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16988pub enum ConflictAction {
16989 ConflictDoNothing(ConflictDoNothing),
16990 ConflictDoSelect(ConflictDoSelect),
16991 ConflictDoUpdateSet(ConflictDoUpdateSet),
16992}
16993
16994#[derive(Debug, Clone, PartialEq, Eq, Hash)]
16995pub enum ConflictTarget {
16996 ConflictOnConstraint(ConflictOnConstraint),
16997 ConflictOnIndex(ConflictOnIndex),
16998}
16999
17000#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17001pub enum Constraint {
17002 CheckConstraint(CheckConstraint),
17003 DefaultConstraint(DefaultConstraint),
17004 ForeignKeyConstraint(ForeignKeyConstraint),
17005 GeneratedConstraint(GeneratedConstraint),
17006 NotNullConstraint(NotNullConstraint),
17007 NullConstraint(NullConstraint),
17008 PrimaryKeyConstraint(PrimaryKeyConstraint),
17009 ReferencesConstraint(ReferencesConstraint),
17010 UniqueConstraint(UniqueConstraint),
17011}
17012
17013#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17014pub enum ExplainStmt {
17015 CompoundSelect(CompoundSelect),
17016 CreateMaterializedView(CreateMaterializedView),
17017 CreateTableAs(CreateTableAs),
17018 Declare(Declare),
17019 Delete(Delete),
17020 Execute(Execute),
17021 Insert(Insert),
17022 Merge(Merge),
17023 ParenSelect(ParenSelect),
17024 Select(Select),
17025 SelectInto(SelectInto),
17026 Table(Table),
17027 Update(Update),
17028 Values(Values),
17029}
17030
17031#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17032pub enum Expr {
17033 ArrayExpr(ArrayExpr),
17034 BetweenExpr(BetweenExpr),
17035 BinExpr(BinExpr),
17036 CallExpr(CallExpr),
17037 CaseExpr(CaseExpr),
17038 CastExpr(CastExpr),
17039 FieldExpr(FieldExpr),
17040 IndexExpr(IndexExpr),
17041 Literal(Literal),
17042 NameRef(NameRef),
17043 ParenExpr(ParenExpr),
17044 PostfixExpr(PostfixExpr),
17045 PrefixExpr(PrefixExpr),
17046 SliceExpr(SliceExpr),
17047 TupleExpr(TupleExpr),
17048}
17049
17050#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17051pub enum FuncOption {
17052 AsFuncOption(AsFuncOption),
17053 BeginFuncOptionList(BeginFuncOptionList),
17054 CostFuncOption(CostFuncOption),
17055 LanguageFuncOption(LanguageFuncOption),
17056 LeakproofFuncOption(LeakproofFuncOption),
17057 ParallelFuncOption(ParallelFuncOption),
17058 ResetFuncOption(ResetFuncOption),
17059 ReturnFuncOption(ReturnFuncOption),
17060 RowsFuncOption(RowsFuncOption),
17061 SecurityFuncOption(SecurityFuncOption),
17062 SetFuncOption(SetFuncOption),
17063 StrictFuncOption(StrictFuncOption),
17064 SupportFuncOption(SupportFuncOption),
17065 TransformFuncOption(TransformFuncOption),
17066 VolatilityFuncOption(VolatilityFuncOption),
17067 WindowFuncOption(WindowFuncOption),
17068}
17069
17070#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17071pub enum GroupBy {
17072 GroupingCube(GroupingCube),
17073 GroupingExpr(GroupingExpr),
17074 GroupingRollup(GroupingRollup),
17075 GroupingSets(GroupingSets),
17076}
17077
17078#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17079pub enum JoinType {
17080 JoinCross(JoinCross),
17081 JoinFull(JoinFull),
17082 JoinInner(JoinInner),
17083 JoinLeft(JoinLeft),
17084 JoinRight(JoinRight),
17085}
17086
17087#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17088pub enum JsonBehavior {
17089 JsonBehaviorDefault(JsonBehaviorDefault),
17090 JsonBehaviorEmptyArray(JsonBehaviorEmptyArray),
17091 JsonBehaviorEmptyObject(JsonBehaviorEmptyObject),
17092 JsonBehaviorError(JsonBehaviorError),
17093 JsonBehaviorFalse(JsonBehaviorFalse),
17094 JsonBehaviorNull(JsonBehaviorNull),
17095 JsonBehaviorTrue(JsonBehaviorTrue),
17096 JsonBehaviorUnknown(JsonBehaviorUnknown),
17097}
17098
17099#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17100pub enum MatchType {
17101 MatchFull(MatchFull),
17102 MatchPartial(MatchPartial),
17103 MatchSimple(MatchSimple),
17104}
17105
17106#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17107pub enum MergeAction {
17108 MergeDelete(MergeDelete),
17109 MergeDoNothing(MergeDoNothing),
17110 MergeInsert(MergeInsert),
17111 MergeUpdate(MergeUpdate),
17112}
17113
17114#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17115pub enum MergeWhenClause {
17116 MergeWhenMatched(MergeWhenMatched),
17117 MergeWhenNotMatchedSource(MergeWhenNotMatchedSource),
17118 MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget),
17119}
17120
17121#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17122pub enum OnCommitAction {
17123 DeleteRows(DeleteRows),
17124 Drop(Drop),
17125 PreserveRows(PreserveRows),
17126}
17127
17128#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17129pub enum ParamMode {
17130 ParamIn(ParamIn),
17131 ParamInOut(ParamInOut),
17132 ParamOut(ParamOut),
17133 ParamVariadic(ParamVariadic),
17134}
17135
17136#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17137pub enum PartitionType {
17138 PartitionDefault(PartitionDefault),
17139 PartitionForValuesFrom(PartitionForValuesFrom),
17140 PartitionForValuesIn(PartitionForValuesIn),
17141 PartitionForValuesWith(PartitionForValuesWith),
17142}
17143
17144#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17145pub enum PreparableStmt {
17146 CompoundSelect(CompoundSelect),
17147 Delete(Delete),
17148 Insert(Insert),
17149 Merge(Merge),
17150 Select(Select),
17151 SelectInto(SelectInto),
17152 Table(Table),
17153 Update(Update),
17154 Values(Values),
17155}
17156
17157#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17158pub enum RefAction {
17159 Cascade(Cascade),
17160 NoAction(NoAction),
17161 Restrict(Restrict),
17162 SetDefaultColumns(SetDefaultColumns),
17163 SetNullColumns(SetNullColumns),
17164}
17165
17166#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17167pub enum SchemaElement {
17168 CreateIndex(CreateIndex),
17169 CreateSequence(CreateSequence),
17170 CreateTable(CreateTable),
17171 CreateTrigger(CreateTrigger),
17172 CreateView(CreateView),
17173 Grant(Grant),
17174}
17175
17176#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17177pub enum SelectVariant {
17178 CompoundSelect(CompoundSelect),
17179 ParenSelect(ParenSelect),
17180 Select(Select),
17181 SelectInto(SelectInto),
17182 Table(Table),
17183 Values(Values),
17184}
17185
17186#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17187pub enum SetColumn {
17188 SetMultipleColumns(SetMultipleColumns),
17189 SetSingleColumn(SetSingleColumn),
17190}
17191
17192#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17193pub enum Stmt {
17194 AlterAggregate(AlterAggregate),
17195 AlterCollation(AlterCollation),
17196 AlterConversion(AlterConversion),
17197 AlterDatabase(AlterDatabase),
17198 AlterDefaultPrivileges(AlterDefaultPrivileges),
17199 AlterDomain(AlterDomain),
17200 AlterEventTrigger(AlterEventTrigger),
17201 AlterExtension(AlterExtension),
17202 AlterForeignDataWrapper(AlterForeignDataWrapper),
17203 AlterForeignTable(AlterForeignTable),
17204 AlterFunction(AlterFunction),
17205 AlterGroup(AlterGroup),
17206 AlterIndex(AlterIndex),
17207 AlterLanguage(AlterLanguage),
17208 AlterLargeObject(AlterLargeObject),
17209 AlterMaterializedView(AlterMaterializedView),
17210 AlterOperator(AlterOperator),
17211 AlterOperatorClass(AlterOperatorClass),
17212 AlterOperatorFamily(AlterOperatorFamily),
17213 AlterPolicy(AlterPolicy),
17214 AlterProcedure(AlterProcedure),
17215 AlterPublication(AlterPublication),
17216 AlterRole(AlterRole),
17217 AlterRoutine(AlterRoutine),
17218 AlterRule(AlterRule),
17219 AlterSchema(AlterSchema),
17220 AlterSequence(AlterSequence),
17221 AlterServer(AlterServer),
17222 AlterStatistics(AlterStatistics),
17223 AlterSubscription(AlterSubscription),
17224 AlterSystem(AlterSystem),
17225 AlterTable(AlterTable),
17226 AlterTablespace(AlterTablespace),
17227 AlterTextSearchConfiguration(AlterTextSearchConfiguration),
17228 AlterTextSearchDictionary(AlterTextSearchDictionary),
17229 AlterTextSearchParser(AlterTextSearchParser),
17230 AlterTextSearchTemplate(AlterTextSearchTemplate),
17231 AlterTrigger(AlterTrigger),
17232 AlterType(AlterType),
17233 AlterUser(AlterUser),
17234 AlterUserMapping(AlterUserMapping),
17235 AlterView(AlterView),
17236 Analyze(Analyze),
17237 Begin(Begin),
17238 Call(Call),
17239 Checkpoint(Checkpoint),
17240 Close(Close),
17241 Cluster(Cluster),
17242 CommentOn(CommentOn),
17243 Commit(Commit),
17244 Copy(Copy),
17245 CreateAccessMethod(CreateAccessMethod),
17246 CreateAggregate(CreateAggregate),
17247 CreateCast(CreateCast),
17248 CreateCollation(CreateCollation),
17249 CreateConversion(CreateConversion),
17250 CreateDatabase(CreateDatabase),
17251 CreateDomain(CreateDomain),
17252 CreateEventTrigger(CreateEventTrigger),
17253 CreateExtension(CreateExtension),
17254 CreateForeignDataWrapper(CreateForeignDataWrapper),
17255 CreateForeignTable(CreateForeignTable),
17256 CreateFunction(CreateFunction),
17257 CreateGroup(CreateGroup),
17258 CreateIndex(CreateIndex),
17259 CreateLanguage(CreateLanguage),
17260 CreateMaterializedView(CreateMaterializedView),
17261 CreateOperator(CreateOperator),
17262 CreateOperatorClass(CreateOperatorClass),
17263 CreateOperatorFamily(CreateOperatorFamily),
17264 CreatePolicy(CreatePolicy),
17265 CreateProcedure(CreateProcedure),
17266 CreatePublication(CreatePublication),
17267 CreateRole(CreateRole),
17268 CreateRule(CreateRule),
17269 CreateSchema(CreateSchema),
17270 CreateSequence(CreateSequence),
17271 CreateServer(CreateServer),
17272 CreateStatistics(CreateStatistics),
17273 CreateSubscription(CreateSubscription),
17274 CreateTable(CreateTable),
17275 CreateTableAs(CreateTableAs),
17276 CreateTablespace(CreateTablespace),
17277 CreateTextSearchConfiguration(CreateTextSearchConfiguration),
17278 CreateTextSearchDictionary(CreateTextSearchDictionary),
17279 CreateTextSearchParser(CreateTextSearchParser),
17280 CreateTextSearchTemplate(CreateTextSearchTemplate),
17281 CreateTransform(CreateTransform),
17282 CreateTrigger(CreateTrigger),
17283 CreateType(CreateType),
17284 CreateUser(CreateUser),
17285 CreateUserMapping(CreateUserMapping),
17286 CreateView(CreateView),
17287 Deallocate(Deallocate),
17288 Declare(Declare),
17289 Delete(Delete),
17290 Discard(Discard),
17291 Do(Do),
17292 DropAccessMethod(DropAccessMethod),
17293 DropAggregate(DropAggregate),
17294 DropCast(DropCast),
17295 DropCollation(DropCollation),
17296 DropConversion(DropConversion),
17297 DropDatabase(DropDatabase),
17298 DropDomain(DropDomain),
17299 DropEventTrigger(DropEventTrigger),
17300 DropExtension(DropExtension),
17301 DropForeignDataWrapper(DropForeignDataWrapper),
17302 DropForeignTable(DropForeignTable),
17303 DropFunction(DropFunction),
17304 DropGroup(DropGroup),
17305 DropIndex(DropIndex),
17306 DropLanguage(DropLanguage),
17307 DropMaterializedView(DropMaterializedView),
17308 DropOperator(DropOperator),
17309 DropOperatorClass(DropOperatorClass),
17310 DropOperatorFamily(DropOperatorFamily),
17311 DropOwned(DropOwned),
17312 DropPolicy(DropPolicy),
17313 DropProcedure(DropProcedure),
17314 DropPublication(DropPublication),
17315 DropRole(DropRole),
17316 DropRoutine(DropRoutine),
17317 DropRule(DropRule),
17318 DropSchema(DropSchema),
17319 DropSequence(DropSequence),
17320 DropServer(DropServer),
17321 DropStatistics(DropStatistics),
17322 DropSubscription(DropSubscription),
17323 DropTable(DropTable),
17324 DropTablespace(DropTablespace),
17325 DropTextSearchConfig(DropTextSearchConfig),
17326 DropTextSearchDict(DropTextSearchDict),
17327 DropTextSearchParser(DropTextSearchParser),
17328 DropTextSearchTemplate(DropTextSearchTemplate),
17329 DropTransform(DropTransform),
17330 DropTrigger(DropTrigger),
17331 DropType(DropType),
17332 DropUser(DropUser),
17333 DropUserMapping(DropUserMapping),
17334 DropView(DropView),
17335 Execute(Execute),
17336 Explain(Explain),
17337 Fetch(Fetch),
17338 Grant(Grant),
17339 ImportForeignSchema(ImportForeignSchema),
17340 Insert(Insert),
17341 Listen(Listen),
17342 Load(Load),
17343 Lock(Lock),
17344 Merge(Merge),
17345 Move(Move),
17346 Notify(Notify),
17347 ParenSelect(ParenSelect),
17348 Prepare(Prepare),
17349 PrepareTransaction(PrepareTransaction),
17350 Reassign(Reassign),
17351 Refresh(Refresh),
17352 Reindex(Reindex),
17353 ReleaseSavepoint(ReleaseSavepoint),
17354 Reset(Reset),
17355 ResetSessionAuth(ResetSessionAuth),
17356 Revoke(Revoke),
17357 Rollback(Rollback),
17358 Savepoint(Savepoint),
17359 SecurityLabel(SecurityLabel),
17360 Select(Select),
17361 SelectInto(SelectInto),
17362 Set(Set),
17363 SetConstraints(SetConstraints),
17364 SetRole(SetRole),
17365 SetSessionAuth(SetSessionAuth),
17366 SetTransaction(SetTransaction),
17367 Show(Show),
17368 Table(Table),
17369 Truncate(Truncate),
17370 Unlisten(Unlisten),
17371 Update(Update),
17372 Vacuum(Vacuum),
17373 Values(Values),
17374}
17375
17376#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17377pub enum TableArg {
17378 Column(Column),
17379 LikeClause(LikeClause),
17380 TableConstraint(TableConstraint),
17381}
17382
17383#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17384pub enum TableConstraint {
17385 CheckConstraint(CheckConstraint),
17386 ExcludeConstraint(ExcludeConstraint),
17387 ForeignKeyConstraint(ForeignKeyConstraint),
17388 PrimaryKeyConstraint(PrimaryKeyConstraint),
17389 UniqueConstraint(UniqueConstraint),
17390}
17391
17392#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17393pub enum Timezone {
17394 WithTimezone(WithTimezone),
17395 WithoutTimezone(WithoutTimezone),
17396}
17397
17398#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17399pub enum TransactionMode {
17400 Deferrable(Deferrable),
17401 NotDeferrable(NotDeferrable),
17402 ReadCommitted(ReadCommitted),
17403 ReadOnly(ReadOnly),
17404 ReadUncommitted(ReadUncommitted),
17405 ReadWrite(ReadWrite),
17406 RepeatableRead(RepeatableRead),
17407 Serializable(Serializable),
17408}
17409
17410#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17411pub enum Type {
17412 ArrayType(ArrayType),
17413 BitType(BitType),
17414 CharType(CharType),
17415 DoubleType(DoubleType),
17416 ExprType(ExprType),
17417 IntervalType(IntervalType),
17418 PathType(PathType),
17419 PercentType(PercentType),
17420 TimeType(TimeType),
17421}
17422
17423#[derive(Debug, Clone, PartialEq, Eq, Hash)]
17424pub enum WithQuery {
17425 CompoundSelect(CompoundSelect),
17426 Delete(Delete),
17427 Insert(Insert),
17428 Merge(Merge),
17429 ParenSelect(ParenSelect),
17430 Select(Select),
17431 Table(Table),
17432 Update(Update),
17433 Values(Values),
17434}
17435impl AstNode for AddColumn {
17436 #[inline]
17437 fn can_cast(kind: SyntaxKind) -> bool {
17438 kind == SyntaxKind::ADD_COLUMN
17439 }
17440 #[inline]
17441 fn cast(syntax: SyntaxNode) -> Option<Self> {
17442 if Self::can_cast(syntax.kind()) {
17443 Some(Self { syntax })
17444 } else {
17445 None
17446 }
17447 }
17448 #[inline]
17449 fn syntax(&self) -> &SyntaxNode {
17450 &self.syntax
17451 }
17452}
17453impl AstNode for AddConstraint {
17454 #[inline]
17455 fn can_cast(kind: SyntaxKind) -> bool {
17456 kind == SyntaxKind::ADD_CONSTRAINT
17457 }
17458 #[inline]
17459 fn cast(syntax: SyntaxNode) -> Option<Self> {
17460 if Self::can_cast(syntax.kind()) {
17461 Some(Self { syntax })
17462 } else {
17463 None
17464 }
17465 }
17466 #[inline]
17467 fn syntax(&self) -> &SyntaxNode {
17468 &self.syntax
17469 }
17470}
17471impl AstNode for AddGenerated {
17472 #[inline]
17473 fn can_cast(kind: SyntaxKind) -> bool {
17474 kind == SyntaxKind::ADD_GENERATED
17475 }
17476 #[inline]
17477 fn cast(syntax: SyntaxNode) -> Option<Self> {
17478 if Self::can_cast(syntax.kind()) {
17479 Some(Self { syntax })
17480 } else {
17481 None
17482 }
17483 }
17484 #[inline]
17485 fn syntax(&self) -> &SyntaxNode {
17486 &self.syntax
17487 }
17488}
17489impl AstNode for AddOpClassOptions {
17490 #[inline]
17491 fn can_cast(kind: SyntaxKind) -> bool {
17492 kind == SyntaxKind::ADD_OP_CLASS_OPTIONS
17493 }
17494 #[inline]
17495 fn cast(syntax: SyntaxNode) -> Option<Self> {
17496 if Self::can_cast(syntax.kind()) {
17497 Some(Self { syntax })
17498 } else {
17499 None
17500 }
17501 }
17502 #[inline]
17503 fn syntax(&self) -> &SyntaxNode {
17504 &self.syntax
17505 }
17506}
17507impl AstNode for Aggregate {
17508 #[inline]
17509 fn can_cast(kind: SyntaxKind) -> bool {
17510 kind == SyntaxKind::AGGREGATE
17511 }
17512 #[inline]
17513 fn cast(syntax: SyntaxNode) -> Option<Self> {
17514 if Self::can_cast(syntax.kind()) {
17515 Some(Self { syntax })
17516 } else {
17517 None
17518 }
17519 }
17520 #[inline]
17521 fn syntax(&self) -> &SyntaxNode {
17522 &self.syntax
17523 }
17524}
17525impl AstNode for Alias {
17526 #[inline]
17527 fn can_cast(kind: SyntaxKind) -> bool {
17528 kind == SyntaxKind::ALIAS
17529 }
17530 #[inline]
17531 fn cast(syntax: SyntaxNode) -> Option<Self> {
17532 if Self::can_cast(syntax.kind()) {
17533 Some(Self { syntax })
17534 } else {
17535 None
17536 }
17537 }
17538 #[inline]
17539 fn syntax(&self) -> &SyntaxNode {
17540 &self.syntax
17541 }
17542}
17543impl AstNode for AllFn {
17544 #[inline]
17545 fn can_cast(kind: SyntaxKind) -> bool {
17546 kind == SyntaxKind::ALL_FN
17547 }
17548 #[inline]
17549 fn cast(syntax: SyntaxNode) -> Option<Self> {
17550 if Self::can_cast(syntax.kind()) {
17551 Some(Self { syntax })
17552 } else {
17553 None
17554 }
17555 }
17556 #[inline]
17557 fn syntax(&self) -> &SyntaxNode {
17558 &self.syntax
17559 }
17560}
17561impl AstNode for AlterAggregate {
17562 #[inline]
17563 fn can_cast(kind: SyntaxKind) -> bool {
17564 kind == SyntaxKind::ALTER_AGGREGATE
17565 }
17566 #[inline]
17567 fn cast(syntax: SyntaxNode) -> Option<Self> {
17568 if Self::can_cast(syntax.kind()) {
17569 Some(Self { syntax })
17570 } else {
17571 None
17572 }
17573 }
17574 #[inline]
17575 fn syntax(&self) -> &SyntaxNode {
17576 &self.syntax
17577 }
17578}
17579impl AstNode for AlterCollation {
17580 #[inline]
17581 fn can_cast(kind: SyntaxKind) -> bool {
17582 kind == SyntaxKind::ALTER_COLLATION
17583 }
17584 #[inline]
17585 fn cast(syntax: SyntaxNode) -> Option<Self> {
17586 if Self::can_cast(syntax.kind()) {
17587 Some(Self { syntax })
17588 } else {
17589 None
17590 }
17591 }
17592 #[inline]
17593 fn syntax(&self) -> &SyntaxNode {
17594 &self.syntax
17595 }
17596}
17597impl AstNode for AlterColumn {
17598 #[inline]
17599 fn can_cast(kind: SyntaxKind) -> bool {
17600 kind == SyntaxKind::ALTER_COLUMN
17601 }
17602 #[inline]
17603 fn cast(syntax: SyntaxNode) -> Option<Self> {
17604 if Self::can_cast(syntax.kind()) {
17605 Some(Self { syntax })
17606 } else {
17607 None
17608 }
17609 }
17610 #[inline]
17611 fn syntax(&self) -> &SyntaxNode {
17612 &self.syntax
17613 }
17614}
17615impl AstNode for AlterConstraint {
17616 #[inline]
17617 fn can_cast(kind: SyntaxKind) -> bool {
17618 kind == SyntaxKind::ALTER_CONSTRAINT
17619 }
17620 #[inline]
17621 fn cast(syntax: SyntaxNode) -> Option<Self> {
17622 if Self::can_cast(syntax.kind()) {
17623 Some(Self { syntax })
17624 } else {
17625 None
17626 }
17627 }
17628 #[inline]
17629 fn syntax(&self) -> &SyntaxNode {
17630 &self.syntax
17631 }
17632}
17633impl AstNode for AlterConversion {
17634 #[inline]
17635 fn can_cast(kind: SyntaxKind) -> bool {
17636 kind == SyntaxKind::ALTER_CONVERSION
17637 }
17638 #[inline]
17639 fn cast(syntax: SyntaxNode) -> Option<Self> {
17640 if Self::can_cast(syntax.kind()) {
17641 Some(Self { syntax })
17642 } else {
17643 None
17644 }
17645 }
17646 #[inline]
17647 fn syntax(&self) -> &SyntaxNode {
17648 &self.syntax
17649 }
17650}
17651impl AstNode for AlterDatabase {
17652 #[inline]
17653 fn can_cast(kind: SyntaxKind) -> bool {
17654 kind == SyntaxKind::ALTER_DATABASE
17655 }
17656 #[inline]
17657 fn cast(syntax: SyntaxNode) -> Option<Self> {
17658 if Self::can_cast(syntax.kind()) {
17659 Some(Self { syntax })
17660 } else {
17661 None
17662 }
17663 }
17664 #[inline]
17665 fn syntax(&self) -> &SyntaxNode {
17666 &self.syntax
17667 }
17668}
17669impl AstNode for AlterDefaultPrivileges {
17670 #[inline]
17671 fn can_cast(kind: SyntaxKind) -> bool {
17672 kind == SyntaxKind::ALTER_DEFAULT_PRIVILEGES
17673 }
17674 #[inline]
17675 fn cast(syntax: SyntaxNode) -> Option<Self> {
17676 if Self::can_cast(syntax.kind()) {
17677 Some(Self { syntax })
17678 } else {
17679 None
17680 }
17681 }
17682 #[inline]
17683 fn syntax(&self) -> &SyntaxNode {
17684 &self.syntax
17685 }
17686}
17687impl AstNode for AlterDomain {
17688 #[inline]
17689 fn can_cast(kind: SyntaxKind) -> bool {
17690 kind == SyntaxKind::ALTER_DOMAIN
17691 }
17692 #[inline]
17693 fn cast(syntax: SyntaxNode) -> Option<Self> {
17694 if Self::can_cast(syntax.kind()) {
17695 Some(Self { syntax })
17696 } else {
17697 None
17698 }
17699 }
17700 #[inline]
17701 fn syntax(&self) -> &SyntaxNode {
17702 &self.syntax
17703 }
17704}
17705impl AstNode for AlterEventTrigger {
17706 #[inline]
17707 fn can_cast(kind: SyntaxKind) -> bool {
17708 kind == SyntaxKind::ALTER_EVENT_TRIGGER
17709 }
17710 #[inline]
17711 fn cast(syntax: SyntaxNode) -> Option<Self> {
17712 if Self::can_cast(syntax.kind()) {
17713 Some(Self { syntax })
17714 } else {
17715 None
17716 }
17717 }
17718 #[inline]
17719 fn syntax(&self) -> &SyntaxNode {
17720 &self.syntax
17721 }
17722}
17723impl AstNode for AlterExtension {
17724 #[inline]
17725 fn can_cast(kind: SyntaxKind) -> bool {
17726 kind == SyntaxKind::ALTER_EXTENSION
17727 }
17728 #[inline]
17729 fn cast(syntax: SyntaxNode) -> Option<Self> {
17730 if Self::can_cast(syntax.kind()) {
17731 Some(Self { syntax })
17732 } else {
17733 None
17734 }
17735 }
17736 #[inline]
17737 fn syntax(&self) -> &SyntaxNode {
17738 &self.syntax
17739 }
17740}
17741impl AstNode for AlterForeignDataWrapper {
17742 #[inline]
17743 fn can_cast(kind: SyntaxKind) -> bool {
17744 kind == SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
17745 }
17746 #[inline]
17747 fn cast(syntax: SyntaxNode) -> Option<Self> {
17748 if Self::can_cast(syntax.kind()) {
17749 Some(Self { syntax })
17750 } else {
17751 None
17752 }
17753 }
17754 #[inline]
17755 fn syntax(&self) -> &SyntaxNode {
17756 &self.syntax
17757 }
17758}
17759impl AstNode for AlterForeignTable {
17760 #[inline]
17761 fn can_cast(kind: SyntaxKind) -> bool {
17762 kind == SyntaxKind::ALTER_FOREIGN_TABLE
17763 }
17764 #[inline]
17765 fn cast(syntax: SyntaxNode) -> Option<Self> {
17766 if Self::can_cast(syntax.kind()) {
17767 Some(Self { syntax })
17768 } else {
17769 None
17770 }
17771 }
17772 #[inline]
17773 fn syntax(&self) -> &SyntaxNode {
17774 &self.syntax
17775 }
17776}
17777impl AstNode for AlterFunction {
17778 #[inline]
17779 fn can_cast(kind: SyntaxKind) -> bool {
17780 kind == SyntaxKind::ALTER_FUNCTION
17781 }
17782 #[inline]
17783 fn cast(syntax: SyntaxNode) -> Option<Self> {
17784 if Self::can_cast(syntax.kind()) {
17785 Some(Self { syntax })
17786 } else {
17787 None
17788 }
17789 }
17790 #[inline]
17791 fn syntax(&self) -> &SyntaxNode {
17792 &self.syntax
17793 }
17794}
17795impl AstNode for AlterGroup {
17796 #[inline]
17797 fn can_cast(kind: SyntaxKind) -> bool {
17798 kind == SyntaxKind::ALTER_GROUP
17799 }
17800 #[inline]
17801 fn cast(syntax: SyntaxNode) -> Option<Self> {
17802 if Self::can_cast(syntax.kind()) {
17803 Some(Self { syntax })
17804 } else {
17805 None
17806 }
17807 }
17808 #[inline]
17809 fn syntax(&self) -> &SyntaxNode {
17810 &self.syntax
17811 }
17812}
17813impl AstNode for AlterIndex {
17814 #[inline]
17815 fn can_cast(kind: SyntaxKind) -> bool {
17816 kind == SyntaxKind::ALTER_INDEX
17817 }
17818 #[inline]
17819 fn cast(syntax: SyntaxNode) -> Option<Self> {
17820 if Self::can_cast(syntax.kind()) {
17821 Some(Self { syntax })
17822 } else {
17823 None
17824 }
17825 }
17826 #[inline]
17827 fn syntax(&self) -> &SyntaxNode {
17828 &self.syntax
17829 }
17830}
17831impl AstNode for AlterLanguage {
17832 #[inline]
17833 fn can_cast(kind: SyntaxKind) -> bool {
17834 kind == SyntaxKind::ALTER_LANGUAGE
17835 }
17836 #[inline]
17837 fn cast(syntax: SyntaxNode) -> Option<Self> {
17838 if Self::can_cast(syntax.kind()) {
17839 Some(Self { syntax })
17840 } else {
17841 None
17842 }
17843 }
17844 #[inline]
17845 fn syntax(&self) -> &SyntaxNode {
17846 &self.syntax
17847 }
17848}
17849impl AstNode for AlterLargeObject {
17850 #[inline]
17851 fn can_cast(kind: SyntaxKind) -> bool {
17852 kind == SyntaxKind::ALTER_LARGE_OBJECT
17853 }
17854 #[inline]
17855 fn cast(syntax: SyntaxNode) -> Option<Self> {
17856 if Self::can_cast(syntax.kind()) {
17857 Some(Self { syntax })
17858 } else {
17859 None
17860 }
17861 }
17862 #[inline]
17863 fn syntax(&self) -> &SyntaxNode {
17864 &self.syntax
17865 }
17866}
17867impl AstNode for AlterMaterializedView {
17868 #[inline]
17869 fn can_cast(kind: SyntaxKind) -> bool {
17870 kind == SyntaxKind::ALTER_MATERIALIZED_VIEW
17871 }
17872 #[inline]
17873 fn cast(syntax: SyntaxNode) -> Option<Self> {
17874 if Self::can_cast(syntax.kind()) {
17875 Some(Self { syntax })
17876 } else {
17877 None
17878 }
17879 }
17880 #[inline]
17881 fn syntax(&self) -> &SyntaxNode {
17882 &self.syntax
17883 }
17884}
17885impl AstNode for AlterOperator {
17886 #[inline]
17887 fn can_cast(kind: SyntaxKind) -> bool {
17888 kind == SyntaxKind::ALTER_OPERATOR
17889 }
17890 #[inline]
17891 fn cast(syntax: SyntaxNode) -> Option<Self> {
17892 if Self::can_cast(syntax.kind()) {
17893 Some(Self { syntax })
17894 } else {
17895 None
17896 }
17897 }
17898 #[inline]
17899 fn syntax(&self) -> &SyntaxNode {
17900 &self.syntax
17901 }
17902}
17903impl AstNode for AlterOperatorClass {
17904 #[inline]
17905 fn can_cast(kind: SyntaxKind) -> bool {
17906 kind == SyntaxKind::ALTER_OPERATOR_CLASS
17907 }
17908 #[inline]
17909 fn cast(syntax: SyntaxNode) -> Option<Self> {
17910 if Self::can_cast(syntax.kind()) {
17911 Some(Self { syntax })
17912 } else {
17913 None
17914 }
17915 }
17916 #[inline]
17917 fn syntax(&self) -> &SyntaxNode {
17918 &self.syntax
17919 }
17920}
17921impl AstNode for AlterOperatorFamily {
17922 #[inline]
17923 fn can_cast(kind: SyntaxKind) -> bool {
17924 kind == SyntaxKind::ALTER_OPERATOR_FAMILY
17925 }
17926 #[inline]
17927 fn cast(syntax: SyntaxNode) -> Option<Self> {
17928 if Self::can_cast(syntax.kind()) {
17929 Some(Self { syntax })
17930 } else {
17931 None
17932 }
17933 }
17934 #[inline]
17935 fn syntax(&self) -> &SyntaxNode {
17936 &self.syntax
17937 }
17938}
17939impl AstNode for AlterOption {
17940 #[inline]
17941 fn can_cast(kind: SyntaxKind) -> bool {
17942 kind == SyntaxKind::ALTER_OPTION
17943 }
17944 #[inline]
17945 fn cast(syntax: SyntaxNode) -> Option<Self> {
17946 if Self::can_cast(syntax.kind()) {
17947 Some(Self { syntax })
17948 } else {
17949 None
17950 }
17951 }
17952 #[inline]
17953 fn syntax(&self) -> &SyntaxNode {
17954 &self.syntax
17955 }
17956}
17957impl AstNode for AlterOptionList {
17958 #[inline]
17959 fn can_cast(kind: SyntaxKind) -> bool {
17960 kind == SyntaxKind::ALTER_OPTION_LIST
17961 }
17962 #[inline]
17963 fn cast(syntax: SyntaxNode) -> Option<Self> {
17964 if Self::can_cast(syntax.kind()) {
17965 Some(Self { syntax })
17966 } else {
17967 None
17968 }
17969 }
17970 #[inline]
17971 fn syntax(&self) -> &SyntaxNode {
17972 &self.syntax
17973 }
17974}
17975impl AstNode for AlterPolicy {
17976 #[inline]
17977 fn can_cast(kind: SyntaxKind) -> bool {
17978 kind == SyntaxKind::ALTER_POLICY
17979 }
17980 #[inline]
17981 fn cast(syntax: SyntaxNode) -> Option<Self> {
17982 if Self::can_cast(syntax.kind()) {
17983 Some(Self { syntax })
17984 } else {
17985 None
17986 }
17987 }
17988 #[inline]
17989 fn syntax(&self) -> &SyntaxNode {
17990 &self.syntax
17991 }
17992}
17993impl AstNode for AlterProcedure {
17994 #[inline]
17995 fn can_cast(kind: SyntaxKind) -> bool {
17996 kind == SyntaxKind::ALTER_PROCEDURE
17997 }
17998 #[inline]
17999 fn cast(syntax: SyntaxNode) -> Option<Self> {
18000 if Self::can_cast(syntax.kind()) {
18001 Some(Self { syntax })
18002 } else {
18003 None
18004 }
18005 }
18006 #[inline]
18007 fn syntax(&self) -> &SyntaxNode {
18008 &self.syntax
18009 }
18010}
18011impl AstNode for AlterPublication {
18012 #[inline]
18013 fn can_cast(kind: SyntaxKind) -> bool {
18014 kind == SyntaxKind::ALTER_PUBLICATION
18015 }
18016 #[inline]
18017 fn cast(syntax: SyntaxNode) -> Option<Self> {
18018 if Self::can_cast(syntax.kind()) {
18019 Some(Self { syntax })
18020 } else {
18021 None
18022 }
18023 }
18024 #[inline]
18025 fn syntax(&self) -> &SyntaxNode {
18026 &self.syntax
18027 }
18028}
18029impl AstNode for AlterRole {
18030 #[inline]
18031 fn can_cast(kind: SyntaxKind) -> bool {
18032 kind == SyntaxKind::ALTER_ROLE
18033 }
18034 #[inline]
18035 fn cast(syntax: SyntaxNode) -> Option<Self> {
18036 if Self::can_cast(syntax.kind()) {
18037 Some(Self { syntax })
18038 } else {
18039 None
18040 }
18041 }
18042 #[inline]
18043 fn syntax(&self) -> &SyntaxNode {
18044 &self.syntax
18045 }
18046}
18047impl AstNode for AlterRoutine {
18048 #[inline]
18049 fn can_cast(kind: SyntaxKind) -> bool {
18050 kind == SyntaxKind::ALTER_ROUTINE
18051 }
18052 #[inline]
18053 fn cast(syntax: SyntaxNode) -> Option<Self> {
18054 if Self::can_cast(syntax.kind()) {
18055 Some(Self { syntax })
18056 } else {
18057 None
18058 }
18059 }
18060 #[inline]
18061 fn syntax(&self) -> &SyntaxNode {
18062 &self.syntax
18063 }
18064}
18065impl AstNode for AlterRule {
18066 #[inline]
18067 fn can_cast(kind: SyntaxKind) -> bool {
18068 kind == SyntaxKind::ALTER_RULE
18069 }
18070 #[inline]
18071 fn cast(syntax: SyntaxNode) -> Option<Self> {
18072 if Self::can_cast(syntax.kind()) {
18073 Some(Self { syntax })
18074 } else {
18075 None
18076 }
18077 }
18078 #[inline]
18079 fn syntax(&self) -> &SyntaxNode {
18080 &self.syntax
18081 }
18082}
18083impl AstNode for AlterSchema {
18084 #[inline]
18085 fn can_cast(kind: SyntaxKind) -> bool {
18086 kind == SyntaxKind::ALTER_SCHEMA
18087 }
18088 #[inline]
18089 fn cast(syntax: SyntaxNode) -> Option<Self> {
18090 if Self::can_cast(syntax.kind()) {
18091 Some(Self { syntax })
18092 } else {
18093 None
18094 }
18095 }
18096 #[inline]
18097 fn syntax(&self) -> &SyntaxNode {
18098 &self.syntax
18099 }
18100}
18101impl AstNode for AlterSequence {
18102 #[inline]
18103 fn can_cast(kind: SyntaxKind) -> bool {
18104 kind == SyntaxKind::ALTER_SEQUENCE
18105 }
18106 #[inline]
18107 fn cast(syntax: SyntaxNode) -> Option<Self> {
18108 if Self::can_cast(syntax.kind()) {
18109 Some(Self { syntax })
18110 } else {
18111 None
18112 }
18113 }
18114 #[inline]
18115 fn syntax(&self) -> &SyntaxNode {
18116 &self.syntax
18117 }
18118}
18119impl AstNode for AlterServer {
18120 #[inline]
18121 fn can_cast(kind: SyntaxKind) -> bool {
18122 kind == SyntaxKind::ALTER_SERVER
18123 }
18124 #[inline]
18125 fn cast(syntax: SyntaxNode) -> Option<Self> {
18126 if Self::can_cast(syntax.kind()) {
18127 Some(Self { syntax })
18128 } else {
18129 None
18130 }
18131 }
18132 #[inline]
18133 fn syntax(&self) -> &SyntaxNode {
18134 &self.syntax
18135 }
18136}
18137impl AstNode for AlterSetStatistics {
18138 #[inline]
18139 fn can_cast(kind: SyntaxKind) -> bool {
18140 kind == SyntaxKind::ALTER_SET_STATISTICS
18141 }
18142 #[inline]
18143 fn cast(syntax: SyntaxNode) -> Option<Self> {
18144 if Self::can_cast(syntax.kind()) {
18145 Some(Self { syntax })
18146 } else {
18147 None
18148 }
18149 }
18150 #[inline]
18151 fn syntax(&self) -> &SyntaxNode {
18152 &self.syntax
18153 }
18154}
18155impl AstNode for AlterStatistics {
18156 #[inline]
18157 fn can_cast(kind: SyntaxKind) -> bool {
18158 kind == SyntaxKind::ALTER_STATISTICS
18159 }
18160 #[inline]
18161 fn cast(syntax: SyntaxNode) -> Option<Self> {
18162 if Self::can_cast(syntax.kind()) {
18163 Some(Self { syntax })
18164 } else {
18165 None
18166 }
18167 }
18168 #[inline]
18169 fn syntax(&self) -> &SyntaxNode {
18170 &self.syntax
18171 }
18172}
18173impl AstNode for AlterSubscription {
18174 #[inline]
18175 fn can_cast(kind: SyntaxKind) -> bool {
18176 kind == SyntaxKind::ALTER_SUBSCRIPTION
18177 }
18178 #[inline]
18179 fn cast(syntax: SyntaxNode) -> Option<Self> {
18180 if Self::can_cast(syntax.kind()) {
18181 Some(Self { syntax })
18182 } else {
18183 None
18184 }
18185 }
18186 #[inline]
18187 fn syntax(&self) -> &SyntaxNode {
18188 &self.syntax
18189 }
18190}
18191impl AstNode for AlterSystem {
18192 #[inline]
18193 fn can_cast(kind: SyntaxKind) -> bool {
18194 kind == SyntaxKind::ALTER_SYSTEM
18195 }
18196 #[inline]
18197 fn cast(syntax: SyntaxNode) -> Option<Self> {
18198 if Self::can_cast(syntax.kind()) {
18199 Some(Self { syntax })
18200 } else {
18201 None
18202 }
18203 }
18204 #[inline]
18205 fn syntax(&self) -> &SyntaxNode {
18206 &self.syntax
18207 }
18208}
18209impl AstNode for AlterTable {
18210 #[inline]
18211 fn can_cast(kind: SyntaxKind) -> bool {
18212 kind == SyntaxKind::ALTER_TABLE
18213 }
18214 #[inline]
18215 fn cast(syntax: SyntaxNode) -> Option<Self> {
18216 if Self::can_cast(syntax.kind()) {
18217 Some(Self { syntax })
18218 } else {
18219 None
18220 }
18221 }
18222 #[inline]
18223 fn syntax(&self) -> &SyntaxNode {
18224 &self.syntax
18225 }
18226}
18227impl AstNode for AlterTablespace {
18228 #[inline]
18229 fn can_cast(kind: SyntaxKind) -> bool {
18230 kind == SyntaxKind::ALTER_TABLESPACE
18231 }
18232 #[inline]
18233 fn cast(syntax: SyntaxNode) -> Option<Self> {
18234 if Self::can_cast(syntax.kind()) {
18235 Some(Self { syntax })
18236 } else {
18237 None
18238 }
18239 }
18240 #[inline]
18241 fn syntax(&self) -> &SyntaxNode {
18242 &self.syntax
18243 }
18244}
18245impl AstNode for AlterTextSearchConfiguration {
18246 #[inline]
18247 fn can_cast(kind: SyntaxKind) -> bool {
18248 kind == SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
18249 }
18250 #[inline]
18251 fn cast(syntax: SyntaxNode) -> Option<Self> {
18252 if Self::can_cast(syntax.kind()) {
18253 Some(Self { syntax })
18254 } else {
18255 None
18256 }
18257 }
18258 #[inline]
18259 fn syntax(&self) -> &SyntaxNode {
18260 &self.syntax
18261 }
18262}
18263impl AstNode for AlterTextSearchDictionary {
18264 #[inline]
18265 fn can_cast(kind: SyntaxKind) -> bool {
18266 kind == SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
18267 }
18268 #[inline]
18269 fn cast(syntax: SyntaxNode) -> Option<Self> {
18270 if Self::can_cast(syntax.kind()) {
18271 Some(Self { syntax })
18272 } else {
18273 None
18274 }
18275 }
18276 #[inline]
18277 fn syntax(&self) -> &SyntaxNode {
18278 &self.syntax
18279 }
18280}
18281impl AstNode for AlterTextSearchParser {
18282 #[inline]
18283 fn can_cast(kind: SyntaxKind) -> bool {
18284 kind == SyntaxKind::ALTER_TEXT_SEARCH_PARSER
18285 }
18286 #[inline]
18287 fn cast(syntax: SyntaxNode) -> Option<Self> {
18288 if Self::can_cast(syntax.kind()) {
18289 Some(Self { syntax })
18290 } else {
18291 None
18292 }
18293 }
18294 #[inline]
18295 fn syntax(&self) -> &SyntaxNode {
18296 &self.syntax
18297 }
18298}
18299impl AstNode for AlterTextSearchTemplate {
18300 #[inline]
18301 fn can_cast(kind: SyntaxKind) -> bool {
18302 kind == SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
18303 }
18304 #[inline]
18305 fn cast(syntax: SyntaxNode) -> Option<Self> {
18306 if Self::can_cast(syntax.kind()) {
18307 Some(Self { syntax })
18308 } else {
18309 None
18310 }
18311 }
18312 #[inline]
18313 fn syntax(&self) -> &SyntaxNode {
18314 &self.syntax
18315 }
18316}
18317impl AstNode for AlterTrigger {
18318 #[inline]
18319 fn can_cast(kind: SyntaxKind) -> bool {
18320 kind == SyntaxKind::ALTER_TRIGGER
18321 }
18322 #[inline]
18323 fn cast(syntax: SyntaxNode) -> Option<Self> {
18324 if Self::can_cast(syntax.kind()) {
18325 Some(Self { syntax })
18326 } else {
18327 None
18328 }
18329 }
18330 #[inline]
18331 fn syntax(&self) -> &SyntaxNode {
18332 &self.syntax
18333 }
18334}
18335impl AstNode for AlterType {
18336 #[inline]
18337 fn can_cast(kind: SyntaxKind) -> bool {
18338 kind == SyntaxKind::ALTER_TYPE
18339 }
18340 #[inline]
18341 fn cast(syntax: SyntaxNode) -> Option<Self> {
18342 if Self::can_cast(syntax.kind()) {
18343 Some(Self { syntax })
18344 } else {
18345 None
18346 }
18347 }
18348 #[inline]
18349 fn syntax(&self) -> &SyntaxNode {
18350 &self.syntax
18351 }
18352}
18353impl AstNode for AlterUser {
18354 #[inline]
18355 fn can_cast(kind: SyntaxKind) -> bool {
18356 kind == SyntaxKind::ALTER_USER
18357 }
18358 #[inline]
18359 fn cast(syntax: SyntaxNode) -> Option<Self> {
18360 if Self::can_cast(syntax.kind()) {
18361 Some(Self { syntax })
18362 } else {
18363 None
18364 }
18365 }
18366 #[inline]
18367 fn syntax(&self) -> &SyntaxNode {
18368 &self.syntax
18369 }
18370}
18371impl AstNode for AlterUserMapping {
18372 #[inline]
18373 fn can_cast(kind: SyntaxKind) -> bool {
18374 kind == SyntaxKind::ALTER_USER_MAPPING
18375 }
18376 #[inline]
18377 fn cast(syntax: SyntaxNode) -> Option<Self> {
18378 if Self::can_cast(syntax.kind()) {
18379 Some(Self { syntax })
18380 } else {
18381 None
18382 }
18383 }
18384 #[inline]
18385 fn syntax(&self) -> &SyntaxNode {
18386 &self.syntax
18387 }
18388}
18389impl AstNode for AlterView {
18390 #[inline]
18391 fn can_cast(kind: SyntaxKind) -> bool {
18392 kind == SyntaxKind::ALTER_VIEW
18393 }
18394 #[inline]
18395 fn cast(syntax: SyntaxNode) -> Option<Self> {
18396 if Self::can_cast(syntax.kind()) {
18397 Some(Self { syntax })
18398 } else {
18399 None
18400 }
18401 }
18402 #[inline]
18403 fn syntax(&self) -> &SyntaxNode {
18404 &self.syntax
18405 }
18406}
18407impl AstNode for Analyze {
18408 #[inline]
18409 fn can_cast(kind: SyntaxKind) -> bool {
18410 kind == SyntaxKind::ANALYZE
18411 }
18412 #[inline]
18413 fn cast(syntax: SyntaxNode) -> Option<Self> {
18414 if Self::can_cast(syntax.kind()) {
18415 Some(Self { syntax })
18416 } else {
18417 None
18418 }
18419 }
18420 #[inline]
18421 fn syntax(&self) -> &SyntaxNode {
18422 &self.syntax
18423 }
18424}
18425impl AstNode for AnyFn {
18426 #[inline]
18427 fn can_cast(kind: SyntaxKind) -> bool {
18428 kind == SyntaxKind::ANY_FN
18429 }
18430 #[inline]
18431 fn cast(syntax: SyntaxNode) -> Option<Self> {
18432 if Self::can_cast(syntax.kind()) {
18433 Some(Self { syntax })
18434 } else {
18435 None
18436 }
18437 }
18438 #[inline]
18439 fn syntax(&self) -> &SyntaxNode {
18440 &self.syntax
18441 }
18442}
18443impl AstNode for Arg {
18444 #[inline]
18445 fn can_cast(kind: SyntaxKind) -> bool {
18446 kind == SyntaxKind::ARG
18447 }
18448 #[inline]
18449 fn cast(syntax: SyntaxNode) -> Option<Self> {
18450 if Self::can_cast(syntax.kind()) {
18451 Some(Self { syntax })
18452 } else {
18453 None
18454 }
18455 }
18456 #[inline]
18457 fn syntax(&self) -> &SyntaxNode {
18458 &self.syntax
18459 }
18460}
18461impl AstNode for ArgList {
18462 #[inline]
18463 fn can_cast(kind: SyntaxKind) -> bool {
18464 kind == SyntaxKind::ARG_LIST
18465 }
18466 #[inline]
18467 fn cast(syntax: SyntaxNode) -> Option<Self> {
18468 if Self::can_cast(syntax.kind()) {
18469 Some(Self { syntax })
18470 } else {
18471 None
18472 }
18473 }
18474 #[inline]
18475 fn syntax(&self) -> &SyntaxNode {
18476 &self.syntax
18477 }
18478}
18479impl AstNode for ArrayExpr {
18480 #[inline]
18481 fn can_cast(kind: SyntaxKind) -> bool {
18482 kind == SyntaxKind::ARRAY_EXPR
18483 }
18484 #[inline]
18485 fn cast(syntax: SyntaxNode) -> Option<Self> {
18486 if Self::can_cast(syntax.kind()) {
18487 Some(Self { syntax })
18488 } else {
18489 None
18490 }
18491 }
18492 #[inline]
18493 fn syntax(&self) -> &SyntaxNode {
18494 &self.syntax
18495 }
18496}
18497impl AstNode for ArrayType {
18498 #[inline]
18499 fn can_cast(kind: SyntaxKind) -> bool {
18500 kind == SyntaxKind::ARRAY_TYPE
18501 }
18502 #[inline]
18503 fn cast(syntax: SyntaxNode) -> Option<Self> {
18504 if Self::can_cast(syntax.kind()) {
18505 Some(Self { syntax })
18506 } else {
18507 None
18508 }
18509 }
18510 #[inline]
18511 fn syntax(&self) -> &SyntaxNode {
18512 &self.syntax
18513 }
18514}
18515impl AstNode for AsFuncOption {
18516 #[inline]
18517 fn can_cast(kind: SyntaxKind) -> bool {
18518 kind == SyntaxKind::AS_FUNC_OPTION
18519 }
18520 #[inline]
18521 fn cast(syntax: SyntaxNode) -> Option<Self> {
18522 if Self::can_cast(syntax.kind()) {
18523 Some(Self { syntax })
18524 } else {
18525 None
18526 }
18527 }
18528 #[inline]
18529 fn syntax(&self) -> &SyntaxNode {
18530 &self.syntax
18531 }
18532}
18533impl AstNode for AsName {
18534 #[inline]
18535 fn can_cast(kind: SyntaxKind) -> bool {
18536 kind == SyntaxKind::AS_NAME
18537 }
18538 #[inline]
18539 fn cast(syntax: SyntaxNode) -> Option<Self> {
18540 if Self::can_cast(syntax.kind()) {
18541 Some(Self { syntax })
18542 } else {
18543 None
18544 }
18545 }
18546 #[inline]
18547 fn syntax(&self) -> &SyntaxNode {
18548 &self.syntax
18549 }
18550}
18551impl AstNode for AsPolicyType {
18552 #[inline]
18553 fn can_cast(kind: SyntaxKind) -> bool {
18554 kind == SyntaxKind::AS_POLICY_TYPE
18555 }
18556 #[inline]
18557 fn cast(syntax: SyntaxNode) -> Option<Self> {
18558 if Self::can_cast(syntax.kind()) {
18559 Some(Self { syntax })
18560 } else {
18561 None
18562 }
18563 }
18564 #[inline]
18565 fn syntax(&self) -> &SyntaxNode {
18566 &self.syntax
18567 }
18568}
18569impl AstNode for AtTimeZone {
18570 #[inline]
18571 fn can_cast(kind: SyntaxKind) -> bool {
18572 kind == SyntaxKind::AT_TIME_ZONE
18573 }
18574 #[inline]
18575 fn cast(syntax: SyntaxNode) -> Option<Self> {
18576 if Self::can_cast(syntax.kind()) {
18577 Some(Self { syntax })
18578 } else {
18579 None
18580 }
18581 }
18582 #[inline]
18583 fn syntax(&self) -> &SyntaxNode {
18584 &self.syntax
18585 }
18586}
18587impl AstNode for AttachPartition {
18588 #[inline]
18589 fn can_cast(kind: SyntaxKind) -> bool {
18590 kind == SyntaxKind::ATTACH_PARTITION
18591 }
18592 #[inline]
18593 fn cast(syntax: SyntaxNode) -> Option<Self> {
18594 if Self::can_cast(syntax.kind()) {
18595 Some(Self { syntax })
18596 } else {
18597 None
18598 }
18599 }
18600 #[inline]
18601 fn syntax(&self) -> &SyntaxNode {
18602 &self.syntax
18603 }
18604}
18605impl AstNode for AttributeList {
18606 #[inline]
18607 fn can_cast(kind: SyntaxKind) -> bool {
18608 kind == SyntaxKind::ATTRIBUTE_LIST
18609 }
18610 #[inline]
18611 fn cast(syntax: SyntaxNode) -> Option<Self> {
18612 if Self::can_cast(syntax.kind()) {
18613 Some(Self { syntax })
18614 } else {
18615 None
18616 }
18617 }
18618 #[inline]
18619 fn syntax(&self) -> &SyntaxNode {
18620 &self.syntax
18621 }
18622}
18623impl AstNode for AttributeOption {
18624 #[inline]
18625 fn can_cast(kind: SyntaxKind) -> bool {
18626 kind == SyntaxKind::ATTRIBUTE_OPTION
18627 }
18628 #[inline]
18629 fn cast(syntax: SyntaxNode) -> Option<Self> {
18630 if Self::can_cast(syntax.kind()) {
18631 Some(Self { syntax })
18632 } else {
18633 None
18634 }
18635 }
18636 #[inline]
18637 fn syntax(&self) -> &SyntaxNode {
18638 &self.syntax
18639 }
18640}
18641impl AstNode for AttributeValue {
18642 #[inline]
18643 fn can_cast(kind: SyntaxKind) -> bool {
18644 kind == SyntaxKind::ATTRIBUTE_VALUE
18645 }
18646 #[inline]
18647 fn cast(syntax: SyntaxNode) -> Option<Self> {
18648 if Self::can_cast(syntax.kind()) {
18649 Some(Self { syntax })
18650 } else {
18651 None
18652 }
18653 }
18654 #[inline]
18655 fn syntax(&self) -> &SyntaxNode {
18656 &self.syntax
18657 }
18658}
18659impl AstNode for Begin {
18660 #[inline]
18661 fn can_cast(kind: SyntaxKind) -> bool {
18662 kind == SyntaxKind::BEGIN
18663 }
18664 #[inline]
18665 fn cast(syntax: SyntaxNode) -> Option<Self> {
18666 if Self::can_cast(syntax.kind()) {
18667 Some(Self { syntax })
18668 } else {
18669 None
18670 }
18671 }
18672 #[inline]
18673 fn syntax(&self) -> &SyntaxNode {
18674 &self.syntax
18675 }
18676}
18677impl AstNode for BeginFuncOption {
18678 #[inline]
18679 fn can_cast(kind: SyntaxKind) -> bool {
18680 kind == SyntaxKind::BEGIN_FUNC_OPTION
18681 }
18682 #[inline]
18683 fn cast(syntax: SyntaxNode) -> Option<Self> {
18684 if Self::can_cast(syntax.kind()) {
18685 Some(Self { syntax })
18686 } else {
18687 None
18688 }
18689 }
18690 #[inline]
18691 fn syntax(&self) -> &SyntaxNode {
18692 &self.syntax
18693 }
18694}
18695impl AstNode for BeginFuncOptionList {
18696 #[inline]
18697 fn can_cast(kind: SyntaxKind) -> bool {
18698 kind == SyntaxKind::BEGIN_FUNC_OPTION_LIST
18699 }
18700 #[inline]
18701 fn cast(syntax: SyntaxNode) -> Option<Self> {
18702 if Self::can_cast(syntax.kind()) {
18703 Some(Self { syntax })
18704 } else {
18705 None
18706 }
18707 }
18708 #[inline]
18709 fn syntax(&self) -> &SyntaxNode {
18710 &self.syntax
18711 }
18712}
18713impl AstNode for BetweenExpr {
18714 #[inline]
18715 fn can_cast(kind: SyntaxKind) -> bool {
18716 kind == SyntaxKind::BETWEEN_EXPR
18717 }
18718 #[inline]
18719 fn cast(syntax: SyntaxNode) -> Option<Self> {
18720 if Self::can_cast(syntax.kind()) {
18721 Some(Self { syntax })
18722 } else {
18723 None
18724 }
18725 }
18726 #[inline]
18727 fn syntax(&self) -> &SyntaxNode {
18728 &self.syntax
18729 }
18730}
18731impl AstNode for BinExpr {
18732 #[inline]
18733 fn can_cast(kind: SyntaxKind) -> bool {
18734 kind == SyntaxKind::BIN_EXPR
18735 }
18736 #[inline]
18737 fn cast(syntax: SyntaxNode) -> Option<Self> {
18738 if Self::can_cast(syntax.kind()) {
18739 Some(Self { syntax })
18740 } else {
18741 None
18742 }
18743 }
18744 #[inline]
18745 fn syntax(&self) -> &SyntaxNode {
18746 &self.syntax
18747 }
18748}
18749impl AstNode for BitType {
18750 #[inline]
18751 fn can_cast(kind: SyntaxKind) -> bool {
18752 kind == SyntaxKind::BIT_TYPE
18753 }
18754 #[inline]
18755 fn cast(syntax: SyntaxNode) -> Option<Self> {
18756 if Self::can_cast(syntax.kind()) {
18757 Some(Self { syntax })
18758 } else {
18759 None
18760 }
18761 }
18762 #[inline]
18763 fn syntax(&self) -> &SyntaxNode {
18764 &self.syntax
18765 }
18766}
18767impl AstNode for Call {
18768 #[inline]
18769 fn can_cast(kind: SyntaxKind) -> bool {
18770 kind == SyntaxKind::CALL
18771 }
18772 #[inline]
18773 fn cast(syntax: SyntaxNode) -> Option<Self> {
18774 if Self::can_cast(syntax.kind()) {
18775 Some(Self { syntax })
18776 } else {
18777 None
18778 }
18779 }
18780 #[inline]
18781 fn syntax(&self) -> &SyntaxNode {
18782 &self.syntax
18783 }
18784}
18785impl AstNode for CallExpr {
18786 #[inline]
18787 fn can_cast(kind: SyntaxKind) -> bool {
18788 kind == SyntaxKind::CALL_EXPR
18789 }
18790 #[inline]
18791 fn cast(syntax: SyntaxNode) -> Option<Self> {
18792 if Self::can_cast(syntax.kind()) {
18793 Some(Self { syntax })
18794 } else {
18795 None
18796 }
18797 }
18798 #[inline]
18799 fn syntax(&self) -> &SyntaxNode {
18800 &self.syntax
18801 }
18802}
18803impl AstNode for Cascade {
18804 #[inline]
18805 fn can_cast(kind: SyntaxKind) -> bool {
18806 kind == SyntaxKind::CASCADE
18807 }
18808 #[inline]
18809 fn cast(syntax: SyntaxNode) -> Option<Self> {
18810 if Self::can_cast(syntax.kind()) {
18811 Some(Self { syntax })
18812 } else {
18813 None
18814 }
18815 }
18816 #[inline]
18817 fn syntax(&self) -> &SyntaxNode {
18818 &self.syntax
18819 }
18820}
18821impl AstNode for CaseExpr {
18822 #[inline]
18823 fn can_cast(kind: SyntaxKind) -> bool {
18824 kind == SyntaxKind::CASE_EXPR
18825 }
18826 #[inline]
18827 fn cast(syntax: SyntaxNode) -> Option<Self> {
18828 if Self::can_cast(syntax.kind()) {
18829 Some(Self { syntax })
18830 } else {
18831 None
18832 }
18833 }
18834 #[inline]
18835 fn syntax(&self) -> &SyntaxNode {
18836 &self.syntax
18837 }
18838}
18839impl AstNode for CastExpr {
18840 #[inline]
18841 fn can_cast(kind: SyntaxKind) -> bool {
18842 kind == SyntaxKind::CAST_EXPR
18843 }
18844 #[inline]
18845 fn cast(syntax: SyntaxNode) -> Option<Self> {
18846 if Self::can_cast(syntax.kind()) {
18847 Some(Self { syntax })
18848 } else {
18849 None
18850 }
18851 }
18852 #[inline]
18853 fn syntax(&self) -> &SyntaxNode {
18854 &self.syntax
18855 }
18856}
18857impl AstNode for CastSig {
18858 #[inline]
18859 fn can_cast(kind: SyntaxKind) -> bool {
18860 kind == SyntaxKind::CAST_SIG
18861 }
18862 #[inline]
18863 fn cast(syntax: SyntaxNode) -> Option<Self> {
18864 if Self::can_cast(syntax.kind()) {
18865 Some(Self { syntax })
18866 } else {
18867 None
18868 }
18869 }
18870 #[inline]
18871 fn syntax(&self) -> &SyntaxNode {
18872 &self.syntax
18873 }
18874}
18875impl AstNode for CharType {
18876 #[inline]
18877 fn can_cast(kind: SyntaxKind) -> bool {
18878 kind == SyntaxKind::CHAR_TYPE
18879 }
18880 #[inline]
18881 fn cast(syntax: SyntaxNode) -> Option<Self> {
18882 if Self::can_cast(syntax.kind()) {
18883 Some(Self { syntax })
18884 } else {
18885 None
18886 }
18887 }
18888 #[inline]
18889 fn syntax(&self) -> &SyntaxNode {
18890 &self.syntax
18891 }
18892}
18893impl AstNode for CheckConstraint {
18894 #[inline]
18895 fn can_cast(kind: SyntaxKind) -> bool {
18896 kind == SyntaxKind::CHECK_CONSTRAINT
18897 }
18898 #[inline]
18899 fn cast(syntax: SyntaxNode) -> Option<Self> {
18900 if Self::can_cast(syntax.kind()) {
18901 Some(Self { syntax })
18902 } else {
18903 None
18904 }
18905 }
18906 #[inline]
18907 fn syntax(&self) -> &SyntaxNode {
18908 &self.syntax
18909 }
18910}
18911impl AstNode for Checkpoint {
18912 #[inline]
18913 fn can_cast(kind: SyntaxKind) -> bool {
18914 kind == SyntaxKind::CHECKPOINT
18915 }
18916 #[inline]
18917 fn cast(syntax: SyntaxNode) -> Option<Self> {
18918 if Self::can_cast(syntax.kind()) {
18919 Some(Self { syntax })
18920 } else {
18921 None
18922 }
18923 }
18924 #[inline]
18925 fn syntax(&self) -> &SyntaxNode {
18926 &self.syntax
18927 }
18928}
18929impl AstNode for Close {
18930 #[inline]
18931 fn can_cast(kind: SyntaxKind) -> bool {
18932 kind == SyntaxKind::CLOSE
18933 }
18934 #[inline]
18935 fn cast(syntax: SyntaxNode) -> Option<Self> {
18936 if Self::can_cast(syntax.kind()) {
18937 Some(Self { syntax })
18938 } else {
18939 None
18940 }
18941 }
18942 #[inline]
18943 fn syntax(&self) -> &SyntaxNode {
18944 &self.syntax
18945 }
18946}
18947impl AstNode for Cluster {
18948 #[inline]
18949 fn can_cast(kind: SyntaxKind) -> bool {
18950 kind == SyntaxKind::CLUSTER
18951 }
18952 #[inline]
18953 fn cast(syntax: SyntaxNode) -> Option<Self> {
18954 if Self::can_cast(syntax.kind()) {
18955 Some(Self { syntax })
18956 } else {
18957 None
18958 }
18959 }
18960 #[inline]
18961 fn syntax(&self) -> &SyntaxNode {
18962 &self.syntax
18963 }
18964}
18965impl AstNode for ClusterOn {
18966 #[inline]
18967 fn can_cast(kind: SyntaxKind) -> bool {
18968 kind == SyntaxKind::CLUSTER_ON
18969 }
18970 #[inline]
18971 fn cast(syntax: SyntaxNode) -> Option<Self> {
18972 if Self::can_cast(syntax.kind()) {
18973 Some(Self { syntax })
18974 } else {
18975 None
18976 }
18977 }
18978 #[inline]
18979 fn syntax(&self) -> &SyntaxNode {
18980 &self.syntax
18981 }
18982}
18983impl AstNode for Collate {
18984 #[inline]
18985 fn can_cast(kind: SyntaxKind) -> bool {
18986 kind == SyntaxKind::COLLATE
18987 }
18988 #[inline]
18989 fn cast(syntax: SyntaxNode) -> Option<Self> {
18990 if Self::can_cast(syntax.kind()) {
18991 Some(Self { syntax })
18992 } else {
18993 None
18994 }
18995 }
18996 #[inline]
18997 fn syntax(&self) -> &SyntaxNode {
18998 &self.syntax
18999 }
19000}
19001impl AstNode for ColonColon {
19002 #[inline]
19003 fn can_cast(kind: SyntaxKind) -> bool {
19004 kind == SyntaxKind::COLON_COLON
19005 }
19006 #[inline]
19007 fn cast(syntax: SyntaxNode) -> Option<Self> {
19008 if Self::can_cast(syntax.kind()) {
19009 Some(Self { syntax })
19010 } else {
19011 None
19012 }
19013 }
19014 #[inline]
19015 fn syntax(&self) -> &SyntaxNode {
19016 &self.syntax
19017 }
19018}
19019impl AstNode for ColonEq {
19020 #[inline]
19021 fn can_cast(kind: SyntaxKind) -> bool {
19022 kind == SyntaxKind::COLON_EQ
19023 }
19024 #[inline]
19025 fn cast(syntax: SyntaxNode) -> Option<Self> {
19026 if Self::can_cast(syntax.kind()) {
19027 Some(Self { syntax })
19028 } else {
19029 None
19030 }
19031 }
19032 #[inline]
19033 fn syntax(&self) -> &SyntaxNode {
19034 &self.syntax
19035 }
19036}
19037impl AstNode for Column {
19038 #[inline]
19039 fn can_cast(kind: SyntaxKind) -> bool {
19040 kind == SyntaxKind::COLUMN
19041 }
19042 #[inline]
19043 fn cast(syntax: SyntaxNode) -> Option<Self> {
19044 if Self::can_cast(syntax.kind()) {
19045 Some(Self { syntax })
19046 } else {
19047 None
19048 }
19049 }
19050 #[inline]
19051 fn syntax(&self) -> &SyntaxNode {
19052 &self.syntax
19053 }
19054}
19055impl AstNode for ColumnList {
19056 #[inline]
19057 fn can_cast(kind: SyntaxKind) -> bool {
19058 kind == SyntaxKind::COLUMN_LIST
19059 }
19060 #[inline]
19061 fn cast(syntax: SyntaxNode) -> Option<Self> {
19062 if Self::can_cast(syntax.kind()) {
19063 Some(Self { syntax })
19064 } else {
19065 None
19066 }
19067 }
19068 #[inline]
19069 fn syntax(&self) -> &SyntaxNode {
19070 &self.syntax
19071 }
19072}
19073impl AstNode for CommentOn {
19074 #[inline]
19075 fn can_cast(kind: SyntaxKind) -> bool {
19076 kind == SyntaxKind::COMMENT_ON
19077 }
19078 #[inline]
19079 fn cast(syntax: SyntaxNode) -> Option<Self> {
19080 if Self::can_cast(syntax.kind()) {
19081 Some(Self { syntax })
19082 } else {
19083 None
19084 }
19085 }
19086 #[inline]
19087 fn syntax(&self) -> &SyntaxNode {
19088 &self.syntax
19089 }
19090}
19091impl AstNode for Commit {
19092 #[inline]
19093 fn can_cast(kind: SyntaxKind) -> bool {
19094 kind == SyntaxKind::COMMIT
19095 }
19096 #[inline]
19097 fn cast(syntax: SyntaxNode) -> Option<Self> {
19098 if Self::can_cast(syntax.kind()) {
19099 Some(Self { syntax })
19100 } else {
19101 None
19102 }
19103 }
19104 #[inline]
19105 fn syntax(&self) -> &SyntaxNode {
19106 &self.syntax
19107 }
19108}
19109impl AstNode for CompoundSelect {
19110 #[inline]
19111 fn can_cast(kind: SyntaxKind) -> bool {
19112 kind == SyntaxKind::COMPOUND_SELECT
19113 }
19114 #[inline]
19115 fn cast(syntax: SyntaxNode) -> Option<Self> {
19116 if Self::can_cast(syntax.kind()) {
19117 Some(Self { syntax })
19118 } else {
19119 None
19120 }
19121 }
19122 #[inline]
19123 fn syntax(&self) -> &SyntaxNode {
19124 &self.syntax
19125 }
19126}
19127impl AstNode for CompressionMethod {
19128 #[inline]
19129 fn can_cast(kind: SyntaxKind) -> bool {
19130 kind == SyntaxKind::COMPRESSION_METHOD
19131 }
19132 #[inline]
19133 fn cast(syntax: SyntaxNode) -> Option<Self> {
19134 if Self::can_cast(syntax.kind()) {
19135 Some(Self { syntax })
19136 } else {
19137 None
19138 }
19139 }
19140 #[inline]
19141 fn syntax(&self) -> &SyntaxNode {
19142 &self.syntax
19143 }
19144}
19145impl AstNode for ConflictDoNothing {
19146 #[inline]
19147 fn can_cast(kind: SyntaxKind) -> bool {
19148 kind == SyntaxKind::CONFLICT_DO_NOTHING
19149 }
19150 #[inline]
19151 fn cast(syntax: SyntaxNode) -> Option<Self> {
19152 if Self::can_cast(syntax.kind()) {
19153 Some(Self { syntax })
19154 } else {
19155 None
19156 }
19157 }
19158 #[inline]
19159 fn syntax(&self) -> &SyntaxNode {
19160 &self.syntax
19161 }
19162}
19163impl AstNode for ConflictDoSelect {
19164 #[inline]
19165 fn can_cast(kind: SyntaxKind) -> bool {
19166 kind == SyntaxKind::CONFLICT_DO_SELECT
19167 }
19168 #[inline]
19169 fn cast(syntax: SyntaxNode) -> Option<Self> {
19170 if Self::can_cast(syntax.kind()) {
19171 Some(Self { syntax })
19172 } else {
19173 None
19174 }
19175 }
19176 #[inline]
19177 fn syntax(&self) -> &SyntaxNode {
19178 &self.syntax
19179 }
19180}
19181impl AstNode for ConflictDoUpdateSet {
19182 #[inline]
19183 fn can_cast(kind: SyntaxKind) -> bool {
19184 kind == SyntaxKind::CONFLICT_DO_UPDATE_SET
19185 }
19186 #[inline]
19187 fn cast(syntax: SyntaxNode) -> Option<Self> {
19188 if Self::can_cast(syntax.kind()) {
19189 Some(Self { syntax })
19190 } else {
19191 None
19192 }
19193 }
19194 #[inline]
19195 fn syntax(&self) -> &SyntaxNode {
19196 &self.syntax
19197 }
19198}
19199impl AstNode for ConflictIndexItem {
19200 #[inline]
19201 fn can_cast(kind: SyntaxKind) -> bool {
19202 kind == SyntaxKind::CONFLICT_INDEX_ITEM
19203 }
19204 #[inline]
19205 fn cast(syntax: SyntaxNode) -> Option<Self> {
19206 if Self::can_cast(syntax.kind()) {
19207 Some(Self { syntax })
19208 } else {
19209 None
19210 }
19211 }
19212 #[inline]
19213 fn syntax(&self) -> &SyntaxNode {
19214 &self.syntax
19215 }
19216}
19217impl AstNode for ConflictIndexItemList {
19218 #[inline]
19219 fn can_cast(kind: SyntaxKind) -> bool {
19220 kind == SyntaxKind::CONFLICT_INDEX_ITEM_LIST
19221 }
19222 #[inline]
19223 fn cast(syntax: SyntaxNode) -> Option<Self> {
19224 if Self::can_cast(syntax.kind()) {
19225 Some(Self { syntax })
19226 } else {
19227 None
19228 }
19229 }
19230 #[inline]
19231 fn syntax(&self) -> &SyntaxNode {
19232 &self.syntax
19233 }
19234}
19235impl AstNode for ConflictOnConstraint {
19236 #[inline]
19237 fn can_cast(kind: SyntaxKind) -> bool {
19238 kind == SyntaxKind::CONFLICT_ON_CONSTRAINT
19239 }
19240 #[inline]
19241 fn cast(syntax: SyntaxNode) -> Option<Self> {
19242 if Self::can_cast(syntax.kind()) {
19243 Some(Self { syntax })
19244 } else {
19245 None
19246 }
19247 }
19248 #[inline]
19249 fn syntax(&self) -> &SyntaxNode {
19250 &self.syntax
19251 }
19252}
19253impl AstNode for ConflictOnIndex {
19254 #[inline]
19255 fn can_cast(kind: SyntaxKind) -> bool {
19256 kind == SyntaxKind::CONFLICT_ON_INDEX
19257 }
19258 #[inline]
19259 fn cast(syntax: SyntaxNode) -> Option<Self> {
19260 if Self::can_cast(syntax.kind()) {
19261 Some(Self { syntax })
19262 } else {
19263 None
19264 }
19265 }
19266 #[inline]
19267 fn syntax(&self) -> &SyntaxNode {
19268 &self.syntax
19269 }
19270}
19271impl AstNode for ConstraintExclusion {
19272 #[inline]
19273 fn can_cast(kind: SyntaxKind) -> bool {
19274 kind == SyntaxKind::CONSTRAINT_EXCLUSION
19275 }
19276 #[inline]
19277 fn cast(syntax: SyntaxNode) -> Option<Self> {
19278 if Self::can_cast(syntax.kind()) {
19279 Some(Self { syntax })
19280 } else {
19281 None
19282 }
19283 }
19284 #[inline]
19285 fn syntax(&self) -> &SyntaxNode {
19286 &self.syntax
19287 }
19288}
19289impl AstNode for ConstraintExclusionList {
19290 #[inline]
19291 fn can_cast(kind: SyntaxKind) -> bool {
19292 kind == SyntaxKind::CONSTRAINT_EXCLUSION_LIST
19293 }
19294 #[inline]
19295 fn cast(syntax: SyntaxNode) -> Option<Self> {
19296 if Self::can_cast(syntax.kind()) {
19297 Some(Self { syntax })
19298 } else {
19299 None
19300 }
19301 }
19302 #[inline]
19303 fn syntax(&self) -> &SyntaxNode {
19304 &self.syntax
19305 }
19306}
19307impl AstNode for ConstraintIncludeClause {
19308 #[inline]
19309 fn can_cast(kind: SyntaxKind) -> bool {
19310 kind == SyntaxKind::CONSTRAINT_INCLUDE_CLAUSE
19311 }
19312 #[inline]
19313 fn cast(syntax: SyntaxNode) -> Option<Self> {
19314 if Self::can_cast(syntax.kind()) {
19315 Some(Self { syntax })
19316 } else {
19317 None
19318 }
19319 }
19320 #[inline]
19321 fn syntax(&self) -> &SyntaxNode {
19322 &self.syntax
19323 }
19324}
19325impl AstNode for ConstraintIndexMethod {
19326 #[inline]
19327 fn can_cast(kind: SyntaxKind) -> bool {
19328 kind == SyntaxKind::CONSTRAINT_INDEX_METHOD
19329 }
19330 #[inline]
19331 fn cast(syntax: SyntaxNode) -> Option<Self> {
19332 if Self::can_cast(syntax.kind()) {
19333 Some(Self { syntax })
19334 } else {
19335 None
19336 }
19337 }
19338 #[inline]
19339 fn syntax(&self) -> &SyntaxNode {
19340 &self.syntax
19341 }
19342}
19343impl AstNode for ConstraintIndexTablespace {
19344 #[inline]
19345 fn can_cast(kind: SyntaxKind) -> bool {
19346 kind == SyntaxKind::CONSTRAINT_INDEX_TABLESPACE
19347 }
19348 #[inline]
19349 fn cast(syntax: SyntaxNode) -> Option<Self> {
19350 if Self::can_cast(syntax.kind()) {
19351 Some(Self { syntax })
19352 } else {
19353 None
19354 }
19355 }
19356 #[inline]
19357 fn syntax(&self) -> &SyntaxNode {
19358 &self.syntax
19359 }
19360}
19361impl AstNode for ConstraintName {
19362 #[inline]
19363 fn can_cast(kind: SyntaxKind) -> bool {
19364 kind == SyntaxKind::CONSTRAINT_NAME
19365 }
19366 #[inline]
19367 fn cast(syntax: SyntaxNode) -> Option<Self> {
19368 if Self::can_cast(syntax.kind()) {
19369 Some(Self { syntax })
19370 } else {
19371 None
19372 }
19373 }
19374 #[inline]
19375 fn syntax(&self) -> &SyntaxNode {
19376 &self.syntax
19377 }
19378}
19379impl AstNode for Copy {
19380 #[inline]
19381 fn can_cast(kind: SyntaxKind) -> bool {
19382 kind == SyntaxKind::COPY
19383 }
19384 #[inline]
19385 fn cast(syntax: SyntaxNode) -> Option<Self> {
19386 if Self::can_cast(syntax.kind()) {
19387 Some(Self { syntax })
19388 } else {
19389 None
19390 }
19391 }
19392 #[inline]
19393 fn syntax(&self) -> &SyntaxNode {
19394 &self.syntax
19395 }
19396}
19397impl AstNode for CopyOption {
19398 #[inline]
19399 fn can_cast(kind: SyntaxKind) -> bool {
19400 kind == SyntaxKind::COPY_OPTION
19401 }
19402 #[inline]
19403 fn cast(syntax: SyntaxNode) -> Option<Self> {
19404 if Self::can_cast(syntax.kind()) {
19405 Some(Self { syntax })
19406 } else {
19407 None
19408 }
19409 }
19410 #[inline]
19411 fn syntax(&self) -> &SyntaxNode {
19412 &self.syntax
19413 }
19414}
19415impl AstNode for CopyOptionList {
19416 #[inline]
19417 fn can_cast(kind: SyntaxKind) -> bool {
19418 kind == SyntaxKind::COPY_OPTION_LIST
19419 }
19420 #[inline]
19421 fn cast(syntax: SyntaxNode) -> Option<Self> {
19422 if Self::can_cast(syntax.kind()) {
19423 Some(Self { syntax })
19424 } else {
19425 None
19426 }
19427 }
19428 #[inline]
19429 fn syntax(&self) -> &SyntaxNode {
19430 &self.syntax
19431 }
19432}
19433impl AstNode for CostFuncOption {
19434 #[inline]
19435 fn can_cast(kind: SyntaxKind) -> bool {
19436 kind == SyntaxKind::COST_FUNC_OPTION
19437 }
19438 #[inline]
19439 fn cast(syntax: SyntaxNode) -> Option<Self> {
19440 if Self::can_cast(syntax.kind()) {
19441 Some(Self { syntax })
19442 } else {
19443 None
19444 }
19445 }
19446 #[inline]
19447 fn syntax(&self) -> &SyntaxNode {
19448 &self.syntax
19449 }
19450}
19451impl AstNode for CreateAccessMethod {
19452 #[inline]
19453 fn can_cast(kind: SyntaxKind) -> bool {
19454 kind == SyntaxKind::CREATE_ACCESS_METHOD
19455 }
19456 #[inline]
19457 fn cast(syntax: SyntaxNode) -> Option<Self> {
19458 if Self::can_cast(syntax.kind()) {
19459 Some(Self { syntax })
19460 } else {
19461 None
19462 }
19463 }
19464 #[inline]
19465 fn syntax(&self) -> &SyntaxNode {
19466 &self.syntax
19467 }
19468}
19469impl AstNode for CreateAggregate {
19470 #[inline]
19471 fn can_cast(kind: SyntaxKind) -> bool {
19472 kind == SyntaxKind::CREATE_AGGREGATE
19473 }
19474 #[inline]
19475 fn cast(syntax: SyntaxNode) -> Option<Self> {
19476 if Self::can_cast(syntax.kind()) {
19477 Some(Self { syntax })
19478 } else {
19479 None
19480 }
19481 }
19482 #[inline]
19483 fn syntax(&self) -> &SyntaxNode {
19484 &self.syntax
19485 }
19486}
19487impl AstNode for CreateCast {
19488 #[inline]
19489 fn can_cast(kind: SyntaxKind) -> bool {
19490 kind == SyntaxKind::CREATE_CAST
19491 }
19492 #[inline]
19493 fn cast(syntax: SyntaxNode) -> Option<Self> {
19494 if Self::can_cast(syntax.kind()) {
19495 Some(Self { syntax })
19496 } else {
19497 None
19498 }
19499 }
19500 #[inline]
19501 fn syntax(&self) -> &SyntaxNode {
19502 &self.syntax
19503 }
19504}
19505impl AstNode for CreateCollation {
19506 #[inline]
19507 fn can_cast(kind: SyntaxKind) -> bool {
19508 kind == SyntaxKind::CREATE_COLLATION
19509 }
19510 #[inline]
19511 fn cast(syntax: SyntaxNode) -> Option<Self> {
19512 if Self::can_cast(syntax.kind()) {
19513 Some(Self { syntax })
19514 } else {
19515 None
19516 }
19517 }
19518 #[inline]
19519 fn syntax(&self) -> &SyntaxNode {
19520 &self.syntax
19521 }
19522}
19523impl AstNode for CreateConversion {
19524 #[inline]
19525 fn can_cast(kind: SyntaxKind) -> bool {
19526 kind == SyntaxKind::CREATE_CONVERSION
19527 }
19528 #[inline]
19529 fn cast(syntax: SyntaxNode) -> Option<Self> {
19530 if Self::can_cast(syntax.kind()) {
19531 Some(Self { syntax })
19532 } else {
19533 None
19534 }
19535 }
19536 #[inline]
19537 fn syntax(&self) -> &SyntaxNode {
19538 &self.syntax
19539 }
19540}
19541impl AstNode for CreateDatabase {
19542 #[inline]
19543 fn can_cast(kind: SyntaxKind) -> bool {
19544 kind == SyntaxKind::CREATE_DATABASE
19545 }
19546 #[inline]
19547 fn cast(syntax: SyntaxNode) -> Option<Self> {
19548 if Self::can_cast(syntax.kind()) {
19549 Some(Self { syntax })
19550 } else {
19551 None
19552 }
19553 }
19554 #[inline]
19555 fn syntax(&self) -> &SyntaxNode {
19556 &self.syntax
19557 }
19558}
19559impl AstNode for CreateDatabaseOption {
19560 #[inline]
19561 fn can_cast(kind: SyntaxKind) -> bool {
19562 kind == SyntaxKind::CREATE_DATABASE_OPTION
19563 }
19564 #[inline]
19565 fn cast(syntax: SyntaxNode) -> Option<Self> {
19566 if Self::can_cast(syntax.kind()) {
19567 Some(Self { syntax })
19568 } else {
19569 None
19570 }
19571 }
19572 #[inline]
19573 fn syntax(&self) -> &SyntaxNode {
19574 &self.syntax
19575 }
19576}
19577impl AstNode for CreateDatabaseOptionList {
19578 #[inline]
19579 fn can_cast(kind: SyntaxKind) -> bool {
19580 kind == SyntaxKind::CREATE_DATABASE_OPTION_LIST
19581 }
19582 #[inline]
19583 fn cast(syntax: SyntaxNode) -> Option<Self> {
19584 if Self::can_cast(syntax.kind()) {
19585 Some(Self { syntax })
19586 } else {
19587 None
19588 }
19589 }
19590 #[inline]
19591 fn syntax(&self) -> &SyntaxNode {
19592 &self.syntax
19593 }
19594}
19595impl AstNode for CreateDomain {
19596 #[inline]
19597 fn can_cast(kind: SyntaxKind) -> bool {
19598 kind == SyntaxKind::CREATE_DOMAIN
19599 }
19600 #[inline]
19601 fn cast(syntax: SyntaxNode) -> Option<Self> {
19602 if Self::can_cast(syntax.kind()) {
19603 Some(Self { syntax })
19604 } else {
19605 None
19606 }
19607 }
19608 #[inline]
19609 fn syntax(&self) -> &SyntaxNode {
19610 &self.syntax
19611 }
19612}
19613impl AstNode for CreateEventTrigger {
19614 #[inline]
19615 fn can_cast(kind: SyntaxKind) -> bool {
19616 kind == SyntaxKind::CREATE_EVENT_TRIGGER
19617 }
19618 #[inline]
19619 fn cast(syntax: SyntaxNode) -> Option<Self> {
19620 if Self::can_cast(syntax.kind()) {
19621 Some(Self { syntax })
19622 } else {
19623 None
19624 }
19625 }
19626 #[inline]
19627 fn syntax(&self) -> &SyntaxNode {
19628 &self.syntax
19629 }
19630}
19631impl AstNode for CreateExtension {
19632 #[inline]
19633 fn can_cast(kind: SyntaxKind) -> bool {
19634 kind == SyntaxKind::CREATE_EXTENSION
19635 }
19636 #[inline]
19637 fn cast(syntax: SyntaxNode) -> Option<Self> {
19638 if Self::can_cast(syntax.kind()) {
19639 Some(Self { syntax })
19640 } else {
19641 None
19642 }
19643 }
19644 #[inline]
19645 fn syntax(&self) -> &SyntaxNode {
19646 &self.syntax
19647 }
19648}
19649impl AstNode for CreateForeignDataWrapper {
19650 #[inline]
19651 fn can_cast(kind: SyntaxKind) -> bool {
19652 kind == SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
19653 }
19654 #[inline]
19655 fn cast(syntax: SyntaxNode) -> Option<Self> {
19656 if Self::can_cast(syntax.kind()) {
19657 Some(Self { syntax })
19658 } else {
19659 None
19660 }
19661 }
19662 #[inline]
19663 fn syntax(&self) -> &SyntaxNode {
19664 &self.syntax
19665 }
19666}
19667impl AstNode for CreateForeignTable {
19668 #[inline]
19669 fn can_cast(kind: SyntaxKind) -> bool {
19670 kind == SyntaxKind::CREATE_FOREIGN_TABLE
19671 }
19672 #[inline]
19673 fn cast(syntax: SyntaxNode) -> Option<Self> {
19674 if Self::can_cast(syntax.kind()) {
19675 Some(Self { syntax })
19676 } else {
19677 None
19678 }
19679 }
19680 #[inline]
19681 fn syntax(&self) -> &SyntaxNode {
19682 &self.syntax
19683 }
19684}
19685impl AstNode for CreateFunction {
19686 #[inline]
19687 fn can_cast(kind: SyntaxKind) -> bool {
19688 kind == SyntaxKind::CREATE_FUNCTION
19689 }
19690 #[inline]
19691 fn cast(syntax: SyntaxNode) -> Option<Self> {
19692 if Self::can_cast(syntax.kind()) {
19693 Some(Self { syntax })
19694 } else {
19695 None
19696 }
19697 }
19698 #[inline]
19699 fn syntax(&self) -> &SyntaxNode {
19700 &self.syntax
19701 }
19702}
19703impl AstNode for CreateGroup {
19704 #[inline]
19705 fn can_cast(kind: SyntaxKind) -> bool {
19706 kind == SyntaxKind::CREATE_GROUP
19707 }
19708 #[inline]
19709 fn cast(syntax: SyntaxNode) -> Option<Self> {
19710 if Self::can_cast(syntax.kind()) {
19711 Some(Self { syntax })
19712 } else {
19713 None
19714 }
19715 }
19716 #[inline]
19717 fn syntax(&self) -> &SyntaxNode {
19718 &self.syntax
19719 }
19720}
19721impl AstNode for CreateIndex {
19722 #[inline]
19723 fn can_cast(kind: SyntaxKind) -> bool {
19724 kind == SyntaxKind::CREATE_INDEX
19725 }
19726 #[inline]
19727 fn cast(syntax: SyntaxNode) -> Option<Self> {
19728 if Self::can_cast(syntax.kind()) {
19729 Some(Self { syntax })
19730 } else {
19731 None
19732 }
19733 }
19734 #[inline]
19735 fn syntax(&self) -> &SyntaxNode {
19736 &self.syntax
19737 }
19738}
19739impl AstNode for CreateLanguage {
19740 #[inline]
19741 fn can_cast(kind: SyntaxKind) -> bool {
19742 kind == SyntaxKind::CREATE_LANGUAGE
19743 }
19744 #[inline]
19745 fn cast(syntax: SyntaxNode) -> Option<Self> {
19746 if Self::can_cast(syntax.kind()) {
19747 Some(Self { syntax })
19748 } else {
19749 None
19750 }
19751 }
19752 #[inline]
19753 fn syntax(&self) -> &SyntaxNode {
19754 &self.syntax
19755 }
19756}
19757impl AstNode for CreateMaterializedView {
19758 #[inline]
19759 fn can_cast(kind: SyntaxKind) -> bool {
19760 kind == SyntaxKind::CREATE_MATERIALIZED_VIEW
19761 }
19762 #[inline]
19763 fn cast(syntax: SyntaxNode) -> Option<Self> {
19764 if Self::can_cast(syntax.kind()) {
19765 Some(Self { syntax })
19766 } else {
19767 None
19768 }
19769 }
19770 #[inline]
19771 fn syntax(&self) -> &SyntaxNode {
19772 &self.syntax
19773 }
19774}
19775impl AstNode for CreateOperator {
19776 #[inline]
19777 fn can_cast(kind: SyntaxKind) -> bool {
19778 kind == SyntaxKind::CREATE_OPERATOR
19779 }
19780 #[inline]
19781 fn cast(syntax: SyntaxNode) -> Option<Self> {
19782 if Self::can_cast(syntax.kind()) {
19783 Some(Self { syntax })
19784 } else {
19785 None
19786 }
19787 }
19788 #[inline]
19789 fn syntax(&self) -> &SyntaxNode {
19790 &self.syntax
19791 }
19792}
19793impl AstNode for CreateOperatorClass {
19794 #[inline]
19795 fn can_cast(kind: SyntaxKind) -> bool {
19796 kind == SyntaxKind::CREATE_OPERATOR_CLASS
19797 }
19798 #[inline]
19799 fn cast(syntax: SyntaxNode) -> Option<Self> {
19800 if Self::can_cast(syntax.kind()) {
19801 Some(Self { syntax })
19802 } else {
19803 None
19804 }
19805 }
19806 #[inline]
19807 fn syntax(&self) -> &SyntaxNode {
19808 &self.syntax
19809 }
19810}
19811impl AstNode for CreateOperatorFamily {
19812 #[inline]
19813 fn can_cast(kind: SyntaxKind) -> bool {
19814 kind == SyntaxKind::CREATE_OPERATOR_FAMILY
19815 }
19816 #[inline]
19817 fn cast(syntax: SyntaxNode) -> Option<Self> {
19818 if Self::can_cast(syntax.kind()) {
19819 Some(Self { syntax })
19820 } else {
19821 None
19822 }
19823 }
19824 #[inline]
19825 fn syntax(&self) -> &SyntaxNode {
19826 &self.syntax
19827 }
19828}
19829impl AstNode for CreatePolicy {
19830 #[inline]
19831 fn can_cast(kind: SyntaxKind) -> bool {
19832 kind == SyntaxKind::CREATE_POLICY
19833 }
19834 #[inline]
19835 fn cast(syntax: SyntaxNode) -> Option<Self> {
19836 if Self::can_cast(syntax.kind()) {
19837 Some(Self { syntax })
19838 } else {
19839 None
19840 }
19841 }
19842 #[inline]
19843 fn syntax(&self) -> &SyntaxNode {
19844 &self.syntax
19845 }
19846}
19847impl AstNode for CreateProcedure {
19848 #[inline]
19849 fn can_cast(kind: SyntaxKind) -> bool {
19850 kind == SyntaxKind::CREATE_PROCEDURE
19851 }
19852 #[inline]
19853 fn cast(syntax: SyntaxNode) -> Option<Self> {
19854 if Self::can_cast(syntax.kind()) {
19855 Some(Self { syntax })
19856 } else {
19857 None
19858 }
19859 }
19860 #[inline]
19861 fn syntax(&self) -> &SyntaxNode {
19862 &self.syntax
19863 }
19864}
19865impl AstNode for CreatePublication {
19866 #[inline]
19867 fn can_cast(kind: SyntaxKind) -> bool {
19868 kind == SyntaxKind::CREATE_PUBLICATION
19869 }
19870 #[inline]
19871 fn cast(syntax: SyntaxNode) -> Option<Self> {
19872 if Self::can_cast(syntax.kind()) {
19873 Some(Self { syntax })
19874 } else {
19875 None
19876 }
19877 }
19878 #[inline]
19879 fn syntax(&self) -> &SyntaxNode {
19880 &self.syntax
19881 }
19882}
19883impl AstNode for CreateRole {
19884 #[inline]
19885 fn can_cast(kind: SyntaxKind) -> bool {
19886 kind == SyntaxKind::CREATE_ROLE
19887 }
19888 #[inline]
19889 fn cast(syntax: SyntaxNode) -> Option<Self> {
19890 if Self::can_cast(syntax.kind()) {
19891 Some(Self { syntax })
19892 } else {
19893 None
19894 }
19895 }
19896 #[inline]
19897 fn syntax(&self) -> &SyntaxNode {
19898 &self.syntax
19899 }
19900}
19901impl AstNode for CreateRule {
19902 #[inline]
19903 fn can_cast(kind: SyntaxKind) -> bool {
19904 kind == SyntaxKind::CREATE_RULE
19905 }
19906 #[inline]
19907 fn cast(syntax: SyntaxNode) -> Option<Self> {
19908 if Self::can_cast(syntax.kind()) {
19909 Some(Self { syntax })
19910 } else {
19911 None
19912 }
19913 }
19914 #[inline]
19915 fn syntax(&self) -> &SyntaxNode {
19916 &self.syntax
19917 }
19918}
19919impl AstNode for CreateSchema {
19920 #[inline]
19921 fn can_cast(kind: SyntaxKind) -> bool {
19922 kind == SyntaxKind::CREATE_SCHEMA
19923 }
19924 #[inline]
19925 fn cast(syntax: SyntaxNode) -> Option<Self> {
19926 if Self::can_cast(syntax.kind()) {
19927 Some(Self { syntax })
19928 } else {
19929 None
19930 }
19931 }
19932 #[inline]
19933 fn syntax(&self) -> &SyntaxNode {
19934 &self.syntax
19935 }
19936}
19937impl AstNode for CreateSequence {
19938 #[inline]
19939 fn can_cast(kind: SyntaxKind) -> bool {
19940 kind == SyntaxKind::CREATE_SEQUENCE
19941 }
19942 #[inline]
19943 fn cast(syntax: SyntaxNode) -> Option<Self> {
19944 if Self::can_cast(syntax.kind()) {
19945 Some(Self { syntax })
19946 } else {
19947 None
19948 }
19949 }
19950 #[inline]
19951 fn syntax(&self) -> &SyntaxNode {
19952 &self.syntax
19953 }
19954}
19955impl AstNode for CreateServer {
19956 #[inline]
19957 fn can_cast(kind: SyntaxKind) -> bool {
19958 kind == SyntaxKind::CREATE_SERVER
19959 }
19960 #[inline]
19961 fn cast(syntax: SyntaxNode) -> Option<Self> {
19962 if Self::can_cast(syntax.kind()) {
19963 Some(Self { syntax })
19964 } else {
19965 None
19966 }
19967 }
19968 #[inline]
19969 fn syntax(&self) -> &SyntaxNode {
19970 &self.syntax
19971 }
19972}
19973impl AstNode for CreateStatistics {
19974 #[inline]
19975 fn can_cast(kind: SyntaxKind) -> bool {
19976 kind == SyntaxKind::CREATE_STATISTICS
19977 }
19978 #[inline]
19979 fn cast(syntax: SyntaxNode) -> Option<Self> {
19980 if Self::can_cast(syntax.kind()) {
19981 Some(Self { syntax })
19982 } else {
19983 None
19984 }
19985 }
19986 #[inline]
19987 fn syntax(&self) -> &SyntaxNode {
19988 &self.syntax
19989 }
19990}
19991impl AstNode for CreateSubscription {
19992 #[inline]
19993 fn can_cast(kind: SyntaxKind) -> bool {
19994 kind == SyntaxKind::CREATE_SUBSCRIPTION
19995 }
19996 #[inline]
19997 fn cast(syntax: SyntaxNode) -> Option<Self> {
19998 if Self::can_cast(syntax.kind()) {
19999 Some(Self { syntax })
20000 } else {
20001 None
20002 }
20003 }
20004 #[inline]
20005 fn syntax(&self) -> &SyntaxNode {
20006 &self.syntax
20007 }
20008}
20009impl AstNode for CreateTable {
20010 #[inline]
20011 fn can_cast(kind: SyntaxKind) -> bool {
20012 kind == SyntaxKind::CREATE_TABLE
20013 }
20014 #[inline]
20015 fn cast(syntax: SyntaxNode) -> Option<Self> {
20016 if Self::can_cast(syntax.kind()) {
20017 Some(Self { syntax })
20018 } else {
20019 None
20020 }
20021 }
20022 #[inline]
20023 fn syntax(&self) -> &SyntaxNode {
20024 &self.syntax
20025 }
20026}
20027impl AstNode for CreateTableAs {
20028 #[inline]
20029 fn can_cast(kind: SyntaxKind) -> bool {
20030 kind == SyntaxKind::CREATE_TABLE_AS
20031 }
20032 #[inline]
20033 fn cast(syntax: SyntaxNode) -> Option<Self> {
20034 if Self::can_cast(syntax.kind()) {
20035 Some(Self { syntax })
20036 } else {
20037 None
20038 }
20039 }
20040 #[inline]
20041 fn syntax(&self) -> &SyntaxNode {
20042 &self.syntax
20043 }
20044}
20045impl AstNode for CreateTablespace {
20046 #[inline]
20047 fn can_cast(kind: SyntaxKind) -> bool {
20048 kind == SyntaxKind::CREATE_TABLESPACE
20049 }
20050 #[inline]
20051 fn cast(syntax: SyntaxNode) -> Option<Self> {
20052 if Self::can_cast(syntax.kind()) {
20053 Some(Self { syntax })
20054 } else {
20055 None
20056 }
20057 }
20058 #[inline]
20059 fn syntax(&self) -> &SyntaxNode {
20060 &self.syntax
20061 }
20062}
20063impl AstNode for CreateTextSearchConfiguration {
20064 #[inline]
20065 fn can_cast(kind: SyntaxKind) -> bool {
20066 kind == SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
20067 }
20068 #[inline]
20069 fn cast(syntax: SyntaxNode) -> Option<Self> {
20070 if Self::can_cast(syntax.kind()) {
20071 Some(Self { syntax })
20072 } else {
20073 None
20074 }
20075 }
20076 #[inline]
20077 fn syntax(&self) -> &SyntaxNode {
20078 &self.syntax
20079 }
20080}
20081impl AstNode for CreateTextSearchDictionary {
20082 #[inline]
20083 fn can_cast(kind: SyntaxKind) -> bool {
20084 kind == SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
20085 }
20086 #[inline]
20087 fn cast(syntax: SyntaxNode) -> Option<Self> {
20088 if Self::can_cast(syntax.kind()) {
20089 Some(Self { syntax })
20090 } else {
20091 None
20092 }
20093 }
20094 #[inline]
20095 fn syntax(&self) -> &SyntaxNode {
20096 &self.syntax
20097 }
20098}
20099impl AstNode for CreateTextSearchParser {
20100 #[inline]
20101 fn can_cast(kind: SyntaxKind) -> bool {
20102 kind == SyntaxKind::CREATE_TEXT_SEARCH_PARSER
20103 }
20104 #[inline]
20105 fn cast(syntax: SyntaxNode) -> Option<Self> {
20106 if Self::can_cast(syntax.kind()) {
20107 Some(Self { syntax })
20108 } else {
20109 None
20110 }
20111 }
20112 #[inline]
20113 fn syntax(&self) -> &SyntaxNode {
20114 &self.syntax
20115 }
20116}
20117impl AstNode for CreateTextSearchTemplate {
20118 #[inline]
20119 fn can_cast(kind: SyntaxKind) -> bool {
20120 kind == SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
20121 }
20122 #[inline]
20123 fn cast(syntax: SyntaxNode) -> Option<Self> {
20124 if Self::can_cast(syntax.kind()) {
20125 Some(Self { syntax })
20126 } else {
20127 None
20128 }
20129 }
20130 #[inline]
20131 fn syntax(&self) -> &SyntaxNode {
20132 &self.syntax
20133 }
20134}
20135impl AstNode for CreateTransform {
20136 #[inline]
20137 fn can_cast(kind: SyntaxKind) -> bool {
20138 kind == SyntaxKind::CREATE_TRANSFORM
20139 }
20140 #[inline]
20141 fn cast(syntax: SyntaxNode) -> Option<Self> {
20142 if Self::can_cast(syntax.kind()) {
20143 Some(Self { syntax })
20144 } else {
20145 None
20146 }
20147 }
20148 #[inline]
20149 fn syntax(&self) -> &SyntaxNode {
20150 &self.syntax
20151 }
20152}
20153impl AstNode for CreateTrigger {
20154 #[inline]
20155 fn can_cast(kind: SyntaxKind) -> bool {
20156 kind == SyntaxKind::CREATE_TRIGGER
20157 }
20158 #[inline]
20159 fn cast(syntax: SyntaxNode) -> Option<Self> {
20160 if Self::can_cast(syntax.kind()) {
20161 Some(Self { syntax })
20162 } else {
20163 None
20164 }
20165 }
20166 #[inline]
20167 fn syntax(&self) -> &SyntaxNode {
20168 &self.syntax
20169 }
20170}
20171impl AstNode for CreateType {
20172 #[inline]
20173 fn can_cast(kind: SyntaxKind) -> bool {
20174 kind == SyntaxKind::CREATE_TYPE
20175 }
20176 #[inline]
20177 fn cast(syntax: SyntaxNode) -> Option<Self> {
20178 if Self::can_cast(syntax.kind()) {
20179 Some(Self { syntax })
20180 } else {
20181 None
20182 }
20183 }
20184 #[inline]
20185 fn syntax(&self) -> &SyntaxNode {
20186 &self.syntax
20187 }
20188}
20189impl AstNode for CreateUser {
20190 #[inline]
20191 fn can_cast(kind: SyntaxKind) -> bool {
20192 kind == SyntaxKind::CREATE_USER
20193 }
20194 #[inline]
20195 fn cast(syntax: SyntaxNode) -> Option<Self> {
20196 if Self::can_cast(syntax.kind()) {
20197 Some(Self { syntax })
20198 } else {
20199 None
20200 }
20201 }
20202 #[inline]
20203 fn syntax(&self) -> &SyntaxNode {
20204 &self.syntax
20205 }
20206}
20207impl AstNode for CreateUserMapping {
20208 #[inline]
20209 fn can_cast(kind: SyntaxKind) -> bool {
20210 kind == SyntaxKind::CREATE_USER_MAPPING
20211 }
20212 #[inline]
20213 fn cast(syntax: SyntaxNode) -> Option<Self> {
20214 if Self::can_cast(syntax.kind()) {
20215 Some(Self { syntax })
20216 } else {
20217 None
20218 }
20219 }
20220 #[inline]
20221 fn syntax(&self) -> &SyntaxNode {
20222 &self.syntax
20223 }
20224}
20225impl AstNode for CreateView {
20226 #[inline]
20227 fn can_cast(kind: SyntaxKind) -> bool {
20228 kind == SyntaxKind::CREATE_VIEW
20229 }
20230 #[inline]
20231 fn cast(syntax: SyntaxNode) -> Option<Self> {
20232 if Self::can_cast(syntax.kind()) {
20233 Some(Self { syntax })
20234 } else {
20235 None
20236 }
20237 }
20238 #[inline]
20239 fn syntax(&self) -> &SyntaxNode {
20240 &self.syntax
20241 }
20242}
20243impl AstNode for CustomOp {
20244 #[inline]
20245 fn can_cast(kind: SyntaxKind) -> bool {
20246 kind == SyntaxKind::CUSTOM_OP
20247 }
20248 #[inline]
20249 fn cast(syntax: SyntaxNode) -> Option<Self> {
20250 if Self::can_cast(syntax.kind()) {
20251 Some(Self { syntax })
20252 } else {
20253 None
20254 }
20255 }
20256 #[inline]
20257 fn syntax(&self) -> &SyntaxNode {
20258 &self.syntax
20259 }
20260}
20261impl AstNode for Deallocate {
20262 #[inline]
20263 fn can_cast(kind: SyntaxKind) -> bool {
20264 kind == SyntaxKind::DEALLOCATE
20265 }
20266 #[inline]
20267 fn cast(syntax: SyntaxNode) -> Option<Self> {
20268 if Self::can_cast(syntax.kind()) {
20269 Some(Self { syntax })
20270 } else {
20271 None
20272 }
20273 }
20274 #[inline]
20275 fn syntax(&self) -> &SyntaxNode {
20276 &self.syntax
20277 }
20278}
20279impl AstNode for Declare {
20280 #[inline]
20281 fn can_cast(kind: SyntaxKind) -> bool {
20282 kind == SyntaxKind::DECLARE
20283 }
20284 #[inline]
20285 fn cast(syntax: SyntaxNode) -> Option<Self> {
20286 if Self::can_cast(syntax.kind()) {
20287 Some(Self { syntax })
20288 } else {
20289 None
20290 }
20291 }
20292 #[inline]
20293 fn syntax(&self) -> &SyntaxNode {
20294 &self.syntax
20295 }
20296}
20297impl AstNode for DefaultConstraint {
20298 #[inline]
20299 fn can_cast(kind: SyntaxKind) -> bool {
20300 kind == SyntaxKind::DEFAULT_CONSTRAINT
20301 }
20302 #[inline]
20303 fn cast(syntax: SyntaxNode) -> Option<Self> {
20304 if Self::can_cast(syntax.kind()) {
20305 Some(Self { syntax })
20306 } else {
20307 None
20308 }
20309 }
20310 #[inline]
20311 fn syntax(&self) -> &SyntaxNode {
20312 &self.syntax
20313 }
20314}
20315impl AstNode for Deferrable {
20316 #[inline]
20317 fn can_cast(kind: SyntaxKind) -> bool {
20318 kind == SyntaxKind::DEFERRABLE
20319 }
20320 #[inline]
20321 fn cast(syntax: SyntaxNode) -> Option<Self> {
20322 if Self::can_cast(syntax.kind()) {
20323 Some(Self { syntax })
20324 } else {
20325 None
20326 }
20327 }
20328 #[inline]
20329 fn syntax(&self) -> &SyntaxNode {
20330 &self.syntax
20331 }
20332}
20333impl AstNode for DeferrableConstraintOption {
20334 #[inline]
20335 fn can_cast(kind: SyntaxKind) -> bool {
20336 kind == SyntaxKind::DEFERRABLE_CONSTRAINT_OPTION
20337 }
20338 #[inline]
20339 fn cast(syntax: SyntaxNode) -> Option<Self> {
20340 if Self::can_cast(syntax.kind()) {
20341 Some(Self { syntax })
20342 } else {
20343 None
20344 }
20345 }
20346 #[inline]
20347 fn syntax(&self) -> &SyntaxNode {
20348 &self.syntax
20349 }
20350}
20351impl AstNode for Delete {
20352 #[inline]
20353 fn can_cast(kind: SyntaxKind) -> bool {
20354 kind == SyntaxKind::DELETE
20355 }
20356 #[inline]
20357 fn cast(syntax: SyntaxNode) -> Option<Self> {
20358 if Self::can_cast(syntax.kind()) {
20359 Some(Self { syntax })
20360 } else {
20361 None
20362 }
20363 }
20364 #[inline]
20365 fn syntax(&self) -> &SyntaxNode {
20366 &self.syntax
20367 }
20368}
20369impl AstNode for DeleteRows {
20370 #[inline]
20371 fn can_cast(kind: SyntaxKind) -> bool {
20372 kind == SyntaxKind::DELETE_ROWS
20373 }
20374 #[inline]
20375 fn cast(syntax: SyntaxNode) -> Option<Self> {
20376 if Self::can_cast(syntax.kind()) {
20377 Some(Self { syntax })
20378 } else {
20379 None
20380 }
20381 }
20382 #[inline]
20383 fn syntax(&self) -> &SyntaxNode {
20384 &self.syntax
20385 }
20386}
20387impl AstNode for DependsOnExtension {
20388 #[inline]
20389 fn can_cast(kind: SyntaxKind) -> bool {
20390 kind == SyntaxKind::DEPENDS_ON_EXTENSION
20391 }
20392 #[inline]
20393 fn cast(syntax: SyntaxNode) -> Option<Self> {
20394 if Self::can_cast(syntax.kind()) {
20395 Some(Self { syntax })
20396 } else {
20397 None
20398 }
20399 }
20400 #[inline]
20401 fn syntax(&self) -> &SyntaxNode {
20402 &self.syntax
20403 }
20404}
20405impl AstNode for DetachPartition {
20406 #[inline]
20407 fn can_cast(kind: SyntaxKind) -> bool {
20408 kind == SyntaxKind::DETACH_PARTITION
20409 }
20410 #[inline]
20411 fn cast(syntax: SyntaxNode) -> Option<Self> {
20412 if Self::can_cast(syntax.kind()) {
20413 Some(Self { syntax })
20414 } else {
20415 None
20416 }
20417 }
20418 #[inline]
20419 fn syntax(&self) -> &SyntaxNode {
20420 &self.syntax
20421 }
20422}
20423impl AstNode for DisableRls {
20424 #[inline]
20425 fn can_cast(kind: SyntaxKind) -> bool {
20426 kind == SyntaxKind::DISABLE_RLS
20427 }
20428 #[inline]
20429 fn cast(syntax: SyntaxNode) -> Option<Self> {
20430 if Self::can_cast(syntax.kind()) {
20431 Some(Self { syntax })
20432 } else {
20433 None
20434 }
20435 }
20436 #[inline]
20437 fn syntax(&self) -> &SyntaxNode {
20438 &self.syntax
20439 }
20440}
20441impl AstNode for DisableRule {
20442 #[inline]
20443 fn can_cast(kind: SyntaxKind) -> bool {
20444 kind == SyntaxKind::DISABLE_RULE
20445 }
20446 #[inline]
20447 fn cast(syntax: SyntaxNode) -> Option<Self> {
20448 if Self::can_cast(syntax.kind()) {
20449 Some(Self { syntax })
20450 } else {
20451 None
20452 }
20453 }
20454 #[inline]
20455 fn syntax(&self) -> &SyntaxNode {
20456 &self.syntax
20457 }
20458}
20459impl AstNode for DisableTrigger {
20460 #[inline]
20461 fn can_cast(kind: SyntaxKind) -> bool {
20462 kind == SyntaxKind::DISABLE_TRIGGER
20463 }
20464 #[inline]
20465 fn cast(syntax: SyntaxNode) -> Option<Self> {
20466 if Self::can_cast(syntax.kind()) {
20467 Some(Self { syntax })
20468 } else {
20469 None
20470 }
20471 }
20472 #[inline]
20473 fn syntax(&self) -> &SyntaxNode {
20474 &self.syntax
20475 }
20476}
20477impl AstNode for Discard {
20478 #[inline]
20479 fn can_cast(kind: SyntaxKind) -> bool {
20480 kind == SyntaxKind::DISCARD
20481 }
20482 #[inline]
20483 fn cast(syntax: SyntaxNode) -> Option<Self> {
20484 if Self::can_cast(syntax.kind()) {
20485 Some(Self { syntax })
20486 } else {
20487 None
20488 }
20489 }
20490 #[inline]
20491 fn syntax(&self) -> &SyntaxNode {
20492 &self.syntax
20493 }
20494}
20495impl AstNode for DistinctClause {
20496 #[inline]
20497 fn can_cast(kind: SyntaxKind) -> bool {
20498 kind == SyntaxKind::DISTINCT_CLAUSE
20499 }
20500 #[inline]
20501 fn cast(syntax: SyntaxNode) -> Option<Self> {
20502 if Self::can_cast(syntax.kind()) {
20503 Some(Self { syntax })
20504 } else {
20505 None
20506 }
20507 }
20508 #[inline]
20509 fn syntax(&self) -> &SyntaxNode {
20510 &self.syntax
20511 }
20512}
20513impl AstNode for Do {
20514 #[inline]
20515 fn can_cast(kind: SyntaxKind) -> bool {
20516 kind == SyntaxKind::DO
20517 }
20518 #[inline]
20519 fn cast(syntax: SyntaxNode) -> Option<Self> {
20520 if Self::can_cast(syntax.kind()) {
20521 Some(Self { syntax })
20522 } else {
20523 None
20524 }
20525 }
20526 #[inline]
20527 fn syntax(&self) -> &SyntaxNode {
20528 &self.syntax
20529 }
20530}
20531impl AstNode for DoubleType {
20532 #[inline]
20533 fn can_cast(kind: SyntaxKind) -> bool {
20534 kind == SyntaxKind::DOUBLE_TYPE
20535 }
20536 #[inline]
20537 fn cast(syntax: SyntaxNode) -> Option<Self> {
20538 if Self::can_cast(syntax.kind()) {
20539 Some(Self { syntax })
20540 } else {
20541 None
20542 }
20543 }
20544 #[inline]
20545 fn syntax(&self) -> &SyntaxNode {
20546 &self.syntax
20547 }
20548}
20549impl AstNode for Drop {
20550 #[inline]
20551 fn can_cast(kind: SyntaxKind) -> bool {
20552 kind == SyntaxKind::DROP
20553 }
20554 #[inline]
20555 fn cast(syntax: SyntaxNode) -> Option<Self> {
20556 if Self::can_cast(syntax.kind()) {
20557 Some(Self { syntax })
20558 } else {
20559 None
20560 }
20561 }
20562 #[inline]
20563 fn syntax(&self) -> &SyntaxNode {
20564 &self.syntax
20565 }
20566}
20567impl AstNode for DropAccessMethod {
20568 #[inline]
20569 fn can_cast(kind: SyntaxKind) -> bool {
20570 kind == SyntaxKind::DROP_ACCESS_METHOD
20571 }
20572 #[inline]
20573 fn cast(syntax: SyntaxNode) -> Option<Self> {
20574 if Self::can_cast(syntax.kind()) {
20575 Some(Self { syntax })
20576 } else {
20577 None
20578 }
20579 }
20580 #[inline]
20581 fn syntax(&self) -> &SyntaxNode {
20582 &self.syntax
20583 }
20584}
20585impl AstNode for DropAggregate {
20586 #[inline]
20587 fn can_cast(kind: SyntaxKind) -> bool {
20588 kind == SyntaxKind::DROP_AGGREGATE
20589 }
20590 #[inline]
20591 fn cast(syntax: SyntaxNode) -> Option<Self> {
20592 if Self::can_cast(syntax.kind()) {
20593 Some(Self { syntax })
20594 } else {
20595 None
20596 }
20597 }
20598 #[inline]
20599 fn syntax(&self) -> &SyntaxNode {
20600 &self.syntax
20601 }
20602}
20603impl AstNode for DropCast {
20604 #[inline]
20605 fn can_cast(kind: SyntaxKind) -> bool {
20606 kind == SyntaxKind::DROP_CAST
20607 }
20608 #[inline]
20609 fn cast(syntax: SyntaxNode) -> Option<Self> {
20610 if Self::can_cast(syntax.kind()) {
20611 Some(Self { syntax })
20612 } else {
20613 None
20614 }
20615 }
20616 #[inline]
20617 fn syntax(&self) -> &SyntaxNode {
20618 &self.syntax
20619 }
20620}
20621impl AstNode for DropCollation {
20622 #[inline]
20623 fn can_cast(kind: SyntaxKind) -> bool {
20624 kind == SyntaxKind::DROP_COLLATION
20625 }
20626 #[inline]
20627 fn cast(syntax: SyntaxNode) -> Option<Self> {
20628 if Self::can_cast(syntax.kind()) {
20629 Some(Self { syntax })
20630 } else {
20631 None
20632 }
20633 }
20634 #[inline]
20635 fn syntax(&self) -> &SyntaxNode {
20636 &self.syntax
20637 }
20638}
20639impl AstNode for DropColumn {
20640 #[inline]
20641 fn can_cast(kind: SyntaxKind) -> bool {
20642 kind == SyntaxKind::DROP_COLUMN
20643 }
20644 #[inline]
20645 fn cast(syntax: SyntaxNode) -> Option<Self> {
20646 if Self::can_cast(syntax.kind()) {
20647 Some(Self { syntax })
20648 } else {
20649 None
20650 }
20651 }
20652 #[inline]
20653 fn syntax(&self) -> &SyntaxNode {
20654 &self.syntax
20655 }
20656}
20657impl AstNode for DropConstraint {
20658 #[inline]
20659 fn can_cast(kind: SyntaxKind) -> bool {
20660 kind == SyntaxKind::DROP_CONSTRAINT
20661 }
20662 #[inline]
20663 fn cast(syntax: SyntaxNode) -> Option<Self> {
20664 if Self::can_cast(syntax.kind()) {
20665 Some(Self { syntax })
20666 } else {
20667 None
20668 }
20669 }
20670 #[inline]
20671 fn syntax(&self) -> &SyntaxNode {
20672 &self.syntax
20673 }
20674}
20675impl AstNode for DropConversion {
20676 #[inline]
20677 fn can_cast(kind: SyntaxKind) -> bool {
20678 kind == SyntaxKind::DROP_CONVERSION
20679 }
20680 #[inline]
20681 fn cast(syntax: SyntaxNode) -> Option<Self> {
20682 if Self::can_cast(syntax.kind()) {
20683 Some(Self { syntax })
20684 } else {
20685 None
20686 }
20687 }
20688 #[inline]
20689 fn syntax(&self) -> &SyntaxNode {
20690 &self.syntax
20691 }
20692}
20693impl AstNode for DropDatabase {
20694 #[inline]
20695 fn can_cast(kind: SyntaxKind) -> bool {
20696 kind == SyntaxKind::DROP_DATABASE
20697 }
20698 #[inline]
20699 fn cast(syntax: SyntaxNode) -> Option<Self> {
20700 if Self::can_cast(syntax.kind()) {
20701 Some(Self { syntax })
20702 } else {
20703 None
20704 }
20705 }
20706 #[inline]
20707 fn syntax(&self) -> &SyntaxNode {
20708 &self.syntax
20709 }
20710}
20711impl AstNode for DropDefault {
20712 #[inline]
20713 fn can_cast(kind: SyntaxKind) -> bool {
20714 kind == SyntaxKind::DROP_DEFAULT
20715 }
20716 #[inline]
20717 fn cast(syntax: SyntaxNode) -> Option<Self> {
20718 if Self::can_cast(syntax.kind()) {
20719 Some(Self { syntax })
20720 } else {
20721 None
20722 }
20723 }
20724 #[inline]
20725 fn syntax(&self) -> &SyntaxNode {
20726 &self.syntax
20727 }
20728}
20729impl AstNode for DropDomain {
20730 #[inline]
20731 fn can_cast(kind: SyntaxKind) -> bool {
20732 kind == SyntaxKind::DROP_DOMAIN
20733 }
20734 #[inline]
20735 fn cast(syntax: SyntaxNode) -> Option<Self> {
20736 if Self::can_cast(syntax.kind()) {
20737 Some(Self { syntax })
20738 } else {
20739 None
20740 }
20741 }
20742 #[inline]
20743 fn syntax(&self) -> &SyntaxNode {
20744 &self.syntax
20745 }
20746}
20747impl AstNode for DropEventTrigger {
20748 #[inline]
20749 fn can_cast(kind: SyntaxKind) -> bool {
20750 kind == SyntaxKind::DROP_EVENT_TRIGGER
20751 }
20752 #[inline]
20753 fn cast(syntax: SyntaxNode) -> Option<Self> {
20754 if Self::can_cast(syntax.kind()) {
20755 Some(Self { syntax })
20756 } else {
20757 None
20758 }
20759 }
20760 #[inline]
20761 fn syntax(&self) -> &SyntaxNode {
20762 &self.syntax
20763 }
20764}
20765impl AstNode for DropExpression {
20766 #[inline]
20767 fn can_cast(kind: SyntaxKind) -> bool {
20768 kind == SyntaxKind::DROP_EXPRESSION
20769 }
20770 #[inline]
20771 fn cast(syntax: SyntaxNode) -> Option<Self> {
20772 if Self::can_cast(syntax.kind()) {
20773 Some(Self { syntax })
20774 } else {
20775 None
20776 }
20777 }
20778 #[inline]
20779 fn syntax(&self) -> &SyntaxNode {
20780 &self.syntax
20781 }
20782}
20783impl AstNode for DropExtension {
20784 #[inline]
20785 fn can_cast(kind: SyntaxKind) -> bool {
20786 kind == SyntaxKind::DROP_EXTENSION
20787 }
20788 #[inline]
20789 fn cast(syntax: SyntaxNode) -> Option<Self> {
20790 if Self::can_cast(syntax.kind()) {
20791 Some(Self { syntax })
20792 } else {
20793 None
20794 }
20795 }
20796 #[inline]
20797 fn syntax(&self) -> &SyntaxNode {
20798 &self.syntax
20799 }
20800}
20801impl AstNode for DropForeignDataWrapper {
20802 #[inline]
20803 fn can_cast(kind: SyntaxKind) -> bool {
20804 kind == SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
20805 }
20806 #[inline]
20807 fn cast(syntax: SyntaxNode) -> Option<Self> {
20808 if Self::can_cast(syntax.kind()) {
20809 Some(Self { syntax })
20810 } else {
20811 None
20812 }
20813 }
20814 #[inline]
20815 fn syntax(&self) -> &SyntaxNode {
20816 &self.syntax
20817 }
20818}
20819impl AstNode for DropForeignTable {
20820 #[inline]
20821 fn can_cast(kind: SyntaxKind) -> bool {
20822 kind == SyntaxKind::DROP_FOREIGN_TABLE
20823 }
20824 #[inline]
20825 fn cast(syntax: SyntaxNode) -> Option<Self> {
20826 if Self::can_cast(syntax.kind()) {
20827 Some(Self { syntax })
20828 } else {
20829 None
20830 }
20831 }
20832 #[inline]
20833 fn syntax(&self) -> &SyntaxNode {
20834 &self.syntax
20835 }
20836}
20837impl AstNode for DropFunction {
20838 #[inline]
20839 fn can_cast(kind: SyntaxKind) -> bool {
20840 kind == SyntaxKind::DROP_FUNCTION
20841 }
20842 #[inline]
20843 fn cast(syntax: SyntaxNode) -> Option<Self> {
20844 if Self::can_cast(syntax.kind()) {
20845 Some(Self { syntax })
20846 } else {
20847 None
20848 }
20849 }
20850 #[inline]
20851 fn syntax(&self) -> &SyntaxNode {
20852 &self.syntax
20853 }
20854}
20855impl AstNode for DropGroup {
20856 #[inline]
20857 fn can_cast(kind: SyntaxKind) -> bool {
20858 kind == SyntaxKind::DROP_GROUP
20859 }
20860 #[inline]
20861 fn cast(syntax: SyntaxNode) -> Option<Self> {
20862 if Self::can_cast(syntax.kind()) {
20863 Some(Self { syntax })
20864 } else {
20865 None
20866 }
20867 }
20868 #[inline]
20869 fn syntax(&self) -> &SyntaxNode {
20870 &self.syntax
20871 }
20872}
20873impl AstNode for DropIdentity {
20874 #[inline]
20875 fn can_cast(kind: SyntaxKind) -> bool {
20876 kind == SyntaxKind::DROP_IDENTITY
20877 }
20878 #[inline]
20879 fn cast(syntax: SyntaxNode) -> Option<Self> {
20880 if Self::can_cast(syntax.kind()) {
20881 Some(Self { syntax })
20882 } else {
20883 None
20884 }
20885 }
20886 #[inline]
20887 fn syntax(&self) -> &SyntaxNode {
20888 &self.syntax
20889 }
20890}
20891impl AstNode for DropIndex {
20892 #[inline]
20893 fn can_cast(kind: SyntaxKind) -> bool {
20894 kind == SyntaxKind::DROP_INDEX
20895 }
20896 #[inline]
20897 fn cast(syntax: SyntaxNode) -> Option<Self> {
20898 if Self::can_cast(syntax.kind()) {
20899 Some(Self { syntax })
20900 } else {
20901 None
20902 }
20903 }
20904 #[inline]
20905 fn syntax(&self) -> &SyntaxNode {
20906 &self.syntax
20907 }
20908}
20909impl AstNode for DropLanguage {
20910 #[inline]
20911 fn can_cast(kind: SyntaxKind) -> bool {
20912 kind == SyntaxKind::DROP_LANGUAGE
20913 }
20914 #[inline]
20915 fn cast(syntax: SyntaxNode) -> Option<Self> {
20916 if Self::can_cast(syntax.kind()) {
20917 Some(Self { syntax })
20918 } else {
20919 None
20920 }
20921 }
20922 #[inline]
20923 fn syntax(&self) -> &SyntaxNode {
20924 &self.syntax
20925 }
20926}
20927impl AstNode for DropMaterializedView {
20928 #[inline]
20929 fn can_cast(kind: SyntaxKind) -> bool {
20930 kind == SyntaxKind::DROP_MATERIALIZED_VIEW
20931 }
20932 #[inline]
20933 fn cast(syntax: SyntaxNode) -> Option<Self> {
20934 if Self::can_cast(syntax.kind()) {
20935 Some(Self { syntax })
20936 } else {
20937 None
20938 }
20939 }
20940 #[inline]
20941 fn syntax(&self) -> &SyntaxNode {
20942 &self.syntax
20943 }
20944}
20945impl AstNode for DropNotNull {
20946 #[inline]
20947 fn can_cast(kind: SyntaxKind) -> bool {
20948 kind == SyntaxKind::DROP_NOT_NULL
20949 }
20950 #[inline]
20951 fn cast(syntax: SyntaxNode) -> Option<Self> {
20952 if Self::can_cast(syntax.kind()) {
20953 Some(Self { syntax })
20954 } else {
20955 None
20956 }
20957 }
20958 #[inline]
20959 fn syntax(&self) -> &SyntaxNode {
20960 &self.syntax
20961 }
20962}
20963impl AstNode for DropOpClassOption {
20964 #[inline]
20965 fn can_cast(kind: SyntaxKind) -> bool {
20966 kind == SyntaxKind::DROP_OP_CLASS_OPTION
20967 }
20968 #[inline]
20969 fn cast(syntax: SyntaxNode) -> Option<Self> {
20970 if Self::can_cast(syntax.kind()) {
20971 Some(Self { syntax })
20972 } else {
20973 None
20974 }
20975 }
20976 #[inline]
20977 fn syntax(&self) -> &SyntaxNode {
20978 &self.syntax
20979 }
20980}
20981impl AstNode for DropOpClassOptionList {
20982 #[inline]
20983 fn can_cast(kind: SyntaxKind) -> bool {
20984 kind == SyntaxKind::DROP_OP_CLASS_OPTION_LIST
20985 }
20986 #[inline]
20987 fn cast(syntax: SyntaxNode) -> Option<Self> {
20988 if Self::can_cast(syntax.kind()) {
20989 Some(Self { syntax })
20990 } else {
20991 None
20992 }
20993 }
20994 #[inline]
20995 fn syntax(&self) -> &SyntaxNode {
20996 &self.syntax
20997 }
20998}
20999impl AstNode for DropOpClassOptions {
21000 #[inline]
21001 fn can_cast(kind: SyntaxKind) -> bool {
21002 kind == SyntaxKind::DROP_OP_CLASS_OPTIONS
21003 }
21004 #[inline]
21005 fn cast(syntax: SyntaxNode) -> Option<Self> {
21006 if Self::can_cast(syntax.kind()) {
21007 Some(Self { syntax })
21008 } else {
21009 None
21010 }
21011 }
21012 #[inline]
21013 fn syntax(&self) -> &SyntaxNode {
21014 &self.syntax
21015 }
21016}
21017impl AstNode for DropOperator {
21018 #[inline]
21019 fn can_cast(kind: SyntaxKind) -> bool {
21020 kind == SyntaxKind::DROP_OPERATOR
21021 }
21022 #[inline]
21023 fn cast(syntax: SyntaxNode) -> Option<Self> {
21024 if Self::can_cast(syntax.kind()) {
21025 Some(Self { syntax })
21026 } else {
21027 None
21028 }
21029 }
21030 #[inline]
21031 fn syntax(&self) -> &SyntaxNode {
21032 &self.syntax
21033 }
21034}
21035impl AstNode for DropOperatorClass {
21036 #[inline]
21037 fn can_cast(kind: SyntaxKind) -> bool {
21038 kind == SyntaxKind::DROP_OPERATOR_CLASS
21039 }
21040 #[inline]
21041 fn cast(syntax: SyntaxNode) -> Option<Self> {
21042 if Self::can_cast(syntax.kind()) {
21043 Some(Self { syntax })
21044 } else {
21045 None
21046 }
21047 }
21048 #[inline]
21049 fn syntax(&self) -> &SyntaxNode {
21050 &self.syntax
21051 }
21052}
21053impl AstNode for DropOperatorFamily {
21054 #[inline]
21055 fn can_cast(kind: SyntaxKind) -> bool {
21056 kind == SyntaxKind::DROP_OPERATOR_FAMILY
21057 }
21058 #[inline]
21059 fn cast(syntax: SyntaxNode) -> Option<Self> {
21060 if Self::can_cast(syntax.kind()) {
21061 Some(Self { syntax })
21062 } else {
21063 None
21064 }
21065 }
21066 #[inline]
21067 fn syntax(&self) -> &SyntaxNode {
21068 &self.syntax
21069 }
21070}
21071impl AstNode for DropOwned {
21072 #[inline]
21073 fn can_cast(kind: SyntaxKind) -> bool {
21074 kind == SyntaxKind::DROP_OWNED
21075 }
21076 #[inline]
21077 fn cast(syntax: SyntaxNode) -> Option<Self> {
21078 if Self::can_cast(syntax.kind()) {
21079 Some(Self { syntax })
21080 } else {
21081 None
21082 }
21083 }
21084 #[inline]
21085 fn syntax(&self) -> &SyntaxNode {
21086 &self.syntax
21087 }
21088}
21089impl AstNode for DropPolicy {
21090 #[inline]
21091 fn can_cast(kind: SyntaxKind) -> bool {
21092 kind == SyntaxKind::DROP_POLICY
21093 }
21094 #[inline]
21095 fn cast(syntax: SyntaxNode) -> Option<Self> {
21096 if Self::can_cast(syntax.kind()) {
21097 Some(Self { syntax })
21098 } else {
21099 None
21100 }
21101 }
21102 #[inline]
21103 fn syntax(&self) -> &SyntaxNode {
21104 &self.syntax
21105 }
21106}
21107impl AstNode for DropProcedure {
21108 #[inline]
21109 fn can_cast(kind: SyntaxKind) -> bool {
21110 kind == SyntaxKind::DROP_PROCEDURE
21111 }
21112 #[inline]
21113 fn cast(syntax: SyntaxNode) -> Option<Self> {
21114 if Self::can_cast(syntax.kind()) {
21115 Some(Self { syntax })
21116 } else {
21117 None
21118 }
21119 }
21120 #[inline]
21121 fn syntax(&self) -> &SyntaxNode {
21122 &self.syntax
21123 }
21124}
21125impl AstNode for DropPublication {
21126 #[inline]
21127 fn can_cast(kind: SyntaxKind) -> bool {
21128 kind == SyntaxKind::DROP_PUBLICATION
21129 }
21130 #[inline]
21131 fn cast(syntax: SyntaxNode) -> Option<Self> {
21132 if Self::can_cast(syntax.kind()) {
21133 Some(Self { syntax })
21134 } else {
21135 None
21136 }
21137 }
21138 #[inline]
21139 fn syntax(&self) -> &SyntaxNode {
21140 &self.syntax
21141 }
21142}
21143impl AstNode for DropRole {
21144 #[inline]
21145 fn can_cast(kind: SyntaxKind) -> bool {
21146 kind == SyntaxKind::DROP_ROLE
21147 }
21148 #[inline]
21149 fn cast(syntax: SyntaxNode) -> Option<Self> {
21150 if Self::can_cast(syntax.kind()) {
21151 Some(Self { syntax })
21152 } else {
21153 None
21154 }
21155 }
21156 #[inline]
21157 fn syntax(&self) -> &SyntaxNode {
21158 &self.syntax
21159 }
21160}
21161impl AstNode for DropRoutine {
21162 #[inline]
21163 fn can_cast(kind: SyntaxKind) -> bool {
21164 kind == SyntaxKind::DROP_ROUTINE
21165 }
21166 #[inline]
21167 fn cast(syntax: SyntaxNode) -> Option<Self> {
21168 if Self::can_cast(syntax.kind()) {
21169 Some(Self { syntax })
21170 } else {
21171 None
21172 }
21173 }
21174 #[inline]
21175 fn syntax(&self) -> &SyntaxNode {
21176 &self.syntax
21177 }
21178}
21179impl AstNode for DropRule {
21180 #[inline]
21181 fn can_cast(kind: SyntaxKind) -> bool {
21182 kind == SyntaxKind::DROP_RULE
21183 }
21184 #[inline]
21185 fn cast(syntax: SyntaxNode) -> Option<Self> {
21186 if Self::can_cast(syntax.kind()) {
21187 Some(Self { syntax })
21188 } else {
21189 None
21190 }
21191 }
21192 #[inline]
21193 fn syntax(&self) -> &SyntaxNode {
21194 &self.syntax
21195 }
21196}
21197impl AstNode for DropSchema {
21198 #[inline]
21199 fn can_cast(kind: SyntaxKind) -> bool {
21200 kind == SyntaxKind::DROP_SCHEMA
21201 }
21202 #[inline]
21203 fn cast(syntax: SyntaxNode) -> Option<Self> {
21204 if Self::can_cast(syntax.kind()) {
21205 Some(Self { syntax })
21206 } else {
21207 None
21208 }
21209 }
21210 #[inline]
21211 fn syntax(&self) -> &SyntaxNode {
21212 &self.syntax
21213 }
21214}
21215impl AstNode for DropSequence {
21216 #[inline]
21217 fn can_cast(kind: SyntaxKind) -> bool {
21218 kind == SyntaxKind::DROP_SEQUENCE
21219 }
21220 #[inline]
21221 fn cast(syntax: SyntaxNode) -> Option<Self> {
21222 if Self::can_cast(syntax.kind()) {
21223 Some(Self { syntax })
21224 } else {
21225 None
21226 }
21227 }
21228 #[inline]
21229 fn syntax(&self) -> &SyntaxNode {
21230 &self.syntax
21231 }
21232}
21233impl AstNode for DropServer {
21234 #[inline]
21235 fn can_cast(kind: SyntaxKind) -> bool {
21236 kind == SyntaxKind::DROP_SERVER
21237 }
21238 #[inline]
21239 fn cast(syntax: SyntaxNode) -> Option<Self> {
21240 if Self::can_cast(syntax.kind()) {
21241 Some(Self { syntax })
21242 } else {
21243 None
21244 }
21245 }
21246 #[inline]
21247 fn syntax(&self) -> &SyntaxNode {
21248 &self.syntax
21249 }
21250}
21251impl AstNode for DropStatistics {
21252 #[inline]
21253 fn can_cast(kind: SyntaxKind) -> bool {
21254 kind == SyntaxKind::DROP_STATISTICS
21255 }
21256 #[inline]
21257 fn cast(syntax: SyntaxNode) -> Option<Self> {
21258 if Self::can_cast(syntax.kind()) {
21259 Some(Self { syntax })
21260 } else {
21261 None
21262 }
21263 }
21264 #[inline]
21265 fn syntax(&self) -> &SyntaxNode {
21266 &self.syntax
21267 }
21268}
21269impl AstNode for DropSubscription {
21270 #[inline]
21271 fn can_cast(kind: SyntaxKind) -> bool {
21272 kind == SyntaxKind::DROP_SUBSCRIPTION
21273 }
21274 #[inline]
21275 fn cast(syntax: SyntaxNode) -> Option<Self> {
21276 if Self::can_cast(syntax.kind()) {
21277 Some(Self { syntax })
21278 } else {
21279 None
21280 }
21281 }
21282 #[inline]
21283 fn syntax(&self) -> &SyntaxNode {
21284 &self.syntax
21285 }
21286}
21287impl AstNode for DropTable {
21288 #[inline]
21289 fn can_cast(kind: SyntaxKind) -> bool {
21290 kind == SyntaxKind::DROP_TABLE
21291 }
21292 #[inline]
21293 fn cast(syntax: SyntaxNode) -> Option<Self> {
21294 if Self::can_cast(syntax.kind()) {
21295 Some(Self { syntax })
21296 } else {
21297 None
21298 }
21299 }
21300 #[inline]
21301 fn syntax(&self) -> &SyntaxNode {
21302 &self.syntax
21303 }
21304}
21305impl AstNode for DropTablespace {
21306 #[inline]
21307 fn can_cast(kind: SyntaxKind) -> bool {
21308 kind == SyntaxKind::DROP_TABLESPACE
21309 }
21310 #[inline]
21311 fn cast(syntax: SyntaxNode) -> Option<Self> {
21312 if Self::can_cast(syntax.kind()) {
21313 Some(Self { syntax })
21314 } else {
21315 None
21316 }
21317 }
21318 #[inline]
21319 fn syntax(&self) -> &SyntaxNode {
21320 &self.syntax
21321 }
21322}
21323impl AstNode for DropTextSearchConfig {
21324 #[inline]
21325 fn can_cast(kind: SyntaxKind) -> bool {
21326 kind == SyntaxKind::DROP_TEXT_SEARCH_CONFIG
21327 }
21328 #[inline]
21329 fn cast(syntax: SyntaxNode) -> Option<Self> {
21330 if Self::can_cast(syntax.kind()) {
21331 Some(Self { syntax })
21332 } else {
21333 None
21334 }
21335 }
21336 #[inline]
21337 fn syntax(&self) -> &SyntaxNode {
21338 &self.syntax
21339 }
21340}
21341impl AstNode for DropTextSearchDict {
21342 #[inline]
21343 fn can_cast(kind: SyntaxKind) -> bool {
21344 kind == SyntaxKind::DROP_TEXT_SEARCH_DICT
21345 }
21346 #[inline]
21347 fn cast(syntax: SyntaxNode) -> Option<Self> {
21348 if Self::can_cast(syntax.kind()) {
21349 Some(Self { syntax })
21350 } else {
21351 None
21352 }
21353 }
21354 #[inline]
21355 fn syntax(&self) -> &SyntaxNode {
21356 &self.syntax
21357 }
21358}
21359impl AstNode for DropTextSearchParser {
21360 #[inline]
21361 fn can_cast(kind: SyntaxKind) -> bool {
21362 kind == SyntaxKind::DROP_TEXT_SEARCH_PARSER
21363 }
21364 #[inline]
21365 fn cast(syntax: SyntaxNode) -> Option<Self> {
21366 if Self::can_cast(syntax.kind()) {
21367 Some(Self { syntax })
21368 } else {
21369 None
21370 }
21371 }
21372 #[inline]
21373 fn syntax(&self) -> &SyntaxNode {
21374 &self.syntax
21375 }
21376}
21377impl AstNode for DropTextSearchTemplate {
21378 #[inline]
21379 fn can_cast(kind: SyntaxKind) -> bool {
21380 kind == SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
21381 }
21382 #[inline]
21383 fn cast(syntax: SyntaxNode) -> Option<Self> {
21384 if Self::can_cast(syntax.kind()) {
21385 Some(Self { syntax })
21386 } else {
21387 None
21388 }
21389 }
21390 #[inline]
21391 fn syntax(&self) -> &SyntaxNode {
21392 &self.syntax
21393 }
21394}
21395impl AstNode for DropTransform {
21396 #[inline]
21397 fn can_cast(kind: SyntaxKind) -> bool {
21398 kind == SyntaxKind::DROP_TRANSFORM
21399 }
21400 #[inline]
21401 fn cast(syntax: SyntaxNode) -> Option<Self> {
21402 if Self::can_cast(syntax.kind()) {
21403 Some(Self { syntax })
21404 } else {
21405 None
21406 }
21407 }
21408 #[inline]
21409 fn syntax(&self) -> &SyntaxNode {
21410 &self.syntax
21411 }
21412}
21413impl AstNode for DropTrigger {
21414 #[inline]
21415 fn can_cast(kind: SyntaxKind) -> bool {
21416 kind == SyntaxKind::DROP_TRIGGER
21417 }
21418 #[inline]
21419 fn cast(syntax: SyntaxNode) -> Option<Self> {
21420 if Self::can_cast(syntax.kind()) {
21421 Some(Self { syntax })
21422 } else {
21423 None
21424 }
21425 }
21426 #[inline]
21427 fn syntax(&self) -> &SyntaxNode {
21428 &self.syntax
21429 }
21430}
21431impl AstNode for DropType {
21432 #[inline]
21433 fn can_cast(kind: SyntaxKind) -> bool {
21434 kind == SyntaxKind::DROP_TYPE
21435 }
21436 #[inline]
21437 fn cast(syntax: SyntaxNode) -> Option<Self> {
21438 if Self::can_cast(syntax.kind()) {
21439 Some(Self { syntax })
21440 } else {
21441 None
21442 }
21443 }
21444 #[inline]
21445 fn syntax(&self) -> &SyntaxNode {
21446 &self.syntax
21447 }
21448}
21449impl AstNode for DropUser {
21450 #[inline]
21451 fn can_cast(kind: SyntaxKind) -> bool {
21452 kind == SyntaxKind::DROP_USER
21453 }
21454 #[inline]
21455 fn cast(syntax: SyntaxNode) -> Option<Self> {
21456 if Self::can_cast(syntax.kind()) {
21457 Some(Self { syntax })
21458 } else {
21459 None
21460 }
21461 }
21462 #[inline]
21463 fn syntax(&self) -> &SyntaxNode {
21464 &self.syntax
21465 }
21466}
21467impl AstNode for DropUserMapping {
21468 #[inline]
21469 fn can_cast(kind: SyntaxKind) -> bool {
21470 kind == SyntaxKind::DROP_USER_MAPPING
21471 }
21472 #[inline]
21473 fn cast(syntax: SyntaxNode) -> Option<Self> {
21474 if Self::can_cast(syntax.kind()) {
21475 Some(Self { syntax })
21476 } else {
21477 None
21478 }
21479 }
21480 #[inline]
21481 fn syntax(&self) -> &SyntaxNode {
21482 &self.syntax
21483 }
21484}
21485impl AstNode for DropView {
21486 #[inline]
21487 fn can_cast(kind: SyntaxKind) -> bool {
21488 kind == SyntaxKind::DROP_VIEW
21489 }
21490 #[inline]
21491 fn cast(syntax: SyntaxNode) -> Option<Self> {
21492 if Self::can_cast(syntax.kind()) {
21493 Some(Self { syntax })
21494 } else {
21495 None
21496 }
21497 }
21498 #[inline]
21499 fn syntax(&self) -> &SyntaxNode {
21500 &self.syntax
21501 }
21502}
21503impl AstNode for ElseClause {
21504 #[inline]
21505 fn can_cast(kind: SyntaxKind) -> bool {
21506 kind == SyntaxKind::ELSE_CLAUSE
21507 }
21508 #[inline]
21509 fn cast(syntax: SyntaxNode) -> Option<Self> {
21510 if Self::can_cast(syntax.kind()) {
21511 Some(Self { syntax })
21512 } else {
21513 None
21514 }
21515 }
21516 #[inline]
21517 fn syntax(&self) -> &SyntaxNode {
21518 &self.syntax
21519 }
21520}
21521impl AstNode for EnableAlwaysRule {
21522 #[inline]
21523 fn can_cast(kind: SyntaxKind) -> bool {
21524 kind == SyntaxKind::ENABLE_ALWAYS_RULE
21525 }
21526 #[inline]
21527 fn cast(syntax: SyntaxNode) -> Option<Self> {
21528 if Self::can_cast(syntax.kind()) {
21529 Some(Self { syntax })
21530 } else {
21531 None
21532 }
21533 }
21534 #[inline]
21535 fn syntax(&self) -> &SyntaxNode {
21536 &self.syntax
21537 }
21538}
21539impl AstNode for EnableAlwaysTrigger {
21540 #[inline]
21541 fn can_cast(kind: SyntaxKind) -> bool {
21542 kind == SyntaxKind::ENABLE_ALWAYS_TRIGGER
21543 }
21544 #[inline]
21545 fn cast(syntax: SyntaxNode) -> Option<Self> {
21546 if Self::can_cast(syntax.kind()) {
21547 Some(Self { syntax })
21548 } else {
21549 None
21550 }
21551 }
21552 #[inline]
21553 fn syntax(&self) -> &SyntaxNode {
21554 &self.syntax
21555 }
21556}
21557impl AstNode for EnableReplicaRule {
21558 #[inline]
21559 fn can_cast(kind: SyntaxKind) -> bool {
21560 kind == SyntaxKind::ENABLE_REPLICA_RULE
21561 }
21562 #[inline]
21563 fn cast(syntax: SyntaxNode) -> Option<Self> {
21564 if Self::can_cast(syntax.kind()) {
21565 Some(Self { syntax })
21566 } else {
21567 None
21568 }
21569 }
21570 #[inline]
21571 fn syntax(&self) -> &SyntaxNode {
21572 &self.syntax
21573 }
21574}
21575impl AstNode for EnableReplicaTrigger {
21576 #[inline]
21577 fn can_cast(kind: SyntaxKind) -> bool {
21578 kind == SyntaxKind::ENABLE_REPLICA_TRIGGER
21579 }
21580 #[inline]
21581 fn cast(syntax: SyntaxNode) -> Option<Self> {
21582 if Self::can_cast(syntax.kind()) {
21583 Some(Self { syntax })
21584 } else {
21585 None
21586 }
21587 }
21588 #[inline]
21589 fn syntax(&self) -> &SyntaxNode {
21590 &self.syntax
21591 }
21592}
21593impl AstNode for EnableRls {
21594 #[inline]
21595 fn can_cast(kind: SyntaxKind) -> bool {
21596 kind == SyntaxKind::ENABLE_RLS
21597 }
21598 #[inline]
21599 fn cast(syntax: SyntaxNode) -> Option<Self> {
21600 if Self::can_cast(syntax.kind()) {
21601 Some(Self { syntax })
21602 } else {
21603 None
21604 }
21605 }
21606 #[inline]
21607 fn syntax(&self) -> &SyntaxNode {
21608 &self.syntax
21609 }
21610}
21611impl AstNode for EnableRule {
21612 #[inline]
21613 fn can_cast(kind: SyntaxKind) -> bool {
21614 kind == SyntaxKind::ENABLE_RULE
21615 }
21616 #[inline]
21617 fn cast(syntax: SyntaxNode) -> Option<Self> {
21618 if Self::can_cast(syntax.kind()) {
21619 Some(Self { syntax })
21620 } else {
21621 None
21622 }
21623 }
21624 #[inline]
21625 fn syntax(&self) -> &SyntaxNode {
21626 &self.syntax
21627 }
21628}
21629impl AstNode for EnableTrigger {
21630 #[inline]
21631 fn can_cast(kind: SyntaxKind) -> bool {
21632 kind == SyntaxKind::ENABLE_TRIGGER
21633 }
21634 #[inline]
21635 fn cast(syntax: SyntaxNode) -> Option<Self> {
21636 if Self::can_cast(syntax.kind()) {
21637 Some(Self { syntax })
21638 } else {
21639 None
21640 }
21641 }
21642 #[inline]
21643 fn syntax(&self) -> &SyntaxNode {
21644 &self.syntax
21645 }
21646}
21647impl AstNode for Enforced {
21648 #[inline]
21649 fn can_cast(kind: SyntaxKind) -> bool {
21650 kind == SyntaxKind::ENFORCED
21651 }
21652 #[inline]
21653 fn cast(syntax: SyntaxNode) -> Option<Self> {
21654 if Self::can_cast(syntax.kind()) {
21655 Some(Self { syntax })
21656 } else {
21657 None
21658 }
21659 }
21660 #[inline]
21661 fn syntax(&self) -> &SyntaxNode {
21662 &self.syntax
21663 }
21664}
21665impl AstNode for EventTriggerWhen {
21666 #[inline]
21667 fn can_cast(kind: SyntaxKind) -> bool {
21668 kind == SyntaxKind::EVENT_TRIGGER_WHEN
21669 }
21670 #[inline]
21671 fn cast(syntax: SyntaxNode) -> Option<Self> {
21672 if Self::can_cast(syntax.kind()) {
21673 Some(Self { syntax })
21674 } else {
21675 None
21676 }
21677 }
21678 #[inline]
21679 fn syntax(&self) -> &SyntaxNode {
21680 &self.syntax
21681 }
21682}
21683impl AstNode for EventTriggerWhenClause {
21684 #[inline]
21685 fn can_cast(kind: SyntaxKind) -> bool {
21686 kind == SyntaxKind::EVENT_TRIGGER_WHEN_CLAUSE
21687 }
21688 #[inline]
21689 fn cast(syntax: SyntaxNode) -> Option<Self> {
21690 if Self::can_cast(syntax.kind()) {
21691 Some(Self { syntax })
21692 } else {
21693 None
21694 }
21695 }
21696 #[inline]
21697 fn syntax(&self) -> &SyntaxNode {
21698 &self.syntax
21699 }
21700}
21701impl AstNode for ExceptTables {
21702 #[inline]
21703 fn can_cast(kind: SyntaxKind) -> bool {
21704 kind == SyntaxKind::EXCEPT_TABLES
21705 }
21706 #[inline]
21707 fn cast(syntax: SyntaxNode) -> Option<Self> {
21708 if Self::can_cast(syntax.kind()) {
21709 Some(Self { syntax })
21710 } else {
21711 None
21712 }
21713 }
21714 #[inline]
21715 fn syntax(&self) -> &SyntaxNode {
21716 &self.syntax
21717 }
21718}
21719impl AstNode for ExcludeConstraint {
21720 #[inline]
21721 fn can_cast(kind: SyntaxKind) -> bool {
21722 kind == SyntaxKind::EXCLUDE_CONSTRAINT
21723 }
21724 #[inline]
21725 fn cast(syntax: SyntaxNode) -> Option<Self> {
21726 if Self::can_cast(syntax.kind()) {
21727 Some(Self { syntax })
21728 } else {
21729 None
21730 }
21731 }
21732 #[inline]
21733 fn syntax(&self) -> &SyntaxNode {
21734 &self.syntax
21735 }
21736}
21737impl AstNode for Execute {
21738 #[inline]
21739 fn can_cast(kind: SyntaxKind) -> bool {
21740 kind == SyntaxKind::EXECUTE
21741 }
21742 #[inline]
21743 fn cast(syntax: SyntaxNode) -> Option<Self> {
21744 if Self::can_cast(syntax.kind()) {
21745 Some(Self { syntax })
21746 } else {
21747 None
21748 }
21749 }
21750 #[inline]
21751 fn syntax(&self) -> &SyntaxNode {
21752 &self.syntax
21753 }
21754}
21755impl AstNode for ExistsFn {
21756 #[inline]
21757 fn can_cast(kind: SyntaxKind) -> bool {
21758 kind == SyntaxKind::EXISTS_FN
21759 }
21760 #[inline]
21761 fn cast(syntax: SyntaxNode) -> Option<Self> {
21762 if Self::can_cast(syntax.kind()) {
21763 Some(Self { syntax })
21764 } else {
21765 None
21766 }
21767 }
21768 #[inline]
21769 fn syntax(&self) -> &SyntaxNode {
21770 &self.syntax
21771 }
21772}
21773impl AstNode for Explain {
21774 #[inline]
21775 fn can_cast(kind: SyntaxKind) -> bool {
21776 kind == SyntaxKind::EXPLAIN
21777 }
21778 #[inline]
21779 fn cast(syntax: SyntaxNode) -> Option<Self> {
21780 if Self::can_cast(syntax.kind()) {
21781 Some(Self { syntax })
21782 } else {
21783 None
21784 }
21785 }
21786 #[inline]
21787 fn syntax(&self) -> &SyntaxNode {
21788 &self.syntax
21789 }
21790}
21791impl AstNode for ExprAsName {
21792 #[inline]
21793 fn can_cast(kind: SyntaxKind) -> bool {
21794 kind == SyntaxKind::EXPR_AS_NAME
21795 }
21796 #[inline]
21797 fn cast(syntax: SyntaxNode) -> Option<Self> {
21798 if Self::can_cast(syntax.kind()) {
21799 Some(Self { syntax })
21800 } else {
21801 None
21802 }
21803 }
21804 #[inline]
21805 fn syntax(&self) -> &SyntaxNode {
21806 &self.syntax
21807 }
21808}
21809impl AstNode for ExprType {
21810 #[inline]
21811 fn can_cast(kind: SyntaxKind) -> bool {
21812 kind == SyntaxKind::EXPR_TYPE
21813 }
21814 #[inline]
21815 fn cast(syntax: SyntaxNode) -> Option<Self> {
21816 if Self::can_cast(syntax.kind()) {
21817 Some(Self { syntax })
21818 } else {
21819 None
21820 }
21821 }
21822 #[inline]
21823 fn syntax(&self) -> &SyntaxNode {
21824 &self.syntax
21825 }
21826}
21827impl AstNode for ExtractFn {
21828 #[inline]
21829 fn can_cast(kind: SyntaxKind) -> bool {
21830 kind == SyntaxKind::EXTRACT_FN
21831 }
21832 #[inline]
21833 fn cast(syntax: SyntaxNode) -> Option<Self> {
21834 if Self::can_cast(syntax.kind()) {
21835 Some(Self { syntax })
21836 } else {
21837 None
21838 }
21839 }
21840 #[inline]
21841 fn syntax(&self) -> &SyntaxNode {
21842 &self.syntax
21843 }
21844}
21845impl AstNode for FatArrow {
21846 #[inline]
21847 fn can_cast(kind: SyntaxKind) -> bool {
21848 kind == SyntaxKind::FAT_ARROW
21849 }
21850 #[inline]
21851 fn cast(syntax: SyntaxNode) -> Option<Self> {
21852 if Self::can_cast(syntax.kind()) {
21853 Some(Self { syntax })
21854 } else {
21855 None
21856 }
21857 }
21858 #[inline]
21859 fn syntax(&self) -> &SyntaxNode {
21860 &self.syntax
21861 }
21862}
21863impl AstNode for FdwOption {
21864 #[inline]
21865 fn can_cast(kind: SyntaxKind) -> bool {
21866 kind == SyntaxKind::FDW_OPTION
21867 }
21868 #[inline]
21869 fn cast(syntax: SyntaxNode) -> Option<Self> {
21870 if Self::can_cast(syntax.kind()) {
21871 Some(Self { syntax })
21872 } else {
21873 None
21874 }
21875 }
21876 #[inline]
21877 fn syntax(&self) -> &SyntaxNode {
21878 &self.syntax
21879 }
21880}
21881impl AstNode for FdwOptionList {
21882 #[inline]
21883 fn can_cast(kind: SyntaxKind) -> bool {
21884 kind == SyntaxKind::FDW_OPTION_LIST
21885 }
21886 #[inline]
21887 fn cast(syntax: SyntaxNode) -> Option<Self> {
21888 if Self::can_cast(syntax.kind()) {
21889 Some(Self { syntax })
21890 } else {
21891 None
21892 }
21893 }
21894 #[inline]
21895 fn syntax(&self) -> &SyntaxNode {
21896 &self.syntax
21897 }
21898}
21899impl AstNode for Fetch {
21900 #[inline]
21901 fn can_cast(kind: SyntaxKind) -> bool {
21902 kind == SyntaxKind::FETCH
21903 }
21904 #[inline]
21905 fn cast(syntax: SyntaxNode) -> Option<Self> {
21906 if Self::can_cast(syntax.kind()) {
21907 Some(Self { syntax })
21908 } else {
21909 None
21910 }
21911 }
21912 #[inline]
21913 fn syntax(&self) -> &SyntaxNode {
21914 &self.syntax
21915 }
21916}
21917impl AstNode for FetchClause {
21918 #[inline]
21919 fn can_cast(kind: SyntaxKind) -> bool {
21920 kind == SyntaxKind::FETCH_CLAUSE
21921 }
21922 #[inline]
21923 fn cast(syntax: SyntaxNode) -> Option<Self> {
21924 if Self::can_cast(syntax.kind()) {
21925 Some(Self { syntax })
21926 } else {
21927 None
21928 }
21929 }
21930 #[inline]
21931 fn syntax(&self) -> &SyntaxNode {
21932 &self.syntax
21933 }
21934}
21935impl AstNode for FieldExpr {
21936 #[inline]
21937 fn can_cast(kind: SyntaxKind) -> bool {
21938 kind == SyntaxKind::FIELD_EXPR
21939 }
21940 #[inline]
21941 fn cast(syntax: SyntaxNode) -> Option<Self> {
21942 if Self::can_cast(syntax.kind()) {
21943 Some(Self { syntax })
21944 } else {
21945 None
21946 }
21947 }
21948 #[inline]
21949 fn syntax(&self) -> &SyntaxNode {
21950 &self.syntax
21951 }
21952}
21953impl AstNode for FilterClause {
21954 #[inline]
21955 fn can_cast(kind: SyntaxKind) -> bool {
21956 kind == SyntaxKind::FILTER_CLAUSE
21957 }
21958 #[inline]
21959 fn cast(syntax: SyntaxNode) -> Option<Self> {
21960 if Self::can_cast(syntax.kind()) {
21961 Some(Self { syntax })
21962 } else {
21963 None
21964 }
21965 }
21966 #[inline]
21967 fn syntax(&self) -> &SyntaxNode {
21968 &self.syntax
21969 }
21970}
21971impl AstNode for ForProvider {
21972 #[inline]
21973 fn can_cast(kind: SyntaxKind) -> bool {
21974 kind == SyntaxKind::FOR_PROVIDER
21975 }
21976 #[inline]
21977 fn cast(syntax: SyntaxNode) -> Option<Self> {
21978 if Self::can_cast(syntax.kind()) {
21979 Some(Self { syntax })
21980 } else {
21981 None
21982 }
21983 }
21984 #[inline]
21985 fn syntax(&self) -> &SyntaxNode {
21986 &self.syntax
21987 }
21988}
21989impl AstNode for ForceRls {
21990 #[inline]
21991 fn can_cast(kind: SyntaxKind) -> bool {
21992 kind == SyntaxKind::FORCE_RLS
21993 }
21994 #[inline]
21995 fn cast(syntax: SyntaxNode) -> Option<Self> {
21996 if Self::can_cast(syntax.kind()) {
21997 Some(Self { syntax })
21998 } else {
21999 None
22000 }
22001 }
22002 #[inline]
22003 fn syntax(&self) -> &SyntaxNode {
22004 &self.syntax
22005 }
22006}
22007impl AstNode for ForeignKeyConstraint {
22008 #[inline]
22009 fn can_cast(kind: SyntaxKind) -> bool {
22010 kind == SyntaxKind::FOREIGN_KEY_CONSTRAINT
22011 }
22012 #[inline]
22013 fn cast(syntax: SyntaxNode) -> Option<Self> {
22014 if Self::can_cast(syntax.kind()) {
22015 Some(Self { syntax })
22016 } else {
22017 None
22018 }
22019 }
22020 #[inline]
22021 fn syntax(&self) -> &SyntaxNode {
22022 &self.syntax
22023 }
22024}
22025impl AstNode for FrameClause {
22026 #[inline]
22027 fn can_cast(kind: SyntaxKind) -> bool {
22028 kind == SyntaxKind::FRAME_CLAUSE
22029 }
22030 #[inline]
22031 fn cast(syntax: SyntaxNode) -> Option<Self> {
22032 if Self::can_cast(syntax.kind()) {
22033 Some(Self { syntax })
22034 } else {
22035 None
22036 }
22037 }
22038 #[inline]
22039 fn syntax(&self) -> &SyntaxNode {
22040 &self.syntax
22041 }
22042}
22043impl AstNode for FromClause {
22044 #[inline]
22045 fn can_cast(kind: SyntaxKind) -> bool {
22046 kind == SyntaxKind::FROM_CLAUSE
22047 }
22048 #[inline]
22049 fn cast(syntax: SyntaxNode) -> Option<Self> {
22050 if Self::can_cast(syntax.kind()) {
22051 Some(Self { syntax })
22052 } else {
22053 None
22054 }
22055 }
22056 #[inline]
22057 fn syntax(&self) -> &SyntaxNode {
22058 &self.syntax
22059 }
22060}
22061impl AstNode for FromItem {
22062 #[inline]
22063 fn can_cast(kind: SyntaxKind) -> bool {
22064 kind == SyntaxKind::FROM_ITEM
22065 }
22066 #[inline]
22067 fn cast(syntax: SyntaxNode) -> Option<Self> {
22068 if Self::can_cast(syntax.kind()) {
22069 Some(Self { syntax })
22070 } else {
22071 None
22072 }
22073 }
22074 #[inline]
22075 fn syntax(&self) -> &SyntaxNode {
22076 &self.syntax
22077 }
22078}
22079impl AstNode for FromTable {
22080 #[inline]
22081 fn can_cast(kind: SyntaxKind) -> bool {
22082 kind == SyntaxKind::FROM_TABLE
22083 }
22084 #[inline]
22085 fn cast(syntax: SyntaxNode) -> Option<Self> {
22086 if Self::can_cast(syntax.kind()) {
22087 Some(Self { syntax })
22088 } else {
22089 None
22090 }
22091 }
22092 #[inline]
22093 fn syntax(&self) -> &SyntaxNode {
22094 &self.syntax
22095 }
22096}
22097impl AstNode for FuncOptionList {
22098 #[inline]
22099 fn can_cast(kind: SyntaxKind) -> bool {
22100 kind == SyntaxKind::FUNC_OPTION_LIST
22101 }
22102 #[inline]
22103 fn cast(syntax: SyntaxNode) -> Option<Self> {
22104 if Self::can_cast(syntax.kind()) {
22105 Some(Self { syntax })
22106 } else {
22107 None
22108 }
22109 }
22110 #[inline]
22111 fn syntax(&self) -> &SyntaxNode {
22112 &self.syntax
22113 }
22114}
22115impl AstNode for FunctionSig {
22116 #[inline]
22117 fn can_cast(kind: SyntaxKind) -> bool {
22118 kind == SyntaxKind::FUNCTION_SIG
22119 }
22120 #[inline]
22121 fn cast(syntax: SyntaxNode) -> Option<Self> {
22122 if Self::can_cast(syntax.kind()) {
22123 Some(Self { syntax })
22124 } else {
22125 None
22126 }
22127 }
22128 #[inline]
22129 fn syntax(&self) -> &SyntaxNode {
22130 &self.syntax
22131 }
22132}
22133impl AstNode for FunctionSigList {
22134 #[inline]
22135 fn can_cast(kind: SyntaxKind) -> bool {
22136 kind == SyntaxKind::FUNCTION_SIG_LIST
22137 }
22138 #[inline]
22139 fn cast(syntax: SyntaxNode) -> Option<Self> {
22140 if Self::can_cast(syntax.kind()) {
22141 Some(Self { syntax })
22142 } else {
22143 None
22144 }
22145 }
22146 #[inline]
22147 fn syntax(&self) -> &SyntaxNode {
22148 &self.syntax
22149 }
22150}
22151impl AstNode for GeneratedConstraint {
22152 #[inline]
22153 fn can_cast(kind: SyntaxKind) -> bool {
22154 kind == SyntaxKind::GENERATED_CONSTRAINT
22155 }
22156 #[inline]
22157 fn cast(syntax: SyntaxNode) -> Option<Self> {
22158 if Self::can_cast(syntax.kind()) {
22159 Some(Self { syntax })
22160 } else {
22161 None
22162 }
22163 }
22164 #[inline]
22165 fn syntax(&self) -> &SyntaxNode {
22166 &self.syntax
22167 }
22168}
22169impl AstNode for Grant {
22170 #[inline]
22171 fn can_cast(kind: SyntaxKind) -> bool {
22172 kind == SyntaxKind::GRANT
22173 }
22174 #[inline]
22175 fn cast(syntax: SyntaxNode) -> Option<Self> {
22176 if Self::can_cast(syntax.kind()) {
22177 Some(Self { syntax })
22178 } else {
22179 None
22180 }
22181 }
22182 #[inline]
22183 fn syntax(&self) -> &SyntaxNode {
22184 &self.syntax
22185 }
22186}
22187impl AstNode for GrantDefaultPrivileges {
22188 #[inline]
22189 fn can_cast(kind: SyntaxKind) -> bool {
22190 kind == SyntaxKind::GRANT_DEFAULT_PRIVILEGES
22191 }
22192 #[inline]
22193 fn cast(syntax: SyntaxNode) -> Option<Self> {
22194 if Self::can_cast(syntax.kind()) {
22195 Some(Self { syntax })
22196 } else {
22197 None
22198 }
22199 }
22200 #[inline]
22201 fn syntax(&self) -> &SyntaxNode {
22202 &self.syntax
22203 }
22204}
22205impl AstNode for GroupByClause {
22206 #[inline]
22207 fn can_cast(kind: SyntaxKind) -> bool {
22208 kind == SyntaxKind::GROUP_BY_CLAUSE
22209 }
22210 #[inline]
22211 fn cast(syntax: SyntaxNode) -> Option<Self> {
22212 if Self::can_cast(syntax.kind()) {
22213 Some(Self { syntax })
22214 } else {
22215 None
22216 }
22217 }
22218 #[inline]
22219 fn syntax(&self) -> &SyntaxNode {
22220 &self.syntax
22221 }
22222}
22223impl AstNode for GroupByList {
22224 #[inline]
22225 fn can_cast(kind: SyntaxKind) -> bool {
22226 kind == SyntaxKind::GROUP_BY_LIST
22227 }
22228 #[inline]
22229 fn cast(syntax: SyntaxNode) -> Option<Self> {
22230 if Self::can_cast(syntax.kind()) {
22231 Some(Self { syntax })
22232 } else {
22233 None
22234 }
22235 }
22236 #[inline]
22237 fn syntax(&self) -> &SyntaxNode {
22238 &self.syntax
22239 }
22240}
22241impl AstNode for GroupingCube {
22242 #[inline]
22243 fn can_cast(kind: SyntaxKind) -> bool {
22244 kind == SyntaxKind::GROUPING_CUBE
22245 }
22246 #[inline]
22247 fn cast(syntax: SyntaxNode) -> Option<Self> {
22248 if Self::can_cast(syntax.kind()) {
22249 Some(Self { syntax })
22250 } else {
22251 None
22252 }
22253 }
22254 #[inline]
22255 fn syntax(&self) -> &SyntaxNode {
22256 &self.syntax
22257 }
22258}
22259impl AstNode for GroupingExpr {
22260 #[inline]
22261 fn can_cast(kind: SyntaxKind) -> bool {
22262 kind == SyntaxKind::GROUPING_EXPR
22263 }
22264 #[inline]
22265 fn cast(syntax: SyntaxNode) -> Option<Self> {
22266 if Self::can_cast(syntax.kind()) {
22267 Some(Self { syntax })
22268 } else {
22269 None
22270 }
22271 }
22272 #[inline]
22273 fn syntax(&self) -> &SyntaxNode {
22274 &self.syntax
22275 }
22276}
22277impl AstNode for GroupingRollup {
22278 #[inline]
22279 fn can_cast(kind: SyntaxKind) -> bool {
22280 kind == SyntaxKind::GROUPING_ROLLUP
22281 }
22282 #[inline]
22283 fn cast(syntax: SyntaxNode) -> Option<Self> {
22284 if Self::can_cast(syntax.kind()) {
22285 Some(Self { syntax })
22286 } else {
22287 None
22288 }
22289 }
22290 #[inline]
22291 fn syntax(&self) -> &SyntaxNode {
22292 &self.syntax
22293 }
22294}
22295impl AstNode for GroupingSets {
22296 #[inline]
22297 fn can_cast(kind: SyntaxKind) -> bool {
22298 kind == SyntaxKind::GROUPING_SETS
22299 }
22300 #[inline]
22301 fn cast(syntax: SyntaxNode) -> Option<Self> {
22302 if Self::can_cast(syntax.kind()) {
22303 Some(Self { syntax })
22304 } else {
22305 None
22306 }
22307 }
22308 #[inline]
22309 fn syntax(&self) -> &SyntaxNode {
22310 &self.syntax
22311 }
22312}
22313impl AstNode for Gteq {
22314 #[inline]
22315 fn can_cast(kind: SyntaxKind) -> bool {
22316 kind == SyntaxKind::GTEQ
22317 }
22318 #[inline]
22319 fn cast(syntax: SyntaxNode) -> Option<Self> {
22320 if Self::can_cast(syntax.kind()) {
22321 Some(Self { syntax })
22322 } else {
22323 None
22324 }
22325 }
22326 #[inline]
22327 fn syntax(&self) -> &SyntaxNode {
22328 &self.syntax
22329 }
22330}
22331impl AstNode for HandlerClause {
22332 #[inline]
22333 fn can_cast(kind: SyntaxKind) -> bool {
22334 kind == SyntaxKind::HANDLER_CLAUSE
22335 }
22336 #[inline]
22337 fn cast(syntax: SyntaxNode) -> Option<Self> {
22338 if Self::can_cast(syntax.kind()) {
22339 Some(Self { syntax })
22340 } else {
22341 None
22342 }
22343 }
22344 #[inline]
22345 fn syntax(&self) -> &SyntaxNode {
22346 &self.syntax
22347 }
22348}
22349impl AstNode for HavingClause {
22350 #[inline]
22351 fn can_cast(kind: SyntaxKind) -> bool {
22352 kind == SyntaxKind::HAVING_CLAUSE
22353 }
22354 #[inline]
22355 fn cast(syntax: SyntaxNode) -> Option<Self> {
22356 if Self::can_cast(syntax.kind()) {
22357 Some(Self { syntax })
22358 } else {
22359 None
22360 }
22361 }
22362 #[inline]
22363 fn syntax(&self) -> &SyntaxNode {
22364 &self.syntax
22365 }
22366}
22367impl AstNode for IfExists {
22368 #[inline]
22369 fn can_cast(kind: SyntaxKind) -> bool {
22370 kind == SyntaxKind::IF_EXISTS
22371 }
22372 #[inline]
22373 fn cast(syntax: SyntaxNode) -> Option<Self> {
22374 if Self::can_cast(syntax.kind()) {
22375 Some(Self { syntax })
22376 } else {
22377 None
22378 }
22379 }
22380 #[inline]
22381 fn syntax(&self) -> &SyntaxNode {
22382 &self.syntax
22383 }
22384}
22385impl AstNode for IfNotExists {
22386 #[inline]
22387 fn can_cast(kind: SyntaxKind) -> bool {
22388 kind == SyntaxKind::IF_NOT_EXISTS
22389 }
22390 #[inline]
22391 fn cast(syntax: SyntaxNode) -> Option<Self> {
22392 if Self::can_cast(syntax.kind()) {
22393 Some(Self { syntax })
22394 } else {
22395 None
22396 }
22397 }
22398 #[inline]
22399 fn syntax(&self) -> &SyntaxNode {
22400 &self.syntax
22401 }
22402}
22403impl AstNode for ImportForeignSchema {
22404 #[inline]
22405 fn can_cast(kind: SyntaxKind) -> bool {
22406 kind == SyntaxKind::IMPORT_FOREIGN_SCHEMA
22407 }
22408 #[inline]
22409 fn cast(syntax: SyntaxNode) -> Option<Self> {
22410 if Self::can_cast(syntax.kind()) {
22411 Some(Self { syntax })
22412 } else {
22413 None
22414 }
22415 }
22416 #[inline]
22417 fn syntax(&self) -> &SyntaxNode {
22418 &self.syntax
22419 }
22420}
22421impl AstNode for IndexExpr {
22422 #[inline]
22423 fn can_cast(kind: SyntaxKind) -> bool {
22424 kind == SyntaxKind::INDEX_EXPR
22425 }
22426 #[inline]
22427 fn cast(syntax: SyntaxNode) -> Option<Self> {
22428 if Self::can_cast(syntax.kind()) {
22429 Some(Self { syntax })
22430 } else {
22431 None
22432 }
22433 }
22434 #[inline]
22435 fn syntax(&self) -> &SyntaxNode {
22436 &self.syntax
22437 }
22438}
22439impl AstNode for Inherit {
22440 #[inline]
22441 fn can_cast(kind: SyntaxKind) -> bool {
22442 kind == SyntaxKind::INHERIT
22443 }
22444 #[inline]
22445 fn cast(syntax: SyntaxNode) -> Option<Self> {
22446 if Self::can_cast(syntax.kind()) {
22447 Some(Self { syntax })
22448 } else {
22449 None
22450 }
22451 }
22452 #[inline]
22453 fn syntax(&self) -> &SyntaxNode {
22454 &self.syntax
22455 }
22456}
22457impl AstNode for InheritTable {
22458 #[inline]
22459 fn can_cast(kind: SyntaxKind) -> bool {
22460 kind == SyntaxKind::INHERIT_TABLE
22461 }
22462 #[inline]
22463 fn cast(syntax: SyntaxNode) -> Option<Self> {
22464 if Self::can_cast(syntax.kind()) {
22465 Some(Self { syntax })
22466 } else {
22467 None
22468 }
22469 }
22470 #[inline]
22471 fn syntax(&self) -> &SyntaxNode {
22472 &self.syntax
22473 }
22474}
22475impl AstNode for Inherits {
22476 #[inline]
22477 fn can_cast(kind: SyntaxKind) -> bool {
22478 kind == SyntaxKind::INHERITS
22479 }
22480 #[inline]
22481 fn cast(syntax: SyntaxNode) -> Option<Self> {
22482 if Self::can_cast(syntax.kind()) {
22483 Some(Self { syntax })
22484 } else {
22485 None
22486 }
22487 }
22488 #[inline]
22489 fn syntax(&self) -> &SyntaxNode {
22490 &self.syntax
22491 }
22492}
22493impl AstNode for InitiallyDeferredConstraintOption {
22494 #[inline]
22495 fn can_cast(kind: SyntaxKind) -> bool {
22496 kind == SyntaxKind::INITIALLY_DEFERRED_CONSTRAINT_OPTION
22497 }
22498 #[inline]
22499 fn cast(syntax: SyntaxNode) -> Option<Self> {
22500 if Self::can_cast(syntax.kind()) {
22501 Some(Self { syntax })
22502 } else {
22503 None
22504 }
22505 }
22506 #[inline]
22507 fn syntax(&self) -> &SyntaxNode {
22508 &self.syntax
22509 }
22510}
22511impl AstNode for InitiallyImmediateConstraintOption {
22512 #[inline]
22513 fn can_cast(kind: SyntaxKind) -> bool {
22514 kind == SyntaxKind::INITIALLY_IMMEDIATE_CONSTRAINT_OPTION
22515 }
22516 #[inline]
22517 fn cast(syntax: SyntaxNode) -> Option<Self> {
22518 if Self::can_cast(syntax.kind()) {
22519 Some(Self { syntax })
22520 } else {
22521 None
22522 }
22523 }
22524 #[inline]
22525 fn syntax(&self) -> &SyntaxNode {
22526 &self.syntax
22527 }
22528}
22529impl AstNode for Insert {
22530 #[inline]
22531 fn can_cast(kind: SyntaxKind) -> bool {
22532 kind == SyntaxKind::INSERT
22533 }
22534 #[inline]
22535 fn cast(syntax: SyntaxNode) -> Option<Self> {
22536 if Self::can_cast(syntax.kind()) {
22537 Some(Self { syntax })
22538 } else {
22539 None
22540 }
22541 }
22542 #[inline]
22543 fn syntax(&self) -> &SyntaxNode {
22544 &self.syntax
22545 }
22546}
22547impl AstNode for IntervalType {
22548 #[inline]
22549 fn can_cast(kind: SyntaxKind) -> bool {
22550 kind == SyntaxKind::INTERVAL_TYPE
22551 }
22552 #[inline]
22553 fn cast(syntax: SyntaxNode) -> Option<Self> {
22554 if Self::can_cast(syntax.kind()) {
22555 Some(Self { syntax })
22556 } else {
22557 None
22558 }
22559 }
22560 #[inline]
22561 fn syntax(&self) -> &SyntaxNode {
22562 &self.syntax
22563 }
22564}
22565impl AstNode for IntoClause {
22566 #[inline]
22567 fn can_cast(kind: SyntaxKind) -> bool {
22568 kind == SyntaxKind::INTO_CLAUSE
22569 }
22570 #[inline]
22571 fn cast(syntax: SyntaxNode) -> Option<Self> {
22572 if Self::can_cast(syntax.kind()) {
22573 Some(Self { syntax })
22574 } else {
22575 None
22576 }
22577 }
22578 #[inline]
22579 fn syntax(&self) -> &SyntaxNode {
22580 &self.syntax
22581 }
22582}
22583impl AstNode for IntoSchema {
22584 #[inline]
22585 fn can_cast(kind: SyntaxKind) -> bool {
22586 kind == SyntaxKind::INTO_SCHEMA
22587 }
22588 #[inline]
22589 fn cast(syntax: SyntaxNode) -> Option<Self> {
22590 if Self::can_cast(syntax.kind()) {
22591 Some(Self { syntax })
22592 } else {
22593 None
22594 }
22595 }
22596 #[inline]
22597 fn syntax(&self) -> &SyntaxNode {
22598 &self.syntax
22599 }
22600}
22601impl AstNode for IsDistinctFrom {
22602 #[inline]
22603 fn can_cast(kind: SyntaxKind) -> bool {
22604 kind == SyntaxKind::IS_DISTINCT_FROM
22605 }
22606 #[inline]
22607 fn cast(syntax: SyntaxNode) -> Option<Self> {
22608 if Self::can_cast(syntax.kind()) {
22609 Some(Self { syntax })
22610 } else {
22611 None
22612 }
22613 }
22614 #[inline]
22615 fn syntax(&self) -> &SyntaxNode {
22616 &self.syntax
22617 }
22618}
22619impl AstNode for IsJson {
22620 #[inline]
22621 fn can_cast(kind: SyntaxKind) -> bool {
22622 kind == SyntaxKind::IS_JSON
22623 }
22624 #[inline]
22625 fn cast(syntax: SyntaxNode) -> Option<Self> {
22626 if Self::can_cast(syntax.kind()) {
22627 Some(Self { syntax })
22628 } else {
22629 None
22630 }
22631 }
22632 #[inline]
22633 fn syntax(&self) -> &SyntaxNode {
22634 &self.syntax
22635 }
22636}
22637impl AstNode for IsJsonArray {
22638 #[inline]
22639 fn can_cast(kind: SyntaxKind) -> bool {
22640 kind == SyntaxKind::IS_JSON_ARRAY
22641 }
22642 #[inline]
22643 fn cast(syntax: SyntaxNode) -> Option<Self> {
22644 if Self::can_cast(syntax.kind()) {
22645 Some(Self { syntax })
22646 } else {
22647 None
22648 }
22649 }
22650 #[inline]
22651 fn syntax(&self) -> &SyntaxNode {
22652 &self.syntax
22653 }
22654}
22655impl AstNode for IsJsonObject {
22656 #[inline]
22657 fn can_cast(kind: SyntaxKind) -> bool {
22658 kind == SyntaxKind::IS_JSON_OBJECT
22659 }
22660 #[inline]
22661 fn cast(syntax: SyntaxNode) -> Option<Self> {
22662 if Self::can_cast(syntax.kind()) {
22663 Some(Self { syntax })
22664 } else {
22665 None
22666 }
22667 }
22668 #[inline]
22669 fn syntax(&self) -> &SyntaxNode {
22670 &self.syntax
22671 }
22672}
22673impl AstNode for IsJsonScalar {
22674 #[inline]
22675 fn can_cast(kind: SyntaxKind) -> bool {
22676 kind == SyntaxKind::IS_JSON_SCALAR
22677 }
22678 #[inline]
22679 fn cast(syntax: SyntaxNode) -> Option<Self> {
22680 if Self::can_cast(syntax.kind()) {
22681 Some(Self { syntax })
22682 } else {
22683 None
22684 }
22685 }
22686 #[inline]
22687 fn syntax(&self) -> &SyntaxNode {
22688 &self.syntax
22689 }
22690}
22691impl AstNode for IsJsonValue {
22692 #[inline]
22693 fn can_cast(kind: SyntaxKind) -> bool {
22694 kind == SyntaxKind::IS_JSON_VALUE
22695 }
22696 #[inline]
22697 fn cast(syntax: SyntaxNode) -> Option<Self> {
22698 if Self::can_cast(syntax.kind()) {
22699 Some(Self { syntax })
22700 } else {
22701 None
22702 }
22703 }
22704 #[inline]
22705 fn syntax(&self) -> &SyntaxNode {
22706 &self.syntax
22707 }
22708}
22709impl AstNode for IsNormalized {
22710 #[inline]
22711 fn can_cast(kind: SyntaxKind) -> bool {
22712 kind == SyntaxKind::IS_NORMALIZED
22713 }
22714 #[inline]
22715 fn cast(syntax: SyntaxNode) -> Option<Self> {
22716 if Self::can_cast(syntax.kind()) {
22717 Some(Self { syntax })
22718 } else {
22719 None
22720 }
22721 }
22722 #[inline]
22723 fn syntax(&self) -> &SyntaxNode {
22724 &self.syntax
22725 }
22726}
22727impl AstNode for IsNot {
22728 #[inline]
22729 fn can_cast(kind: SyntaxKind) -> bool {
22730 kind == SyntaxKind::IS_NOT
22731 }
22732 #[inline]
22733 fn cast(syntax: SyntaxNode) -> Option<Self> {
22734 if Self::can_cast(syntax.kind()) {
22735 Some(Self { syntax })
22736 } else {
22737 None
22738 }
22739 }
22740 #[inline]
22741 fn syntax(&self) -> &SyntaxNode {
22742 &self.syntax
22743 }
22744}
22745impl AstNode for IsNotDistinctFrom {
22746 #[inline]
22747 fn can_cast(kind: SyntaxKind) -> bool {
22748 kind == SyntaxKind::IS_NOT_DISTINCT_FROM
22749 }
22750 #[inline]
22751 fn cast(syntax: SyntaxNode) -> Option<Self> {
22752 if Self::can_cast(syntax.kind()) {
22753 Some(Self { syntax })
22754 } else {
22755 None
22756 }
22757 }
22758 #[inline]
22759 fn syntax(&self) -> &SyntaxNode {
22760 &self.syntax
22761 }
22762}
22763impl AstNode for IsNotJson {
22764 #[inline]
22765 fn can_cast(kind: SyntaxKind) -> bool {
22766 kind == SyntaxKind::IS_NOT_JSON
22767 }
22768 #[inline]
22769 fn cast(syntax: SyntaxNode) -> Option<Self> {
22770 if Self::can_cast(syntax.kind()) {
22771 Some(Self { syntax })
22772 } else {
22773 None
22774 }
22775 }
22776 #[inline]
22777 fn syntax(&self) -> &SyntaxNode {
22778 &self.syntax
22779 }
22780}
22781impl AstNode for IsNotJsonArray {
22782 #[inline]
22783 fn can_cast(kind: SyntaxKind) -> bool {
22784 kind == SyntaxKind::IS_NOT_JSON_ARRAY
22785 }
22786 #[inline]
22787 fn cast(syntax: SyntaxNode) -> Option<Self> {
22788 if Self::can_cast(syntax.kind()) {
22789 Some(Self { syntax })
22790 } else {
22791 None
22792 }
22793 }
22794 #[inline]
22795 fn syntax(&self) -> &SyntaxNode {
22796 &self.syntax
22797 }
22798}
22799impl AstNode for IsNotJsonObject {
22800 #[inline]
22801 fn can_cast(kind: SyntaxKind) -> bool {
22802 kind == SyntaxKind::IS_NOT_JSON_OBJECT
22803 }
22804 #[inline]
22805 fn cast(syntax: SyntaxNode) -> Option<Self> {
22806 if Self::can_cast(syntax.kind()) {
22807 Some(Self { syntax })
22808 } else {
22809 None
22810 }
22811 }
22812 #[inline]
22813 fn syntax(&self) -> &SyntaxNode {
22814 &self.syntax
22815 }
22816}
22817impl AstNode for IsNotJsonScalar {
22818 #[inline]
22819 fn can_cast(kind: SyntaxKind) -> bool {
22820 kind == SyntaxKind::IS_NOT_JSON_SCALAR
22821 }
22822 #[inline]
22823 fn cast(syntax: SyntaxNode) -> Option<Self> {
22824 if Self::can_cast(syntax.kind()) {
22825 Some(Self { syntax })
22826 } else {
22827 None
22828 }
22829 }
22830 #[inline]
22831 fn syntax(&self) -> &SyntaxNode {
22832 &self.syntax
22833 }
22834}
22835impl AstNode for IsNotJsonValue {
22836 #[inline]
22837 fn can_cast(kind: SyntaxKind) -> bool {
22838 kind == SyntaxKind::IS_NOT_JSON_VALUE
22839 }
22840 #[inline]
22841 fn cast(syntax: SyntaxNode) -> Option<Self> {
22842 if Self::can_cast(syntax.kind()) {
22843 Some(Self { syntax })
22844 } else {
22845 None
22846 }
22847 }
22848 #[inline]
22849 fn syntax(&self) -> &SyntaxNode {
22850 &self.syntax
22851 }
22852}
22853impl AstNode for IsNotNormalized {
22854 #[inline]
22855 fn can_cast(kind: SyntaxKind) -> bool {
22856 kind == SyntaxKind::IS_NOT_NORMALIZED
22857 }
22858 #[inline]
22859 fn cast(syntax: SyntaxNode) -> Option<Self> {
22860 if Self::can_cast(syntax.kind()) {
22861 Some(Self { syntax })
22862 } else {
22863 None
22864 }
22865 }
22866 #[inline]
22867 fn syntax(&self) -> &SyntaxNode {
22868 &self.syntax
22869 }
22870}
22871impl AstNode for Join {
22872 #[inline]
22873 fn can_cast(kind: SyntaxKind) -> bool {
22874 kind == SyntaxKind::JOIN
22875 }
22876 #[inline]
22877 fn cast(syntax: SyntaxNode) -> Option<Self> {
22878 if Self::can_cast(syntax.kind()) {
22879 Some(Self { syntax })
22880 } else {
22881 None
22882 }
22883 }
22884 #[inline]
22885 fn syntax(&self) -> &SyntaxNode {
22886 &self.syntax
22887 }
22888}
22889impl AstNode for JoinCross {
22890 #[inline]
22891 fn can_cast(kind: SyntaxKind) -> bool {
22892 kind == SyntaxKind::JOIN_CROSS
22893 }
22894 #[inline]
22895 fn cast(syntax: SyntaxNode) -> Option<Self> {
22896 if Self::can_cast(syntax.kind()) {
22897 Some(Self { syntax })
22898 } else {
22899 None
22900 }
22901 }
22902 #[inline]
22903 fn syntax(&self) -> &SyntaxNode {
22904 &self.syntax
22905 }
22906}
22907impl AstNode for JoinExpr {
22908 #[inline]
22909 fn can_cast(kind: SyntaxKind) -> bool {
22910 kind == SyntaxKind::JOIN_EXPR
22911 }
22912 #[inline]
22913 fn cast(syntax: SyntaxNode) -> Option<Self> {
22914 if Self::can_cast(syntax.kind()) {
22915 Some(Self { syntax })
22916 } else {
22917 None
22918 }
22919 }
22920 #[inline]
22921 fn syntax(&self) -> &SyntaxNode {
22922 &self.syntax
22923 }
22924}
22925impl AstNode for JoinFull {
22926 #[inline]
22927 fn can_cast(kind: SyntaxKind) -> bool {
22928 kind == SyntaxKind::JOIN_FULL
22929 }
22930 #[inline]
22931 fn cast(syntax: SyntaxNode) -> Option<Self> {
22932 if Self::can_cast(syntax.kind()) {
22933 Some(Self { syntax })
22934 } else {
22935 None
22936 }
22937 }
22938 #[inline]
22939 fn syntax(&self) -> &SyntaxNode {
22940 &self.syntax
22941 }
22942}
22943impl AstNode for JoinInner {
22944 #[inline]
22945 fn can_cast(kind: SyntaxKind) -> bool {
22946 kind == SyntaxKind::JOIN_INNER
22947 }
22948 #[inline]
22949 fn cast(syntax: SyntaxNode) -> Option<Self> {
22950 if Self::can_cast(syntax.kind()) {
22951 Some(Self { syntax })
22952 } else {
22953 None
22954 }
22955 }
22956 #[inline]
22957 fn syntax(&self) -> &SyntaxNode {
22958 &self.syntax
22959 }
22960}
22961impl AstNode for JoinLeft {
22962 #[inline]
22963 fn can_cast(kind: SyntaxKind) -> bool {
22964 kind == SyntaxKind::JOIN_LEFT
22965 }
22966 #[inline]
22967 fn cast(syntax: SyntaxNode) -> Option<Self> {
22968 if Self::can_cast(syntax.kind()) {
22969 Some(Self { syntax })
22970 } else {
22971 None
22972 }
22973 }
22974 #[inline]
22975 fn syntax(&self) -> &SyntaxNode {
22976 &self.syntax
22977 }
22978}
22979impl AstNode for JoinRight {
22980 #[inline]
22981 fn can_cast(kind: SyntaxKind) -> bool {
22982 kind == SyntaxKind::JOIN_RIGHT
22983 }
22984 #[inline]
22985 fn cast(syntax: SyntaxNode) -> Option<Self> {
22986 if Self::can_cast(syntax.kind()) {
22987 Some(Self { syntax })
22988 } else {
22989 None
22990 }
22991 }
22992 #[inline]
22993 fn syntax(&self) -> &SyntaxNode {
22994 &self.syntax
22995 }
22996}
22997impl AstNode for JoinUsingClause {
22998 #[inline]
22999 fn can_cast(kind: SyntaxKind) -> bool {
23000 kind == SyntaxKind::JOIN_USING_CLAUSE
23001 }
23002 #[inline]
23003 fn cast(syntax: SyntaxNode) -> Option<Self> {
23004 if Self::can_cast(syntax.kind()) {
23005 Some(Self { syntax })
23006 } else {
23007 None
23008 }
23009 }
23010 #[inline]
23011 fn syntax(&self) -> &SyntaxNode {
23012 &self.syntax
23013 }
23014}
23015impl AstNode for JsonArrayAggFn {
23016 #[inline]
23017 fn can_cast(kind: SyntaxKind) -> bool {
23018 kind == SyntaxKind::JSON_ARRAY_AGG_FN
23019 }
23020 #[inline]
23021 fn cast(syntax: SyntaxNode) -> Option<Self> {
23022 if Self::can_cast(syntax.kind()) {
23023 Some(Self { syntax })
23024 } else {
23025 None
23026 }
23027 }
23028 #[inline]
23029 fn syntax(&self) -> &SyntaxNode {
23030 &self.syntax
23031 }
23032}
23033impl AstNode for JsonArrayFn {
23034 #[inline]
23035 fn can_cast(kind: SyntaxKind) -> bool {
23036 kind == SyntaxKind::JSON_ARRAY_FN
23037 }
23038 #[inline]
23039 fn cast(syntax: SyntaxNode) -> Option<Self> {
23040 if Self::can_cast(syntax.kind()) {
23041 Some(Self { syntax })
23042 } else {
23043 None
23044 }
23045 }
23046 #[inline]
23047 fn syntax(&self) -> &SyntaxNode {
23048 &self.syntax
23049 }
23050}
23051impl AstNode for JsonBehaviorClause {
23052 #[inline]
23053 fn can_cast(kind: SyntaxKind) -> bool {
23054 kind == SyntaxKind::JSON_BEHAVIOR_CLAUSE
23055 }
23056 #[inline]
23057 fn cast(syntax: SyntaxNode) -> Option<Self> {
23058 if Self::can_cast(syntax.kind()) {
23059 Some(Self { syntax })
23060 } else {
23061 None
23062 }
23063 }
23064 #[inline]
23065 fn syntax(&self) -> &SyntaxNode {
23066 &self.syntax
23067 }
23068}
23069impl AstNode for JsonBehaviorDefault {
23070 #[inline]
23071 fn can_cast(kind: SyntaxKind) -> bool {
23072 kind == SyntaxKind::JSON_BEHAVIOR_DEFAULT
23073 }
23074 #[inline]
23075 fn cast(syntax: SyntaxNode) -> Option<Self> {
23076 if Self::can_cast(syntax.kind()) {
23077 Some(Self { syntax })
23078 } else {
23079 None
23080 }
23081 }
23082 #[inline]
23083 fn syntax(&self) -> &SyntaxNode {
23084 &self.syntax
23085 }
23086}
23087impl AstNode for JsonBehaviorEmptyArray {
23088 #[inline]
23089 fn can_cast(kind: SyntaxKind) -> bool {
23090 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
23091 }
23092 #[inline]
23093 fn cast(syntax: SyntaxNode) -> Option<Self> {
23094 if Self::can_cast(syntax.kind()) {
23095 Some(Self { syntax })
23096 } else {
23097 None
23098 }
23099 }
23100 #[inline]
23101 fn syntax(&self) -> &SyntaxNode {
23102 &self.syntax
23103 }
23104}
23105impl AstNode for JsonBehaviorEmptyObject {
23106 #[inline]
23107 fn can_cast(kind: SyntaxKind) -> bool {
23108 kind == SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
23109 }
23110 #[inline]
23111 fn cast(syntax: SyntaxNode) -> Option<Self> {
23112 if Self::can_cast(syntax.kind()) {
23113 Some(Self { syntax })
23114 } else {
23115 None
23116 }
23117 }
23118 #[inline]
23119 fn syntax(&self) -> &SyntaxNode {
23120 &self.syntax
23121 }
23122}
23123impl AstNode for JsonBehaviorError {
23124 #[inline]
23125 fn can_cast(kind: SyntaxKind) -> bool {
23126 kind == SyntaxKind::JSON_BEHAVIOR_ERROR
23127 }
23128 #[inline]
23129 fn cast(syntax: SyntaxNode) -> Option<Self> {
23130 if Self::can_cast(syntax.kind()) {
23131 Some(Self { syntax })
23132 } else {
23133 None
23134 }
23135 }
23136 #[inline]
23137 fn syntax(&self) -> &SyntaxNode {
23138 &self.syntax
23139 }
23140}
23141impl AstNode for JsonBehaviorFalse {
23142 #[inline]
23143 fn can_cast(kind: SyntaxKind) -> bool {
23144 kind == SyntaxKind::JSON_BEHAVIOR_FALSE
23145 }
23146 #[inline]
23147 fn cast(syntax: SyntaxNode) -> Option<Self> {
23148 if Self::can_cast(syntax.kind()) {
23149 Some(Self { syntax })
23150 } else {
23151 None
23152 }
23153 }
23154 #[inline]
23155 fn syntax(&self) -> &SyntaxNode {
23156 &self.syntax
23157 }
23158}
23159impl AstNode for JsonBehaviorNull {
23160 #[inline]
23161 fn can_cast(kind: SyntaxKind) -> bool {
23162 kind == SyntaxKind::JSON_BEHAVIOR_NULL
23163 }
23164 #[inline]
23165 fn cast(syntax: SyntaxNode) -> Option<Self> {
23166 if Self::can_cast(syntax.kind()) {
23167 Some(Self { syntax })
23168 } else {
23169 None
23170 }
23171 }
23172 #[inline]
23173 fn syntax(&self) -> &SyntaxNode {
23174 &self.syntax
23175 }
23176}
23177impl AstNode for JsonBehaviorTrue {
23178 #[inline]
23179 fn can_cast(kind: SyntaxKind) -> bool {
23180 kind == SyntaxKind::JSON_BEHAVIOR_TRUE
23181 }
23182 #[inline]
23183 fn cast(syntax: SyntaxNode) -> Option<Self> {
23184 if Self::can_cast(syntax.kind()) {
23185 Some(Self { syntax })
23186 } else {
23187 None
23188 }
23189 }
23190 #[inline]
23191 fn syntax(&self) -> &SyntaxNode {
23192 &self.syntax
23193 }
23194}
23195impl AstNode for JsonBehaviorUnknown {
23196 #[inline]
23197 fn can_cast(kind: SyntaxKind) -> bool {
23198 kind == SyntaxKind::JSON_BEHAVIOR_UNKNOWN
23199 }
23200 #[inline]
23201 fn cast(syntax: SyntaxNode) -> Option<Self> {
23202 if Self::can_cast(syntax.kind()) {
23203 Some(Self { syntax })
23204 } else {
23205 None
23206 }
23207 }
23208 #[inline]
23209 fn syntax(&self) -> &SyntaxNode {
23210 &self.syntax
23211 }
23212}
23213impl AstNode for JsonEncodingClause {
23214 #[inline]
23215 fn can_cast(kind: SyntaxKind) -> bool {
23216 kind == SyntaxKind::JSON_ENCODING_CLAUSE
23217 }
23218 #[inline]
23219 fn cast(syntax: SyntaxNode) -> Option<Self> {
23220 if Self::can_cast(syntax.kind()) {
23221 Some(Self { syntax })
23222 } else {
23223 None
23224 }
23225 }
23226 #[inline]
23227 fn syntax(&self) -> &SyntaxNode {
23228 &self.syntax
23229 }
23230}
23231impl AstNode for JsonExistsFn {
23232 #[inline]
23233 fn can_cast(kind: SyntaxKind) -> bool {
23234 kind == SyntaxKind::JSON_EXISTS_FN
23235 }
23236 #[inline]
23237 fn cast(syntax: SyntaxNode) -> Option<Self> {
23238 if Self::can_cast(syntax.kind()) {
23239 Some(Self { syntax })
23240 } else {
23241 None
23242 }
23243 }
23244 #[inline]
23245 fn syntax(&self) -> &SyntaxNode {
23246 &self.syntax
23247 }
23248}
23249impl AstNode for JsonExprFormat {
23250 #[inline]
23251 fn can_cast(kind: SyntaxKind) -> bool {
23252 kind == SyntaxKind::JSON_EXPR_FORMAT
23253 }
23254 #[inline]
23255 fn cast(syntax: SyntaxNode) -> Option<Self> {
23256 if Self::can_cast(syntax.kind()) {
23257 Some(Self { syntax })
23258 } else {
23259 None
23260 }
23261 }
23262 #[inline]
23263 fn syntax(&self) -> &SyntaxNode {
23264 &self.syntax
23265 }
23266}
23267impl AstNode for JsonFn {
23268 #[inline]
23269 fn can_cast(kind: SyntaxKind) -> bool {
23270 kind == SyntaxKind::JSON_FN
23271 }
23272 #[inline]
23273 fn cast(syntax: SyntaxNode) -> Option<Self> {
23274 if Self::can_cast(syntax.kind()) {
23275 Some(Self { syntax })
23276 } else {
23277 None
23278 }
23279 }
23280 #[inline]
23281 fn syntax(&self) -> &SyntaxNode {
23282 &self.syntax
23283 }
23284}
23285impl AstNode for JsonFormatClause {
23286 #[inline]
23287 fn can_cast(kind: SyntaxKind) -> bool {
23288 kind == SyntaxKind::JSON_FORMAT_CLAUSE
23289 }
23290 #[inline]
23291 fn cast(syntax: SyntaxNode) -> Option<Self> {
23292 if Self::can_cast(syntax.kind()) {
23293 Some(Self { syntax })
23294 } else {
23295 None
23296 }
23297 }
23298 #[inline]
23299 fn syntax(&self) -> &SyntaxNode {
23300 &self.syntax
23301 }
23302}
23303impl AstNode for JsonKeyValue {
23304 #[inline]
23305 fn can_cast(kind: SyntaxKind) -> bool {
23306 kind == SyntaxKind::JSON_KEY_VALUE
23307 }
23308 #[inline]
23309 fn cast(syntax: SyntaxNode) -> Option<Self> {
23310 if Self::can_cast(syntax.kind()) {
23311 Some(Self { syntax })
23312 } else {
23313 None
23314 }
23315 }
23316 #[inline]
23317 fn syntax(&self) -> &SyntaxNode {
23318 &self.syntax
23319 }
23320}
23321impl AstNode for JsonKeysUniqueClause {
23322 #[inline]
23323 fn can_cast(kind: SyntaxKind) -> bool {
23324 kind == SyntaxKind::JSON_KEYS_UNIQUE_CLAUSE
23325 }
23326 #[inline]
23327 fn cast(syntax: SyntaxNode) -> Option<Self> {
23328 if Self::can_cast(syntax.kind()) {
23329 Some(Self { syntax })
23330 } else {
23331 None
23332 }
23333 }
23334 #[inline]
23335 fn syntax(&self) -> &SyntaxNode {
23336 &self.syntax
23337 }
23338}
23339impl AstNode for JsonNullClause {
23340 #[inline]
23341 fn can_cast(kind: SyntaxKind) -> bool {
23342 kind == SyntaxKind::JSON_NULL_CLAUSE
23343 }
23344 #[inline]
23345 fn cast(syntax: SyntaxNode) -> Option<Self> {
23346 if Self::can_cast(syntax.kind()) {
23347 Some(Self { syntax })
23348 } else {
23349 None
23350 }
23351 }
23352 #[inline]
23353 fn syntax(&self) -> &SyntaxNode {
23354 &self.syntax
23355 }
23356}
23357impl AstNode for JsonObjectAggFn {
23358 #[inline]
23359 fn can_cast(kind: SyntaxKind) -> bool {
23360 kind == SyntaxKind::JSON_OBJECT_AGG_FN
23361 }
23362 #[inline]
23363 fn cast(syntax: SyntaxNode) -> Option<Self> {
23364 if Self::can_cast(syntax.kind()) {
23365 Some(Self { syntax })
23366 } else {
23367 None
23368 }
23369 }
23370 #[inline]
23371 fn syntax(&self) -> &SyntaxNode {
23372 &self.syntax
23373 }
23374}
23375impl AstNode for JsonObjectFn {
23376 #[inline]
23377 fn can_cast(kind: SyntaxKind) -> bool {
23378 kind == SyntaxKind::JSON_OBJECT_FN
23379 }
23380 #[inline]
23381 fn cast(syntax: SyntaxNode) -> Option<Self> {
23382 if Self::can_cast(syntax.kind()) {
23383 Some(Self { syntax })
23384 } else {
23385 None
23386 }
23387 }
23388 #[inline]
23389 fn syntax(&self) -> &SyntaxNode {
23390 &self.syntax
23391 }
23392}
23393impl AstNode for JsonOnEmptyClause {
23394 #[inline]
23395 fn can_cast(kind: SyntaxKind) -> bool {
23396 kind == SyntaxKind::JSON_ON_EMPTY_CLAUSE
23397 }
23398 #[inline]
23399 fn cast(syntax: SyntaxNode) -> Option<Self> {
23400 if Self::can_cast(syntax.kind()) {
23401 Some(Self { syntax })
23402 } else {
23403 None
23404 }
23405 }
23406 #[inline]
23407 fn syntax(&self) -> &SyntaxNode {
23408 &self.syntax
23409 }
23410}
23411impl AstNode for JsonOnErrorClause {
23412 #[inline]
23413 fn can_cast(kind: SyntaxKind) -> bool {
23414 kind == SyntaxKind::JSON_ON_ERROR_CLAUSE
23415 }
23416 #[inline]
23417 fn cast(syntax: SyntaxNode) -> Option<Self> {
23418 if Self::can_cast(syntax.kind()) {
23419 Some(Self { syntax })
23420 } else {
23421 None
23422 }
23423 }
23424 #[inline]
23425 fn syntax(&self) -> &SyntaxNode {
23426 &self.syntax
23427 }
23428}
23429impl AstNode for JsonPassingArg {
23430 #[inline]
23431 fn can_cast(kind: SyntaxKind) -> bool {
23432 kind == SyntaxKind::JSON_PASSING_ARG
23433 }
23434 #[inline]
23435 fn cast(syntax: SyntaxNode) -> Option<Self> {
23436 if Self::can_cast(syntax.kind()) {
23437 Some(Self { syntax })
23438 } else {
23439 None
23440 }
23441 }
23442 #[inline]
23443 fn syntax(&self) -> &SyntaxNode {
23444 &self.syntax
23445 }
23446}
23447impl AstNode for JsonPassingClause {
23448 #[inline]
23449 fn can_cast(kind: SyntaxKind) -> bool {
23450 kind == SyntaxKind::JSON_PASSING_CLAUSE
23451 }
23452 #[inline]
23453 fn cast(syntax: SyntaxNode) -> Option<Self> {
23454 if Self::can_cast(syntax.kind()) {
23455 Some(Self { syntax })
23456 } else {
23457 None
23458 }
23459 }
23460 #[inline]
23461 fn syntax(&self) -> &SyntaxNode {
23462 &self.syntax
23463 }
23464}
23465impl AstNode for JsonPathClause {
23466 #[inline]
23467 fn can_cast(kind: SyntaxKind) -> bool {
23468 kind == SyntaxKind::JSON_PATH_CLAUSE
23469 }
23470 #[inline]
23471 fn cast(syntax: SyntaxNode) -> Option<Self> {
23472 if Self::can_cast(syntax.kind()) {
23473 Some(Self { syntax })
23474 } else {
23475 None
23476 }
23477 }
23478 #[inline]
23479 fn syntax(&self) -> &SyntaxNode {
23480 &self.syntax
23481 }
23482}
23483impl AstNode for JsonQueryFn {
23484 #[inline]
23485 fn can_cast(kind: SyntaxKind) -> bool {
23486 kind == SyntaxKind::JSON_QUERY_FN
23487 }
23488 #[inline]
23489 fn cast(syntax: SyntaxNode) -> Option<Self> {
23490 if Self::can_cast(syntax.kind()) {
23491 Some(Self { syntax })
23492 } else {
23493 None
23494 }
23495 }
23496 #[inline]
23497 fn syntax(&self) -> &SyntaxNode {
23498 &self.syntax
23499 }
23500}
23501impl AstNode for JsonQuotesClause {
23502 #[inline]
23503 fn can_cast(kind: SyntaxKind) -> bool {
23504 kind == SyntaxKind::JSON_QUOTES_CLAUSE
23505 }
23506 #[inline]
23507 fn cast(syntax: SyntaxNode) -> Option<Self> {
23508 if Self::can_cast(syntax.kind()) {
23509 Some(Self { syntax })
23510 } else {
23511 None
23512 }
23513 }
23514 #[inline]
23515 fn syntax(&self) -> &SyntaxNode {
23516 &self.syntax
23517 }
23518}
23519impl AstNode for JsonReturningClause {
23520 #[inline]
23521 fn can_cast(kind: SyntaxKind) -> bool {
23522 kind == SyntaxKind::JSON_RETURNING_CLAUSE
23523 }
23524 #[inline]
23525 fn cast(syntax: SyntaxNode) -> Option<Self> {
23526 if Self::can_cast(syntax.kind()) {
23527 Some(Self { syntax })
23528 } else {
23529 None
23530 }
23531 }
23532 #[inline]
23533 fn syntax(&self) -> &SyntaxNode {
23534 &self.syntax
23535 }
23536}
23537impl AstNode for JsonScalarFn {
23538 #[inline]
23539 fn can_cast(kind: SyntaxKind) -> bool {
23540 kind == SyntaxKind::JSON_SCALAR_FN
23541 }
23542 #[inline]
23543 fn cast(syntax: SyntaxNode) -> Option<Self> {
23544 if Self::can_cast(syntax.kind()) {
23545 Some(Self { syntax })
23546 } else {
23547 None
23548 }
23549 }
23550 #[inline]
23551 fn syntax(&self) -> &SyntaxNode {
23552 &self.syntax
23553 }
23554}
23555impl AstNode for JsonSelectFormat {
23556 #[inline]
23557 fn can_cast(kind: SyntaxKind) -> bool {
23558 kind == SyntaxKind::JSON_SELECT_FORMAT
23559 }
23560 #[inline]
23561 fn cast(syntax: SyntaxNode) -> Option<Self> {
23562 if Self::can_cast(syntax.kind()) {
23563 Some(Self { syntax })
23564 } else {
23565 None
23566 }
23567 }
23568 #[inline]
23569 fn syntax(&self) -> &SyntaxNode {
23570 &self.syntax
23571 }
23572}
23573impl AstNode for JsonSerializeFn {
23574 #[inline]
23575 fn can_cast(kind: SyntaxKind) -> bool {
23576 kind == SyntaxKind::JSON_SERIALIZE_FN
23577 }
23578 #[inline]
23579 fn cast(syntax: SyntaxNode) -> Option<Self> {
23580 if Self::can_cast(syntax.kind()) {
23581 Some(Self { syntax })
23582 } else {
23583 None
23584 }
23585 }
23586 #[inline]
23587 fn syntax(&self) -> &SyntaxNode {
23588 &self.syntax
23589 }
23590}
23591impl AstNode for JsonTable {
23592 #[inline]
23593 fn can_cast(kind: SyntaxKind) -> bool {
23594 kind == SyntaxKind::JSON_TABLE
23595 }
23596 #[inline]
23597 fn cast(syntax: SyntaxNode) -> Option<Self> {
23598 if Self::can_cast(syntax.kind()) {
23599 Some(Self { syntax })
23600 } else {
23601 None
23602 }
23603 }
23604 #[inline]
23605 fn syntax(&self) -> &SyntaxNode {
23606 &self.syntax
23607 }
23608}
23609impl AstNode for JsonTableColumn {
23610 #[inline]
23611 fn can_cast(kind: SyntaxKind) -> bool {
23612 kind == SyntaxKind::JSON_TABLE_COLUMN
23613 }
23614 #[inline]
23615 fn cast(syntax: SyntaxNode) -> Option<Self> {
23616 if Self::can_cast(syntax.kind()) {
23617 Some(Self { syntax })
23618 } else {
23619 None
23620 }
23621 }
23622 #[inline]
23623 fn syntax(&self) -> &SyntaxNode {
23624 &self.syntax
23625 }
23626}
23627impl AstNode for JsonTableColumnList {
23628 #[inline]
23629 fn can_cast(kind: SyntaxKind) -> bool {
23630 kind == SyntaxKind::JSON_TABLE_COLUMN_LIST
23631 }
23632 #[inline]
23633 fn cast(syntax: SyntaxNode) -> Option<Self> {
23634 if Self::can_cast(syntax.kind()) {
23635 Some(Self { syntax })
23636 } else {
23637 None
23638 }
23639 }
23640 #[inline]
23641 fn syntax(&self) -> &SyntaxNode {
23642 &self.syntax
23643 }
23644}
23645impl AstNode for JsonValueExpr {
23646 #[inline]
23647 fn can_cast(kind: SyntaxKind) -> bool {
23648 kind == SyntaxKind::JSON_VALUE_EXPR
23649 }
23650 #[inline]
23651 fn cast(syntax: SyntaxNode) -> Option<Self> {
23652 if Self::can_cast(syntax.kind()) {
23653 Some(Self { syntax })
23654 } else {
23655 None
23656 }
23657 }
23658 #[inline]
23659 fn syntax(&self) -> &SyntaxNode {
23660 &self.syntax
23661 }
23662}
23663impl AstNode for JsonValueFn {
23664 #[inline]
23665 fn can_cast(kind: SyntaxKind) -> bool {
23666 kind == SyntaxKind::JSON_VALUE_FN
23667 }
23668 #[inline]
23669 fn cast(syntax: SyntaxNode) -> Option<Self> {
23670 if Self::can_cast(syntax.kind()) {
23671 Some(Self { syntax })
23672 } else {
23673 None
23674 }
23675 }
23676 #[inline]
23677 fn syntax(&self) -> &SyntaxNode {
23678 &self.syntax
23679 }
23680}
23681impl AstNode for JsonWrapperBehaviorClause {
23682 #[inline]
23683 fn can_cast(kind: SyntaxKind) -> bool {
23684 kind == SyntaxKind::JSON_WRAPPER_BEHAVIOR_CLAUSE
23685 }
23686 #[inline]
23687 fn cast(syntax: SyntaxNode) -> Option<Self> {
23688 if Self::can_cast(syntax.kind()) {
23689 Some(Self { syntax })
23690 } else {
23691 None
23692 }
23693 }
23694 #[inline]
23695 fn syntax(&self) -> &SyntaxNode {
23696 &self.syntax
23697 }
23698}
23699impl AstNode for LanguageFuncOption {
23700 #[inline]
23701 fn can_cast(kind: SyntaxKind) -> bool {
23702 kind == SyntaxKind::LANGUAGE_FUNC_OPTION
23703 }
23704 #[inline]
23705 fn cast(syntax: SyntaxNode) -> Option<Self> {
23706 if Self::can_cast(syntax.kind()) {
23707 Some(Self { syntax })
23708 } else {
23709 None
23710 }
23711 }
23712 #[inline]
23713 fn syntax(&self) -> &SyntaxNode {
23714 &self.syntax
23715 }
23716}
23717impl AstNode for LeakproofFuncOption {
23718 #[inline]
23719 fn can_cast(kind: SyntaxKind) -> bool {
23720 kind == SyntaxKind::LEAKPROOF_FUNC_OPTION
23721 }
23722 #[inline]
23723 fn cast(syntax: SyntaxNode) -> Option<Self> {
23724 if Self::can_cast(syntax.kind()) {
23725 Some(Self { syntax })
23726 } else {
23727 None
23728 }
23729 }
23730 #[inline]
23731 fn syntax(&self) -> &SyntaxNode {
23732 &self.syntax
23733 }
23734}
23735impl AstNode for LikeClause {
23736 #[inline]
23737 fn can_cast(kind: SyntaxKind) -> bool {
23738 kind == SyntaxKind::LIKE_CLAUSE
23739 }
23740 #[inline]
23741 fn cast(syntax: SyntaxNode) -> Option<Self> {
23742 if Self::can_cast(syntax.kind()) {
23743 Some(Self { syntax })
23744 } else {
23745 None
23746 }
23747 }
23748 #[inline]
23749 fn syntax(&self) -> &SyntaxNode {
23750 &self.syntax
23751 }
23752}
23753impl AstNode for LikeOption {
23754 #[inline]
23755 fn can_cast(kind: SyntaxKind) -> bool {
23756 kind == SyntaxKind::LIKE_OPTION
23757 }
23758 #[inline]
23759 fn cast(syntax: SyntaxNode) -> Option<Self> {
23760 if Self::can_cast(syntax.kind()) {
23761 Some(Self { syntax })
23762 } else {
23763 None
23764 }
23765 }
23766 #[inline]
23767 fn syntax(&self) -> &SyntaxNode {
23768 &self.syntax
23769 }
23770}
23771impl AstNode for LimitClause {
23772 #[inline]
23773 fn can_cast(kind: SyntaxKind) -> bool {
23774 kind == SyntaxKind::LIMIT_CLAUSE
23775 }
23776 #[inline]
23777 fn cast(syntax: SyntaxNode) -> Option<Self> {
23778 if Self::can_cast(syntax.kind()) {
23779 Some(Self { syntax })
23780 } else {
23781 None
23782 }
23783 }
23784 #[inline]
23785 fn syntax(&self) -> &SyntaxNode {
23786 &self.syntax
23787 }
23788}
23789impl AstNode for LimitToTables {
23790 #[inline]
23791 fn can_cast(kind: SyntaxKind) -> bool {
23792 kind == SyntaxKind::LIMIT_TO_TABLES
23793 }
23794 #[inline]
23795 fn cast(syntax: SyntaxNode) -> Option<Self> {
23796 if Self::can_cast(syntax.kind()) {
23797 Some(Self { syntax })
23798 } else {
23799 None
23800 }
23801 }
23802 #[inline]
23803 fn syntax(&self) -> &SyntaxNode {
23804 &self.syntax
23805 }
23806}
23807impl AstNode for Listen {
23808 #[inline]
23809 fn can_cast(kind: SyntaxKind) -> bool {
23810 kind == SyntaxKind::LISTEN
23811 }
23812 #[inline]
23813 fn cast(syntax: SyntaxNode) -> Option<Self> {
23814 if Self::can_cast(syntax.kind()) {
23815 Some(Self { syntax })
23816 } else {
23817 None
23818 }
23819 }
23820 #[inline]
23821 fn syntax(&self) -> &SyntaxNode {
23822 &self.syntax
23823 }
23824}
23825impl AstNode for Literal {
23826 #[inline]
23827 fn can_cast(kind: SyntaxKind) -> bool {
23828 kind == SyntaxKind::LITERAL
23829 }
23830 #[inline]
23831 fn cast(syntax: SyntaxNode) -> Option<Self> {
23832 if Self::can_cast(syntax.kind()) {
23833 Some(Self { syntax })
23834 } else {
23835 None
23836 }
23837 }
23838 #[inline]
23839 fn syntax(&self) -> &SyntaxNode {
23840 &self.syntax
23841 }
23842}
23843impl AstNode for Load {
23844 #[inline]
23845 fn can_cast(kind: SyntaxKind) -> bool {
23846 kind == SyntaxKind::LOAD
23847 }
23848 #[inline]
23849 fn cast(syntax: SyntaxNode) -> Option<Self> {
23850 if Self::can_cast(syntax.kind()) {
23851 Some(Self { syntax })
23852 } else {
23853 None
23854 }
23855 }
23856 #[inline]
23857 fn syntax(&self) -> &SyntaxNode {
23858 &self.syntax
23859 }
23860}
23861impl AstNode for Lock {
23862 #[inline]
23863 fn can_cast(kind: SyntaxKind) -> bool {
23864 kind == SyntaxKind::LOCK
23865 }
23866 #[inline]
23867 fn cast(syntax: SyntaxNode) -> Option<Self> {
23868 if Self::can_cast(syntax.kind()) {
23869 Some(Self { syntax })
23870 } else {
23871 None
23872 }
23873 }
23874 #[inline]
23875 fn syntax(&self) -> &SyntaxNode {
23876 &self.syntax
23877 }
23878}
23879impl AstNode for LockingClause {
23880 #[inline]
23881 fn can_cast(kind: SyntaxKind) -> bool {
23882 kind == SyntaxKind::LOCKING_CLAUSE
23883 }
23884 #[inline]
23885 fn cast(syntax: SyntaxNode) -> Option<Self> {
23886 if Self::can_cast(syntax.kind()) {
23887 Some(Self { syntax })
23888 } else {
23889 None
23890 }
23891 }
23892 #[inline]
23893 fn syntax(&self) -> &SyntaxNode {
23894 &self.syntax
23895 }
23896}
23897impl AstNode for Lteq {
23898 #[inline]
23899 fn can_cast(kind: SyntaxKind) -> bool {
23900 kind == SyntaxKind::LTEQ
23901 }
23902 #[inline]
23903 fn cast(syntax: SyntaxNode) -> Option<Self> {
23904 if Self::can_cast(syntax.kind()) {
23905 Some(Self { syntax })
23906 } else {
23907 None
23908 }
23909 }
23910 #[inline]
23911 fn syntax(&self) -> &SyntaxNode {
23912 &self.syntax
23913 }
23914}
23915impl AstNode for MatchFull {
23916 #[inline]
23917 fn can_cast(kind: SyntaxKind) -> bool {
23918 kind == SyntaxKind::MATCH_FULL
23919 }
23920 #[inline]
23921 fn cast(syntax: SyntaxNode) -> Option<Self> {
23922 if Self::can_cast(syntax.kind()) {
23923 Some(Self { syntax })
23924 } else {
23925 None
23926 }
23927 }
23928 #[inline]
23929 fn syntax(&self) -> &SyntaxNode {
23930 &self.syntax
23931 }
23932}
23933impl AstNode for MatchPartial {
23934 #[inline]
23935 fn can_cast(kind: SyntaxKind) -> bool {
23936 kind == SyntaxKind::MATCH_PARTIAL
23937 }
23938 #[inline]
23939 fn cast(syntax: SyntaxNode) -> Option<Self> {
23940 if Self::can_cast(syntax.kind()) {
23941 Some(Self { syntax })
23942 } else {
23943 None
23944 }
23945 }
23946 #[inline]
23947 fn syntax(&self) -> &SyntaxNode {
23948 &self.syntax
23949 }
23950}
23951impl AstNode for MatchSimple {
23952 #[inline]
23953 fn can_cast(kind: SyntaxKind) -> bool {
23954 kind == SyntaxKind::MATCH_SIMPLE
23955 }
23956 #[inline]
23957 fn cast(syntax: SyntaxNode) -> Option<Self> {
23958 if Self::can_cast(syntax.kind()) {
23959 Some(Self { syntax })
23960 } else {
23961 None
23962 }
23963 }
23964 #[inline]
23965 fn syntax(&self) -> &SyntaxNode {
23966 &self.syntax
23967 }
23968}
23969impl AstNode for Materialized {
23970 #[inline]
23971 fn can_cast(kind: SyntaxKind) -> bool {
23972 kind == SyntaxKind::MATERIALIZED
23973 }
23974 #[inline]
23975 fn cast(syntax: SyntaxNode) -> Option<Self> {
23976 if Self::can_cast(syntax.kind()) {
23977 Some(Self { syntax })
23978 } else {
23979 None
23980 }
23981 }
23982 #[inline]
23983 fn syntax(&self) -> &SyntaxNode {
23984 &self.syntax
23985 }
23986}
23987impl AstNode for Merge {
23988 #[inline]
23989 fn can_cast(kind: SyntaxKind) -> bool {
23990 kind == SyntaxKind::MERGE
23991 }
23992 #[inline]
23993 fn cast(syntax: SyntaxNode) -> Option<Self> {
23994 if Self::can_cast(syntax.kind()) {
23995 Some(Self { syntax })
23996 } else {
23997 None
23998 }
23999 }
24000 #[inline]
24001 fn syntax(&self) -> &SyntaxNode {
24002 &self.syntax
24003 }
24004}
24005impl AstNode for MergeDelete {
24006 #[inline]
24007 fn can_cast(kind: SyntaxKind) -> bool {
24008 kind == SyntaxKind::MERGE_DELETE
24009 }
24010 #[inline]
24011 fn cast(syntax: SyntaxNode) -> Option<Self> {
24012 if Self::can_cast(syntax.kind()) {
24013 Some(Self { syntax })
24014 } else {
24015 None
24016 }
24017 }
24018 #[inline]
24019 fn syntax(&self) -> &SyntaxNode {
24020 &self.syntax
24021 }
24022}
24023impl AstNode for MergeDoNothing {
24024 #[inline]
24025 fn can_cast(kind: SyntaxKind) -> bool {
24026 kind == SyntaxKind::MERGE_DO_NOTHING
24027 }
24028 #[inline]
24029 fn cast(syntax: SyntaxNode) -> Option<Self> {
24030 if Self::can_cast(syntax.kind()) {
24031 Some(Self { syntax })
24032 } else {
24033 None
24034 }
24035 }
24036 #[inline]
24037 fn syntax(&self) -> &SyntaxNode {
24038 &self.syntax
24039 }
24040}
24041impl AstNode for MergeInsert {
24042 #[inline]
24043 fn can_cast(kind: SyntaxKind) -> bool {
24044 kind == SyntaxKind::MERGE_INSERT
24045 }
24046 #[inline]
24047 fn cast(syntax: SyntaxNode) -> Option<Self> {
24048 if Self::can_cast(syntax.kind()) {
24049 Some(Self { syntax })
24050 } else {
24051 None
24052 }
24053 }
24054 #[inline]
24055 fn syntax(&self) -> &SyntaxNode {
24056 &self.syntax
24057 }
24058}
24059impl AstNode for MergePartitions {
24060 #[inline]
24061 fn can_cast(kind: SyntaxKind) -> bool {
24062 kind == SyntaxKind::MERGE_PARTITIONS
24063 }
24064 #[inline]
24065 fn cast(syntax: SyntaxNode) -> Option<Self> {
24066 if Self::can_cast(syntax.kind()) {
24067 Some(Self { syntax })
24068 } else {
24069 None
24070 }
24071 }
24072 #[inline]
24073 fn syntax(&self) -> &SyntaxNode {
24074 &self.syntax
24075 }
24076}
24077impl AstNode for MergeUpdate {
24078 #[inline]
24079 fn can_cast(kind: SyntaxKind) -> bool {
24080 kind == SyntaxKind::MERGE_UPDATE
24081 }
24082 #[inline]
24083 fn cast(syntax: SyntaxNode) -> Option<Self> {
24084 if Self::can_cast(syntax.kind()) {
24085 Some(Self { syntax })
24086 } else {
24087 None
24088 }
24089 }
24090 #[inline]
24091 fn syntax(&self) -> &SyntaxNode {
24092 &self.syntax
24093 }
24094}
24095impl AstNode for MergeWhenMatched {
24096 #[inline]
24097 fn can_cast(kind: SyntaxKind) -> bool {
24098 kind == SyntaxKind::MERGE_WHEN_MATCHED
24099 }
24100 #[inline]
24101 fn cast(syntax: SyntaxNode) -> Option<Self> {
24102 if Self::can_cast(syntax.kind()) {
24103 Some(Self { syntax })
24104 } else {
24105 None
24106 }
24107 }
24108 #[inline]
24109 fn syntax(&self) -> &SyntaxNode {
24110 &self.syntax
24111 }
24112}
24113impl AstNode for MergeWhenNotMatchedSource {
24114 #[inline]
24115 fn can_cast(kind: SyntaxKind) -> bool {
24116 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
24117 }
24118 #[inline]
24119 fn cast(syntax: SyntaxNode) -> Option<Self> {
24120 if Self::can_cast(syntax.kind()) {
24121 Some(Self { syntax })
24122 } else {
24123 None
24124 }
24125 }
24126 #[inline]
24127 fn syntax(&self) -> &SyntaxNode {
24128 &self.syntax
24129 }
24130}
24131impl AstNode for MergeWhenNotMatchedTarget {
24132 #[inline]
24133 fn can_cast(kind: SyntaxKind) -> bool {
24134 kind == SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
24135 }
24136 #[inline]
24137 fn cast(syntax: SyntaxNode) -> Option<Self> {
24138 if Self::can_cast(syntax.kind()) {
24139 Some(Self { syntax })
24140 } else {
24141 None
24142 }
24143 }
24144 #[inline]
24145 fn syntax(&self) -> &SyntaxNode {
24146 &self.syntax
24147 }
24148}
24149impl AstNode for Move {
24150 #[inline]
24151 fn can_cast(kind: SyntaxKind) -> bool {
24152 kind == SyntaxKind::MOVE
24153 }
24154 #[inline]
24155 fn cast(syntax: SyntaxNode) -> Option<Self> {
24156 if Self::can_cast(syntax.kind()) {
24157 Some(Self { syntax })
24158 } else {
24159 None
24160 }
24161 }
24162 #[inline]
24163 fn syntax(&self) -> &SyntaxNode {
24164 &self.syntax
24165 }
24166}
24167impl AstNode for Name {
24168 #[inline]
24169 fn can_cast(kind: SyntaxKind) -> bool {
24170 kind == SyntaxKind::NAME
24171 }
24172 #[inline]
24173 fn cast(syntax: SyntaxNode) -> Option<Self> {
24174 if Self::can_cast(syntax.kind()) {
24175 Some(Self { syntax })
24176 } else {
24177 None
24178 }
24179 }
24180 #[inline]
24181 fn syntax(&self) -> &SyntaxNode {
24182 &self.syntax
24183 }
24184}
24185impl AstNode for NameRef {
24186 #[inline]
24187 fn can_cast(kind: SyntaxKind) -> bool {
24188 kind == SyntaxKind::NAME_REF
24189 }
24190 #[inline]
24191 fn cast(syntax: SyntaxNode) -> Option<Self> {
24192 if Self::can_cast(syntax.kind()) {
24193 Some(Self { syntax })
24194 } else {
24195 None
24196 }
24197 }
24198 #[inline]
24199 fn syntax(&self) -> &SyntaxNode {
24200 &self.syntax
24201 }
24202}
24203impl AstNode for NamedArg {
24204 #[inline]
24205 fn can_cast(kind: SyntaxKind) -> bool {
24206 kind == SyntaxKind::NAMED_ARG
24207 }
24208 #[inline]
24209 fn cast(syntax: SyntaxNode) -> Option<Self> {
24210 if Self::can_cast(syntax.kind()) {
24211 Some(Self { syntax })
24212 } else {
24213 None
24214 }
24215 }
24216 #[inline]
24217 fn syntax(&self) -> &SyntaxNode {
24218 &self.syntax
24219 }
24220}
24221impl AstNode for Neq {
24222 #[inline]
24223 fn can_cast(kind: SyntaxKind) -> bool {
24224 kind == SyntaxKind::NEQ
24225 }
24226 #[inline]
24227 fn cast(syntax: SyntaxNode) -> Option<Self> {
24228 if Self::can_cast(syntax.kind()) {
24229 Some(Self { syntax })
24230 } else {
24231 None
24232 }
24233 }
24234 #[inline]
24235 fn syntax(&self) -> &SyntaxNode {
24236 &self.syntax
24237 }
24238}
24239impl AstNode for Neqb {
24240 #[inline]
24241 fn can_cast(kind: SyntaxKind) -> bool {
24242 kind == SyntaxKind::NEQB
24243 }
24244 #[inline]
24245 fn cast(syntax: SyntaxNode) -> Option<Self> {
24246 if Self::can_cast(syntax.kind()) {
24247 Some(Self { syntax })
24248 } else {
24249 None
24250 }
24251 }
24252 #[inline]
24253 fn syntax(&self) -> &SyntaxNode {
24254 &self.syntax
24255 }
24256}
24257impl AstNode for NoAction {
24258 #[inline]
24259 fn can_cast(kind: SyntaxKind) -> bool {
24260 kind == SyntaxKind::NO_ACTION
24261 }
24262 #[inline]
24263 fn cast(syntax: SyntaxNode) -> Option<Self> {
24264 if Self::can_cast(syntax.kind()) {
24265 Some(Self { syntax })
24266 } else {
24267 None
24268 }
24269 }
24270 #[inline]
24271 fn syntax(&self) -> &SyntaxNode {
24272 &self.syntax
24273 }
24274}
24275impl AstNode for NoDependsOnExtension {
24276 #[inline]
24277 fn can_cast(kind: SyntaxKind) -> bool {
24278 kind == SyntaxKind::NO_DEPENDS_ON_EXTENSION
24279 }
24280 #[inline]
24281 fn cast(syntax: SyntaxNode) -> Option<Self> {
24282 if Self::can_cast(syntax.kind()) {
24283 Some(Self { syntax })
24284 } else {
24285 None
24286 }
24287 }
24288 #[inline]
24289 fn syntax(&self) -> &SyntaxNode {
24290 &self.syntax
24291 }
24292}
24293impl AstNode for NoForceRls {
24294 #[inline]
24295 fn can_cast(kind: SyntaxKind) -> bool {
24296 kind == SyntaxKind::NO_FORCE_RLS
24297 }
24298 #[inline]
24299 fn cast(syntax: SyntaxNode) -> Option<Self> {
24300 if Self::can_cast(syntax.kind()) {
24301 Some(Self { syntax })
24302 } else {
24303 None
24304 }
24305 }
24306 #[inline]
24307 fn syntax(&self) -> &SyntaxNode {
24308 &self.syntax
24309 }
24310}
24311impl AstNode for NoInherit {
24312 #[inline]
24313 fn can_cast(kind: SyntaxKind) -> bool {
24314 kind == SyntaxKind::NO_INHERIT
24315 }
24316 #[inline]
24317 fn cast(syntax: SyntaxNode) -> Option<Self> {
24318 if Self::can_cast(syntax.kind()) {
24319 Some(Self { syntax })
24320 } else {
24321 None
24322 }
24323 }
24324 #[inline]
24325 fn syntax(&self) -> &SyntaxNode {
24326 &self.syntax
24327 }
24328}
24329impl AstNode for NoInheritTable {
24330 #[inline]
24331 fn can_cast(kind: SyntaxKind) -> bool {
24332 kind == SyntaxKind::NO_INHERIT_TABLE
24333 }
24334 #[inline]
24335 fn cast(syntax: SyntaxNode) -> Option<Self> {
24336 if Self::can_cast(syntax.kind()) {
24337 Some(Self { syntax })
24338 } else {
24339 None
24340 }
24341 }
24342 #[inline]
24343 fn syntax(&self) -> &SyntaxNode {
24344 &self.syntax
24345 }
24346}
24347impl AstNode for NonStandardParam {
24348 #[inline]
24349 fn can_cast(kind: SyntaxKind) -> bool {
24350 kind == SyntaxKind::NON_STANDARD_PARAM
24351 }
24352 #[inline]
24353 fn cast(syntax: SyntaxNode) -> Option<Self> {
24354 if Self::can_cast(syntax.kind()) {
24355 Some(Self { syntax })
24356 } else {
24357 None
24358 }
24359 }
24360 #[inline]
24361 fn syntax(&self) -> &SyntaxNode {
24362 &self.syntax
24363 }
24364}
24365impl AstNode for NotDeferrable {
24366 #[inline]
24367 fn can_cast(kind: SyntaxKind) -> bool {
24368 kind == SyntaxKind::NOT_DEFERRABLE
24369 }
24370 #[inline]
24371 fn cast(syntax: SyntaxNode) -> Option<Self> {
24372 if Self::can_cast(syntax.kind()) {
24373 Some(Self { syntax })
24374 } else {
24375 None
24376 }
24377 }
24378 #[inline]
24379 fn syntax(&self) -> &SyntaxNode {
24380 &self.syntax
24381 }
24382}
24383impl AstNode for NotDeferrableConstraintOption {
24384 #[inline]
24385 fn can_cast(kind: SyntaxKind) -> bool {
24386 kind == SyntaxKind::NOT_DEFERRABLE_CONSTRAINT_OPTION
24387 }
24388 #[inline]
24389 fn cast(syntax: SyntaxNode) -> Option<Self> {
24390 if Self::can_cast(syntax.kind()) {
24391 Some(Self { syntax })
24392 } else {
24393 None
24394 }
24395 }
24396 #[inline]
24397 fn syntax(&self) -> &SyntaxNode {
24398 &self.syntax
24399 }
24400}
24401impl AstNode for NotEnforced {
24402 #[inline]
24403 fn can_cast(kind: SyntaxKind) -> bool {
24404 kind == SyntaxKind::NOT_ENFORCED
24405 }
24406 #[inline]
24407 fn cast(syntax: SyntaxNode) -> Option<Self> {
24408 if Self::can_cast(syntax.kind()) {
24409 Some(Self { syntax })
24410 } else {
24411 None
24412 }
24413 }
24414 #[inline]
24415 fn syntax(&self) -> &SyntaxNode {
24416 &self.syntax
24417 }
24418}
24419impl AstNode for NotIlike {
24420 #[inline]
24421 fn can_cast(kind: SyntaxKind) -> bool {
24422 kind == SyntaxKind::NOT_ILIKE
24423 }
24424 #[inline]
24425 fn cast(syntax: SyntaxNode) -> Option<Self> {
24426 if Self::can_cast(syntax.kind()) {
24427 Some(Self { syntax })
24428 } else {
24429 None
24430 }
24431 }
24432 #[inline]
24433 fn syntax(&self) -> &SyntaxNode {
24434 &self.syntax
24435 }
24436}
24437impl AstNode for NotIn {
24438 #[inline]
24439 fn can_cast(kind: SyntaxKind) -> bool {
24440 kind == SyntaxKind::NOT_IN
24441 }
24442 #[inline]
24443 fn cast(syntax: SyntaxNode) -> Option<Self> {
24444 if Self::can_cast(syntax.kind()) {
24445 Some(Self { syntax })
24446 } else {
24447 None
24448 }
24449 }
24450 #[inline]
24451 fn syntax(&self) -> &SyntaxNode {
24452 &self.syntax
24453 }
24454}
24455impl AstNode for NotLike {
24456 #[inline]
24457 fn can_cast(kind: SyntaxKind) -> bool {
24458 kind == SyntaxKind::NOT_LIKE
24459 }
24460 #[inline]
24461 fn cast(syntax: SyntaxNode) -> Option<Self> {
24462 if Self::can_cast(syntax.kind()) {
24463 Some(Self { syntax })
24464 } else {
24465 None
24466 }
24467 }
24468 #[inline]
24469 fn syntax(&self) -> &SyntaxNode {
24470 &self.syntax
24471 }
24472}
24473impl AstNode for NotMaterialized {
24474 #[inline]
24475 fn can_cast(kind: SyntaxKind) -> bool {
24476 kind == SyntaxKind::NOT_MATERIALIZED
24477 }
24478 #[inline]
24479 fn cast(syntax: SyntaxNode) -> Option<Self> {
24480 if Self::can_cast(syntax.kind()) {
24481 Some(Self { syntax })
24482 } else {
24483 None
24484 }
24485 }
24486 #[inline]
24487 fn syntax(&self) -> &SyntaxNode {
24488 &self.syntax
24489 }
24490}
24491impl AstNode for NotNullConstraint {
24492 #[inline]
24493 fn can_cast(kind: SyntaxKind) -> bool {
24494 kind == SyntaxKind::NOT_NULL_CONSTRAINT
24495 }
24496 #[inline]
24497 fn cast(syntax: SyntaxNode) -> Option<Self> {
24498 if Self::can_cast(syntax.kind()) {
24499 Some(Self { syntax })
24500 } else {
24501 None
24502 }
24503 }
24504 #[inline]
24505 fn syntax(&self) -> &SyntaxNode {
24506 &self.syntax
24507 }
24508}
24509impl AstNode for NotOf {
24510 #[inline]
24511 fn can_cast(kind: SyntaxKind) -> bool {
24512 kind == SyntaxKind::NOT_OF
24513 }
24514 #[inline]
24515 fn cast(syntax: SyntaxNode) -> Option<Self> {
24516 if Self::can_cast(syntax.kind()) {
24517 Some(Self { syntax })
24518 } else {
24519 None
24520 }
24521 }
24522 #[inline]
24523 fn syntax(&self) -> &SyntaxNode {
24524 &self.syntax
24525 }
24526}
24527impl AstNode for NotSimilarTo {
24528 #[inline]
24529 fn can_cast(kind: SyntaxKind) -> bool {
24530 kind == SyntaxKind::NOT_SIMILAR_TO
24531 }
24532 #[inline]
24533 fn cast(syntax: SyntaxNode) -> Option<Self> {
24534 if Self::can_cast(syntax.kind()) {
24535 Some(Self { syntax })
24536 } else {
24537 None
24538 }
24539 }
24540 #[inline]
24541 fn syntax(&self) -> &SyntaxNode {
24542 &self.syntax
24543 }
24544}
24545impl AstNode for NotValid {
24546 #[inline]
24547 fn can_cast(kind: SyntaxKind) -> bool {
24548 kind == SyntaxKind::NOT_VALID
24549 }
24550 #[inline]
24551 fn cast(syntax: SyntaxNode) -> Option<Self> {
24552 if Self::can_cast(syntax.kind()) {
24553 Some(Self { syntax })
24554 } else {
24555 None
24556 }
24557 }
24558 #[inline]
24559 fn syntax(&self) -> &SyntaxNode {
24560 &self.syntax
24561 }
24562}
24563impl AstNode for Notify {
24564 #[inline]
24565 fn can_cast(kind: SyntaxKind) -> bool {
24566 kind == SyntaxKind::NOTIFY
24567 }
24568 #[inline]
24569 fn cast(syntax: SyntaxNode) -> Option<Self> {
24570 if Self::can_cast(syntax.kind()) {
24571 Some(Self { syntax })
24572 } else {
24573 None
24574 }
24575 }
24576 #[inline]
24577 fn syntax(&self) -> &SyntaxNode {
24578 &self.syntax
24579 }
24580}
24581impl AstNode for NullConstraint {
24582 #[inline]
24583 fn can_cast(kind: SyntaxKind) -> bool {
24584 kind == SyntaxKind::NULL_CONSTRAINT
24585 }
24586 #[inline]
24587 fn cast(syntax: SyntaxNode) -> Option<Self> {
24588 if Self::can_cast(syntax.kind()) {
24589 Some(Self { syntax })
24590 } else {
24591 None
24592 }
24593 }
24594 #[inline]
24595 fn syntax(&self) -> &SyntaxNode {
24596 &self.syntax
24597 }
24598}
24599impl AstNode for NullsDistinct {
24600 #[inline]
24601 fn can_cast(kind: SyntaxKind) -> bool {
24602 kind == SyntaxKind::NULLS_DISTINCT
24603 }
24604 #[inline]
24605 fn cast(syntax: SyntaxNode) -> Option<Self> {
24606 if Self::can_cast(syntax.kind()) {
24607 Some(Self { syntax })
24608 } else {
24609 None
24610 }
24611 }
24612 #[inline]
24613 fn syntax(&self) -> &SyntaxNode {
24614 &self.syntax
24615 }
24616}
24617impl AstNode for NullsFirst {
24618 #[inline]
24619 fn can_cast(kind: SyntaxKind) -> bool {
24620 kind == SyntaxKind::NULLS_FIRST
24621 }
24622 #[inline]
24623 fn cast(syntax: SyntaxNode) -> Option<Self> {
24624 if Self::can_cast(syntax.kind()) {
24625 Some(Self { syntax })
24626 } else {
24627 None
24628 }
24629 }
24630 #[inline]
24631 fn syntax(&self) -> &SyntaxNode {
24632 &self.syntax
24633 }
24634}
24635impl AstNode for NullsLast {
24636 #[inline]
24637 fn can_cast(kind: SyntaxKind) -> bool {
24638 kind == SyntaxKind::NULLS_LAST
24639 }
24640 #[inline]
24641 fn cast(syntax: SyntaxNode) -> Option<Self> {
24642 if Self::can_cast(syntax.kind()) {
24643 Some(Self { syntax })
24644 } else {
24645 None
24646 }
24647 }
24648 #[inline]
24649 fn syntax(&self) -> &SyntaxNode {
24650 &self.syntax
24651 }
24652}
24653impl AstNode for NullsNotDistinct {
24654 #[inline]
24655 fn can_cast(kind: SyntaxKind) -> bool {
24656 kind == SyntaxKind::NULLS_NOT_DISTINCT
24657 }
24658 #[inline]
24659 fn cast(syntax: SyntaxNode) -> Option<Self> {
24660 if Self::can_cast(syntax.kind()) {
24661 Some(Self { syntax })
24662 } else {
24663 None
24664 }
24665 }
24666 #[inline]
24667 fn syntax(&self) -> &SyntaxNode {
24668 &self.syntax
24669 }
24670}
24671impl AstNode for OfType {
24672 #[inline]
24673 fn can_cast(kind: SyntaxKind) -> bool {
24674 kind == SyntaxKind::OF_TYPE
24675 }
24676 #[inline]
24677 fn cast(syntax: SyntaxNode) -> Option<Self> {
24678 if Self::can_cast(syntax.kind()) {
24679 Some(Self { syntax })
24680 } else {
24681 None
24682 }
24683 }
24684 #[inline]
24685 fn syntax(&self) -> &SyntaxNode {
24686 &self.syntax
24687 }
24688}
24689impl AstNode for OffsetClause {
24690 #[inline]
24691 fn can_cast(kind: SyntaxKind) -> bool {
24692 kind == SyntaxKind::OFFSET_CLAUSE
24693 }
24694 #[inline]
24695 fn cast(syntax: SyntaxNode) -> Option<Self> {
24696 if Self::can_cast(syntax.kind()) {
24697 Some(Self { syntax })
24698 } else {
24699 None
24700 }
24701 }
24702 #[inline]
24703 fn syntax(&self) -> &SyntaxNode {
24704 &self.syntax
24705 }
24706}
24707impl AstNode for OnClause {
24708 #[inline]
24709 fn can_cast(kind: SyntaxKind) -> bool {
24710 kind == SyntaxKind::ON_CLAUSE
24711 }
24712 #[inline]
24713 fn cast(syntax: SyntaxNode) -> Option<Self> {
24714 if Self::can_cast(syntax.kind()) {
24715 Some(Self { syntax })
24716 } else {
24717 None
24718 }
24719 }
24720 #[inline]
24721 fn syntax(&self) -> &SyntaxNode {
24722 &self.syntax
24723 }
24724}
24725impl AstNode for OnCommit {
24726 #[inline]
24727 fn can_cast(kind: SyntaxKind) -> bool {
24728 kind == SyntaxKind::ON_COMMIT
24729 }
24730 #[inline]
24731 fn cast(syntax: SyntaxNode) -> Option<Self> {
24732 if Self::can_cast(syntax.kind()) {
24733 Some(Self { syntax })
24734 } else {
24735 None
24736 }
24737 }
24738 #[inline]
24739 fn syntax(&self) -> &SyntaxNode {
24740 &self.syntax
24741 }
24742}
24743impl AstNode for OnConflictClause {
24744 #[inline]
24745 fn can_cast(kind: SyntaxKind) -> bool {
24746 kind == SyntaxKind::ON_CONFLICT_CLAUSE
24747 }
24748 #[inline]
24749 fn cast(syntax: SyntaxNode) -> Option<Self> {
24750 if Self::can_cast(syntax.kind()) {
24751 Some(Self { syntax })
24752 } else {
24753 None
24754 }
24755 }
24756 #[inline]
24757 fn syntax(&self) -> &SyntaxNode {
24758 &self.syntax
24759 }
24760}
24761impl AstNode for OnDeleteAction {
24762 #[inline]
24763 fn can_cast(kind: SyntaxKind) -> bool {
24764 kind == SyntaxKind::ON_DELETE_ACTION
24765 }
24766 #[inline]
24767 fn cast(syntax: SyntaxNode) -> Option<Self> {
24768 if Self::can_cast(syntax.kind()) {
24769 Some(Self { syntax })
24770 } else {
24771 None
24772 }
24773 }
24774 #[inline]
24775 fn syntax(&self) -> &SyntaxNode {
24776 &self.syntax
24777 }
24778}
24779impl AstNode for OnTable {
24780 #[inline]
24781 fn can_cast(kind: SyntaxKind) -> bool {
24782 kind == SyntaxKind::ON_TABLE
24783 }
24784 #[inline]
24785 fn cast(syntax: SyntaxNode) -> Option<Self> {
24786 if Self::can_cast(syntax.kind()) {
24787 Some(Self { syntax })
24788 } else {
24789 None
24790 }
24791 }
24792 #[inline]
24793 fn syntax(&self) -> &SyntaxNode {
24794 &self.syntax
24795 }
24796}
24797impl AstNode for OnUpdateAction {
24798 #[inline]
24799 fn can_cast(kind: SyntaxKind) -> bool {
24800 kind == SyntaxKind::ON_UPDATE_ACTION
24801 }
24802 #[inline]
24803 fn cast(syntax: SyntaxNode) -> Option<Self> {
24804 if Self::can_cast(syntax.kind()) {
24805 Some(Self { syntax })
24806 } else {
24807 None
24808 }
24809 }
24810 #[inline]
24811 fn syntax(&self) -> &SyntaxNode {
24812 &self.syntax
24813 }
24814}
24815impl AstNode for Op {
24816 #[inline]
24817 fn can_cast(kind: SyntaxKind) -> bool {
24818 kind == SyntaxKind::OP
24819 }
24820 #[inline]
24821 fn cast(syntax: SyntaxNode) -> Option<Self> {
24822 if Self::can_cast(syntax.kind()) {
24823 Some(Self { syntax })
24824 } else {
24825 None
24826 }
24827 }
24828 #[inline]
24829 fn syntax(&self) -> &SyntaxNode {
24830 &self.syntax
24831 }
24832}
24833impl AstNode for OpClassOption {
24834 #[inline]
24835 fn can_cast(kind: SyntaxKind) -> bool {
24836 kind == SyntaxKind::OP_CLASS_OPTION
24837 }
24838 #[inline]
24839 fn cast(syntax: SyntaxNode) -> Option<Self> {
24840 if Self::can_cast(syntax.kind()) {
24841 Some(Self { syntax })
24842 } else {
24843 None
24844 }
24845 }
24846 #[inline]
24847 fn syntax(&self) -> &SyntaxNode {
24848 &self.syntax
24849 }
24850}
24851impl AstNode for OpSig {
24852 #[inline]
24853 fn can_cast(kind: SyntaxKind) -> bool {
24854 kind == SyntaxKind::OP_SIG
24855 }
24856 #[inline]
24857 fn cast(syntax: SyntaxNode) -> Option<Self> {
24858 if Self::can_cast(syntax.kind()) {
24859 Some(Self { syntax })
24860 } else {
24861 None
24862 }
24863 }
24864 #[inline]
24865 fn syntax(&self) -> &SyntaxNode {
24866 &self.syntax
24867 }
24868}
24869impl AstNode for OpSigList {
24870 #[inline]
24871 fn can_cast(kind: SyntaxKind) -> bool {
24872 kind == SyntaxKind::OP_SIG_LIST
24873 }
24874 #[inline]
24875 fn cast(syntax: SyntaxNode) -> Option<Self> {
24876 if Self::can_cast(syntax.kind()) {
24877 Some(Self { syntax })
24878 } else {
24879 None
24880 }
24881 }
24882 #[inline]
24883 fn syntax(&self) -> &SyntaxNode {
24884 &self.syntax
24885 }
24886}
24887impl AstNode for OperatorCall {
24888 #[inline]
24889 fn can_cast(kind: SyntaxKind) -> bool {
24890 kind == SyntaxKind::OPERATOR_CALL
24891 }
24892 #[inline]
24893 fn cast(syntax: SyntaxNode) -> Option<Self> {
24894 if Self::can_cast(syntax.kind()) {
24895 Some(Self { syntax })
24896 } else {
24897 None
24898 }
24899 }
24900 #[inline]
24901 fn syntax(&self) -> &SyntaxNode {
24902 &self.syntax
24903 }
24904}
24905impl AstNode for OperatorClassOptionList {
24906 #[inline]
24907 fn can_cast(kind: SyntaxKind) -> bool {
24908 kind == SyntaxKind::OPERATOR_CLASS_OPTION_LIST
24909 }
24910 #[inline]
24911 fn cast(syntax: SyntaxNode) -> Option<Self> {
24912 if Self::can_cast(syntax.kind()) {
24913 Some(Self { syntax })
24914 } else {
24915 None
24916 }
24917 }
24918 #[inline]
24919 fn syntax(&self) -> &SyntaxNode {
24920 &self.syntax
24921 }
24922}
24923impl AstNode for OptionItem {
24924 #[inline]
24925 fn can_cast(kind: SyntaxKind) -> bool {
24926 kind == SyntaxKind::OPTION_ITEM
24927 }
24928 #[inline]
24929 fn cast(syntax: SyntaxNode) -> Option<Self> {
24930 if Self::can_cast(syntax.kind()) {
24931 Some(Self { syntax })
24932 } else {
24933 None
24934 }
24935 }
24936 #[inline]
24937 fn syntax(&self) -> &SyntaxNode {
24938 &self.syntax
24939 }
24940}
24941impl AstNode for OptionItemList {
24942 #[inline]
24943 fn can_cast(kind: SyntaxKind) -> bool {
24944 kind == SyntaxKind::OPTION_ITEM_LIST
24945 }
24946 #[inline]
24947 fn cast(syntax: SyntaxNode) -> Option<Self> {
24948 if Self::can_cast(syntax.kind()) {
24949 Some(Self { syntax })
24950 } else {
24951 None
24952 }
24953 }
24954 #[inline]
24955 fn syntax(&self) -> &SyntaxNode {
24956 &self.syntax
24957 }
24958}
24959impl AstNode for OrReplace {
24960 #[inline]
24961 fn can_cast(kind: SyntaxKind) -> bool {
24962 kind == SyntaxKind::OR_REPLACE
24963 }
24964 #[inline]
24965 fn cast(syntax: SyntaxNode) -> Option<Self> {
24966 if Self::can_cast(syntax.kind()) {
24967 Some(Self { syntax })
24968 } else {
24969 None
24970 }
24971 }
24972 #[inline]
24973 fn syntax(&self) -> &SyntaxNode {
24974 &self.syntax
24975 }
24976}
24977impl AstNode for OrderByClause {
24978 #[inline]
24979 fn can_cast(kind: SyntaxKind) -> bool {
24980 kind == SyntaxKind::ORDER_BY_CLAUSE
24981 }
24982 #[inline]
24983 fn cast(syntax: SyntaxNode) -> Option<Self> {
24984 if Self::can_cast(syntax.kind()) {
24985 Some(Self { syntax })
24986 } else {
24987 None
24988 }
24989 }
24990 #[inline]
24991 fn syntax(&self) -> &SyntaxNode {
24992 &self.syntax
24993 }
24994}
24995impl AstNode for OverClause {
24996 #[inline]
24997 fn can_cast(kind: SyntaxKind) -> bool {
24998 kind == SyntaxKind::OVER_CLAUSE
24999 }
25000 #[inline]
25001 fn cast(syntax: SyntaxNode) -> Option<Self> {
25002 if Self::can_cast(syntax.kind()) {
25003 Some(Self { syntax })
25004 } else {
25005 None
25006 }
25007 }
25008 #[inline]
25009 fn syntax(&self) -> &SyntaxNode {
25010 &self.syntax
25011 }
25012}
25013impl AstNode for OverlayFn {
25014 #[inline]
25015 fn can_cast(kind: SyntaxKind) -> bool {
25016 kind == SyntaxKind::OVERLAY_FN
25017 }
25018 #[inline]
25019 fn cast(syntax: SyntaxNode) -> Option<Self> {
25020 if Self::can_cast(syntax.kind()) {
25021 Some(Self { syntax })
25022 } else {
25023 None
25024 }
25025 }
25026 #[inline]
25027 fn syntax(&self) -> &SyntaxNode {
25028 &self.syntax
25029 }
25030}
25031impl AstNode for OwnedByRoles {
25032 #[inline]
25033 fn can_cast(kind: SyntaxKind) -> bool {
25034 kind == SyntaxKind::OWNED_BY_ROLES
25035 }
25036 #[inline]
25037 fn cast(syntax: SyntaxNode) -> Option<Self> {
25038 if Self::can_cast(syntax.kind()) {
25039 Some(Self { syntax })
25040 } else {
25041 None
25042 }
25043 }
25044 #[inline]
25045 fn syntax(&self) -> &SyntaxNode {
25046 &self.syntax
25047 }
25048}
25049impl AstNode for OwnerTo {
25050 #[inline]
25051 fn can_cast(kind: SyntaxKind) -> bool {
25052 kind == SyntaxKind::OWNER_TO
25053 }
25054 #[inline]
25055 fn cast(syntax: SyntaxNode) -> Option<Self> {
25056 if Self::can_cast(syntax.kind()) {
25057 Some(Self { syntax })
25058 } else {
25059 None
25060 }
25061 }
25062 #[inline]
25063 fn syntax(&self) -> &SyntaxNode {
25064 &self.syntax
25065 }
25066}
25067impl AstNode for ParallelFuncOption {
25068 #[inline]
25069 fn can_cast(kind: SyntaxKind) -> bool {
25070 kind == SyntaxKind::PARALLEL_FUNC_OPTION
25071 }
25072 #[inline]
25073 fn cast(syntax: SyntaxNode) -> Option<Self> {
25074 if Self::can_cast(syntax.kind()) {
25075 Some(Self { syntax })
25076 } else {
25077 None
25078 }
25079 }
25080 #[inline]
25081 fn syntax(&self) -> &SyntaxNode {
25082 &self.syntax
25083 }
25084}
25085impl AstNode for Param {
25086 #[inline]
25087 fn can_cast(kind: SyntaxKind) -> bool {
25088 kind == SyntaxKind::PARAM
25089 }
25090 #[inline]
25091 fn cast(syntax: SyntaxNode) -> Option<Self> {
25092 if Self::can_cast(syntax.kind()) {
25093 Some(Self { syntax })
25094 } else {
25095 None
25096 }
25097 }
25098 #[inline]
25099 fn syntax(&self) -> &SyntaxNode {
25100 &self.syntax
25101 }
25102}
25103impl AstNode for ParamDefault {
25104 #[inline]
25105 fn can_cast(kind: SyntaxKind) -> bool {
25106 kind == SyntaxKind::PARAM_DEFAULT
25107 }
25108 #[inline]
25109 fn cast(syntax: SyntaxNode) -> Option<Self> {
25110 if Self::can_cast(syntax.kind()) {
25111 Some(Self { syntax })
25112 } else {
25113 None
25114 }
25115 }
25116 #[inline]
25117 fn syntax(&self) -> &SyntaxNode {
25118 &self.syntax
25119 }
25120}
25121impl AstNode for ParamIn {
25122 #[inline]
25123 fn can_cast(kind: SyntaxKind) -> bool {
25124 kind == SyntaxKind::PARAM_IN
25125 }
25126 #[inline]
25127 fn cast(syntax: SyntaxNode) -> Option<Self> {
25128 if Self::can_cast(syntax.kind()) {
25129 Some(Self { syntax })
25130 } else {
25131 None
25132 }
25133 }
25134 #[inline]
25135 fn syntax(&self) -> &SyntaxNode {
25136 &self.syntax
25137 }
25138}
25139impl AstNode for ParamInOut {
25140 #[inline]
25141 fn can_cast(kind: SyntaxKind) -> bool {
25142 kind == SyntaxKind::PARAM_IN_OUT
25143 }
25144 #[inline]
25145 fn cast(syntax: SyntaxNode) -> Option<Self> {
25146 if Self::can_cast(syntax.kind()) {
25147 Some(Self { syntax })
25148 } else {
25149 None
25150 }
25151 }
25152 #[inline]
25153 fn syntax(&self) -> &SyntaxNode {
25154 &self.syntax
25155 }
25156}
25157impl AstNode for ParamList {
25158 #[inline]
25159 fn can_cast(kind: SyntaxKind) -> bool {
25160 kind == SyntaxKind::PARAM_LIST
25161 }
25162 #[inline]
25163 fn cast(syntax: SyntaxNode) -> Option<Self> {
25164 if Self::can_cast(syntax.kind()) {
25165 Some(Self { syntax })
25166 } else {
25167 None
25168 }
25169 }
25170 #[inline]
25171 fn syntax(&self) -> &SyntaxNode {
25172 &self.syntax
25173 }
25174}
25175impl AstNode for ParamOut {
25176 #[inline]
25177 fn can_cast(kind: SyntaxKind) -> bool {
25178 kind == SyntaxKind::PARAM_OUT
25179 }
25180 #[inline]
25181 fn cast(syntax: SyntaxNode) -> Option<Self> {
25182 if Self::can_cast(syntax.kind()) {
25183 Some(Self { syntax })
25184 } else {
25185 None
25186 }
25187 }
25188 #[inline]
25189 fn syntax(&self) -> &SyntaxNode {
25190 &self.syntax
25191 }
25192}
25193impl AstNode for ParamVariadic {
25194 #[inline]
25195 fn can_cast(kind: SyntaxKind) -> bool {
25196 kind == SyntaxKind::PARAM_VARIADIC
25197 }
25198 #[inline]
25199 fn cast(syntax: SyntaxNode) -> Option<Self> {
25200 if Self::can_cast(syntax.kind()) {
25201 Some(Self { syntax })
25202 } else {
25203 None
25204 }
25205 }
25206 #[inline]
25207 fn syntax(&self) -> &SyntaxNode {
25208 &self.syntax
25209 }
25210}
25211impl AstNode for ParenExpr {
25212 #[inline]
25213 fn can_cast(kind: SyntaxKind) -> bool {
25214 kind == SyntaxKind::PAREN_EXPR
25215 }
25216 #[inline]
25217 fn cast(syntax: SyntaxNode) -> Option<Self> {
25218 if Self::can_cast(syntax.kind()) {
25219 Some(Self { syntax })
25220 } else {
25221 None
25222 }
25223 }
25224 #[inline]
25225 fn syntax(&self) -> &SyntaxNode {
25226 &self.syntax
25227 }
25228}
25229impl AstNode for ParenSelect {
25230 #[inline]
25231 fn can_cast(kind: SyntaxKind) -> bool {
25232 kind == SyntaxKind::PAREN_SELECT
25233 }
25234 #[inline]
25235 fn cast(syntax: SyntaxNode) -> Option<Self> {
25236 if Self::can_cast(syntax.kind()) {
25237 Some(Self { syntax })
25238 } else {
25239 None
25240 }
25241 }
25242 #[inline]
25243 fn syntax(&self) -> &SyntaxNode {
25244 &self.syntax
25245 }
25246}
25247impl AstNode for Partition {
25248 #[inline]
25249 fn can_cast(kind: SyntaxKind) -> bool {
25250 kind == SyntaxKind::PARTITION
25251 }
25252 #[inline]
25253 fn cast(syntax: SyntaxNode) -> Option<Self> {
25254 if Self::can_cast(syntax.kind()) {
25255 Some(Self { syntax })
25256 } else {
25257 None
25258 }
25259 }
25260 #[inline]
25261 fn syntax(&self) -> &SyntaxNode {
25262 &self.syntax
25263 }
25264}
25265impl AstNode for PartitionBy {
25266 #[inline]
25267 fn can_cast(kind: SyntaxKind) -> bool {
25268 kind == SyntaxKind::PARTITION_BY
25269 }
25270 #[inline]
25271 fn cast(syntax: SyntaxNode) -> Option<Self> {
25272 if Self::can_cast(syntax.kind()) {
25273 Some(Self { syntax })
25274 } else {
25275 None
25276 }
25277 }
25278 #[inline]
25279 fn syntax(&self) -> &SyntaxNode {
25280 &self.syntax
25281 }
25282}
25283impl AstNode for PartitionDefault {
25284 #[inline]
25285 fn can_cast(kind: SyntaxKind) -> bool {
25286 kind == SyntaxKind::PARTITION_DEFAULT
25287 }
25288 #[inline]
25289 fn cast(syntax: SyntaxNode) -> Option<Self> {
25290 if Self::can_cast(syntax.kind()) {
25291 Some(Self { syntax })
25292 } else {
25293 None
25294 }
25295 }
25296 #[inline]
25297 fn syntax(&self) -> &SyntaxNode {
25298 &self.syntax
25299 }
25300}
25301impl AstNode for PartitionForValuesFrom {
25302 #[inline]
25303 fn can_cast(kind: SyntaxKind) -> bool {
25304 kind == SyntaxKind::PARTITION_FOR_VALUES_FROM
25305 }
25306 #[inline]
25307 fn cast(syntax: SyntaxNode) -> Option<Self> {
25308 if Self::can_cast(syntax.kind()) {
25309 Some(Self { syntax })
25310 } else {
25311 None
25312 }
25313 }
25314 #[inline]
25315 fn syntax(&self) -> &SyntaxNode {
25316 &self.syntax
25317 }
25318}
25319impl AstNode for PartitionForValuesIn {
25320 #[inline]
25321 fn can_cast(kind: SyntaxKind) -> bool {
25322 kind == SyntaxKind::PARTITION_FOR_VALUES_IN
25323 }
25324 #[inline]
25325 fn cast(syntax: SyntaxNode) -> Option<Self> {
25326 if Self::can_cast(syntax.kind()) {
25327 Some(Self { syntax })
25328 } else {
25329 None
25330 }
25331 }
25332 #[inline]
25333 fn syntax(&self) -> &SyntaxNode {
25334 &self.syntax
25335 }
25336}
25337impl AstNode for PartitionForValuesWith {
25338 #[inline]
25339 fn can_cast(kind: SyntaxKind) -> bool {
25340 kind == SyntaxKind::PARTITION_FOR_VALUES_WITH
25341 }
25342 #[inline]
25343 fn cast(syntax: SyntaxNode) -> Option<Self> {
25344 if Self::can_cast(syntax.kind()) {
25345 Some(Self { syntax })
25346 } else {
25347 None
25348 }
25349 }
25350 #[inline]
25351 fn syntax(&self) -> &SyntaxNode {
25352 &self.syntax
25353 }
25354}
25355impl AstNode for PartitionItem {
25356 #[inline]
25357 fn can_cast(kind: SyntaxKind) -> bool {
25358 kind == SyntaxKind::PARTITION_ITEM
25359 }
25360 #[inline]
25361 fn cast(syntax: SyntaxNode) -> Option<Self> {
25362 if Self::can_cast(syntax.kind()) {
25363 Some(Self { syntax })
25364 } else {
25365 None
25366 }
25367 }
25368 #[inline]
25369 fn syntax(&self) -> &SyntaxNode {
25370 &self.syntax
25371 }
25372}
25373impl AstNode for PartitionItemList {
25374 #[inline]
25375 fn can_cast(kind: SyntaxKind) -> bool {
25376 kind == SyntaxKind::PARTITION_ITEM_LIST
25377 }
25378 #[inline]
25379 fn cast(syntax: SyntaxNode) -> Option<Self> {
25380 if Self::can_cast(syntax.kind()) {
25381 Some(Self { syntax })
25382 } else {
25383 None
25384 }
25385 }
25386 #[inline]
25387 fn syntax(&self) -> &SyntaxNode {
25388 &self.syntax
25389 }
25390}
25391impl AstNode for PartitionList {
25392 #[inline]
25393 fn can_cast(kind: SyntaxKind) -> bool {
25394 kind == SyntaxKind::PARTITION_LIST
25395 }
25396 #[inline]
25397 fn cast(syntax: SyntaxNode) -> Option<Self> {
25398 if Self::can_cast(syntax.kind()) {
25399 Some(Self { syntax })
25400 } else {
25401 None
25402 }
25403 }
25404 #[inline]
25405 fn syntax(&self) -> &SyntaxNode {
25406 &self.syntax
25407 }
25408}
25409impl AstNode for PartitionOf {
25410 #[inline]
25411 fn can_cast(kind: SyntaxKind) -> bool {
25412 kind == SyntaxKind::PARTITION_OF
25413 }
25414 #[inline]
25415 fn cast(syntax: SyntaxNode) -> Option<Self> {
25416 if Self::can_cast(syntax.kind()) {
25417 Some(Self { syntax })
25418 } else {
25419 None
25420 }
25421 }
25422 #[inline]
25423 fn syntax(&self) -> &SyntaxNode {
25424 &self.syntax
25425 }
25426}
25427impl AstNode for Path {
25428 #[inline]
25429 fn can_cast(kind: SyntaxKind) -> bool {
25430 kind == SyntaxKind::PATH
25431 }
25432 #[inline]
25433 fn cast(syntax: SyntaxNode) -> Option<Self> {
25434 if Self::can_cast(syntax.kind()) {
25435 Some(Self { syntax })
25436 } else {
25437 None
25438 }
25439 }
25440 #[inline]
25441 fn syntax(&self) -> &SyntaxNode {
25442 &self.syntax
25443 }
25444}
25445impl AstNode for PathSegment {
25446 #[inline]
25447 fn can_cast(kind: SyntaxKind) -> bool {
25448 kind == SyntaxKind::PATH_SEGMENT
25449 }
25450 #[inline]
25451 fn cast(syntax: SyntaxNode) -> Option<Self> {
25452 if Self::can_cast(syntax.kind()) {
25453 Some(Self { syntax })
25454 } else {
25455 None
25456 }
25457 }
25458 #[inline]
25459 fn syntax(&self) -> &SyntaxNode {
25460 &self.syntax
25461 }
25462}
25463impl AstNode for PathType {
25464 #[inline]
25465 fn can_cast(kind: SyntaxKind) -> bool {
25466 kind == SyntaxKind::PATH_TYPE
25467 }
25468 #[inline]
25469 fn cast(syntax: SyntaxNode) -> Option<Self> {
25470 if Self::can_cast(syntax.kind()) {
25471 Some(Self { syntax })
25472 } else {
25473 None
25474 }
25475 }
25476 #[inline]
25477 fn syntax(&self) -> &SyntaxNode {
25478 &self.syntax
25479 }
25480}
25481impl AstNode for PercentType {
25482 #[inline]
25483 fn can_cast(kind: SyntaxKind) -> bool {
25484 kind == SyntaxKind::PERCENT_TYPE
25485 }
25486 #[inline]
25487 fn cast(syntax: SyntaxNode) -> Option<Self> {
25488 if Self::can_cast(syntax.kind()) {
25489 Some(Self { syntax })
25490 } else {
25491 None
25492 }
25493 }
25494 #[inline]
25495 fn syntax(&self) -> &SyntaxNode {
25496 &self.syntax
25497 }
25498}
25499impl AstNode for PercentTypeClause {
25500 #[inline]
25501 fn can_cast(kind: SyntaxKind) -> bool {
25502 kind == SyntaxKind::PERCENT_TYPE_CLAUSE
25503 }
25504 #[inline]
25505 fn cast(syntax: SyntaxNode) -> Option<Self> {
25506 if Self::can_cast(syntax.kind()) {
25507 Some(Self { syntax })
25508 } else {
25509 None
25510 }
25511 }
25512 #[inline]
25513 fn syntax(&self) -> &SyntaxNode {
25514 &self.syntax
25515 }
25516}
25517impl AstNode for PositionFn {
25518 #[inline]
25519 fn can_cast(kind: SyntaxKind) -> bool {
25520 kind == SyntaxKind::POSITION_FN
25521 }
25522 #[inline]
25523 fn cast(syntax: SyntaxNode) -> Option<Self> {
25524 if Self::can_cast(syntax.kind()) {
25525 Some(Self { syntax })
25526 } else {
25527 None
25528 }
25529 }
25530 #[inline]
25531 fn syntax(&self) -> &SyntaxNode {
25532 &self.syntax
25533 }
25534}
25535impl AstNode for PostfixExpr {
25536 #[inline]
25537 fn can_cast(kind: SyntaxKind) -> bool {
25538 kind == SyntaxKind::POSTFIX_EXPR
25539 }
25540 #[inline]
25541 fn cast(syntax: SyntaxNode) -> Option<Self> {
25542 if Self::can_cast(syntax.kind()) {
25543 Some(Self { syntax })
25544 } else {
25545 None
25546 }
25547 }
25548 #[inline]
25549 fn syntax(&self) -> &SyntaxNode {
25550 &self.syntax
25551 }
25552}
25553impl AstNode for PrefixExpr {
25554 #[inline]
25555 fn can_cast(kind: SyntaxKind) -> bool {
25556 kind == SyntaxKind::PREFIX_EXPR
25557 }
25558 #[inline]
25559 fn cast(syntax: SyntaxNode) -> Option<Self> {
25560 if Self::can_cast(syntax.kind()) {
25561 Some(Self { syntax })
25562 } else {
25563 None
25564 }
25565 }
25566 #[inline]
25567 fn syntax(&self) -> &SyntaxNode {
25568 &self.syntax
25569 }
25570}
25571impl AstNode for Prepare {
25572 #[inline]
25573 fn can_cast(kind: SyntaxKind) -> bool {
25574 kind == SyntaxKind::PREPARE
25575 }
25576 #[inline]
25577 fn cast(syntax: SyntaxNode) -> Option<Self> {
25578 if Self::can_cast(syntax.kind()) {
25579 Some(Self { syntax })
25580 } else {
25581 None
25582 }
25583 }
25584 #[inline]
25585 fn syntax(&self) -> &SyntaxNode {
25586 &self.syntax
25587 }
25588}
25589impl AstNode for PrepareTransaction {
25590 #[inline]
25591 fn can_cast(kind: SyntaxKind) -> bool {
25592 kind == SyntaxKind::PREPARE_TRANSACTION
25593 }
25594 #[inline]
25595 fn cast(syntax: SyntaxNode) -> Option<Self> {
25596 if Self::can_cast(syntax.kind()) {
25597 Some(Self { syntax })
25598 } else {
25599 None
25600 }
25601 }
25602 #[inline]
25603 fn syntax(&self) -> &SyntaxNode {
25604 &self.syntax
25605 }
25606}
25607impl AstNode for PreserveRows {
25608 #[inline]
25609 fn can_cast(kind: SyntaxKind) -> bool {
25610 kind == SyntaxKind::PRESERVE_ROWS
25611 }
25612 #[inline]
25613 fn cast(syntax: SyntaxNode) -> Option<Self> {
25614 if Self::can_cast(syntax.kind()) {
25615 Some(Self { syntax })
25616 } else {
25617 None
25618 }
25619 }
25620 #[inline]
25621 fn syntax(&self) -> &SyntaxNode {
25622 &self.syntax
25623 }
25624}
25625impl AstNode for PrimaryKeyConstraint {
25626 #[inline]
25627 fn can_cast(kind: SyntaxKind) -> bool {
25628 kind == SyntaxKind::PRIMARY_KEY_CONSTRAINT
25629 }
25630 #[inline]
25631 fn cast(syntax: SyntaxNode) -> Option<Self> {
25632 if Self::can_cast(syntax.kind()) {
25633 Some(Self { syntax })
25634 } else {
25635 None
25636 }
25637 }
25638 #[inline]
25639 fn syntax(&self) -> &SyntaxNode {
25640 &self.syntax
25641 }
25642}
25643impl AstNode for PrivilegeTarget {
25644 #[inline]
25645 fn can_cast(kind: SyntaxKind) -> bool {
25646 kind == SyntaxKind::PRIVILEGE_TARGET
25647 }
25648 #[inline]
25649 fn cast(syntax: SyntaxNode) -> Option<Self> {
25650 if Self::can_cast(syntax.kind()) {
25651 Some(Self { syntax })
25652 } else {
25653 None
25654 }
25655 }
25656 #[inline]
25657 fn syntax(&self) -> &SyntaxNode {
25658 &self.syntax
25659 }
25660}
25661impl AstNode for Privileges {
25662 #[inline]
25663 fn can_cast(kind: SyntaxKind) -> bool {
25664 kind == SyntaxKind::PRIVILEGES
25665 }
25666 #[inline]
25667 fn cast(syntax: SyntaxNode) -> Option<Self> {
25668 if Self::can_cast(syntax.kind()) {
25669 Some(Self { syntax })
25670 } else {
25671 None
25672 }
25673 }
25674 #[inline]
25675 fn syntax(&self) -> &SyntaxNode {
25676 &self.syntax
25677 }
25678}
25679impl AstNode for PublicationObject {
25680 #[inline]
25681 fn can_cast(kind: SyntaxKind) -> bool {
25682 kind == SyntaxKind::PUBLICATION_OBJECT
25683 }
25684 #[inline]
25685 fn cast(syntax: SyntaxNode) -> Option<Self> {
25686 if Self::can_cast(syntax.kind()) {
25687 Some(Self { syntax })
25688 } else {
25689 None
25690 }
25691 }
25692 #[inline]
25693 fn syntax(&self) -> &SyntaxNode {
25694 &self.syntax
25695 }
25696}
25697impl AstNode for ReadCommitted {
25698 #[inline]
25699 fn can_cast(kind: SyntaxKind) -> bool {
25700 kind == SyntaxKind::READ_COMMITTED
25701 }
25702 #[inline]
25703 fn cast(syntax: SyntaxNode) -> Option<Self> {
25704 if Self::can_cast(syntax.kind()) {
25705 Some(Self { syntax })
25706 } else {
25707 None
25708 }
25709 }
25710 #[inline]
25711 fn syntax(&self) -> &SyntaxNode {
25712 &self.syntax
25713 }
25714}
25715impl AstNode for ReadOnly {
25716 #[inline]
25717 fn can_cast(kind: SyntaxKind) -> bool {
25718 kind == SyntaxKind::READ_ONLY
25719 }
25720 #[inline]
25721 fn cast(syntax: SyntaxNode) -> Option<Self> {
25722 if Self::can_cast(syntax.kind()) {
25723 Some(Self { syntax })
25724 } else {
25725 None
25726 }
25727 }
25728 #[inline]
25729 fn syntax(&self) -> &SyntaxNode {
25730 &self.syntax
25731 }
25732}
25733impl AstNode for ReadUncommitted {
25734 #[inline]
25735 fn can_cast(kind: SyntaxKind) -> bool {
25736 kind == SyntaxKind::READ_UNCOMMITTED
25737 }
25738 #[inline]
25739 fn cast(syntax: SyntaxNode) -> Option<Self> {
25740 if Self::can_cast(syntax.kind()) {
25741 Some(Self { syntax })
25742 } else {
25743 None
25744 }
25745 }
25746 #[inline]
25747 fn syntax(&self) -> &SyntaxNode {
25748 &self.syntax
25749 }
25750}
25751impl AstNode for ReadWrite {
25752 #[inline]
25753 fn can_cast(kind: SyntaxKind) -> bool {
25754 kind == SyntaxKind::READ_WRITE
25755 }
25756 #[inline]
25757 fn cast(syntax: SyntaxNode) -> Option<Self> {
25758 if Self::can_cast(syntax.kind()) {
25759 Some(Self { syntax })
25760 } else {
25761 None
25762 }
25763 }
25764 #[inline]
25765 fn syntax(&self) -> &SyntaxNode {
25766 &self.syntax
25767 }
25768}
25769impl AstNode for Reassign {
25770 #[inline]
25771 fn can_cast(kind: SyntaxKind) -> bool {
25772 kind == SyntaxKind::REASSIGN
25773 }
25774 #[inline]
25775 fn cast(syntax: SyntaxNode) -> Option<Self> {
25776 if Self::can_cast(syntax.kind()) {
25777 Some(Self { syntax })
25778 } else {
25779 None
25780 }
25781 }
25782 #[inline]
25783 fn syntax(&self) -> &SyntaxNode {
25784 &self.syntax
25785 }
25786}
25787impl AstNode for ReferencesConstraint {
25788 #[inline]
25789 fn can_cast(kind: SyntaxKind) -> bool {
25790 kind == SyntaxKind::REFERENCES_CONSTRAINT
25791 }
25792 #[inline]
25793 fn cast(syntax: SyntaxNode) -> Option<Self> {
25794 if Self::can_cast(syntax.kind()) {
25795 Some(Self { syntax })
25796 } else {
25797 None
25798 }
25799 }
25800 #[inline]
25801 fn syntax(&self) -> &SyntaxNode {
25802 &self.syntax
25803 }
25804}
25805impl AstNode for Referencing {
25806 #[inline]
25807 fn can_cast(kind: SyntaxKind) -> bool {
25808 kind == SyntaxKind::REFERENCING
25809 }
25810 #[inline]
25811 fn cast(syntax: SyntaxNode) -> Option<Self> {
25812 if Self::can_cast(syntax.kind()) {
25813 Some(Self { syntax })
25814 } else {
25815 None
25816 }
25817 }
25818 #[inline]
25819 fn syntax(&self) -> &SyntaxNode {
25820 &self.syntax
25821 }
25822}
25823impl AstNode for ReferencingTable {
25824 #[inline]
25825 fn can_cast(kind: SyntaxKind) -> bool {
25826 kind == SyntaxKind::REFERENCING_TABLE
25827 }
25828 #[inline]
25829 fn cast(syntax: SyntaxNode) -> Option<Self> {
25830 if Self::can_cast(syntax.kind()) {
25831 Some(Self { syntax })
25832 } else {
25833 None
25834 }
25835 }
25836 #[inline]
25837 fn syntax(&self) -> &SyntaxNode {
25838 &self.syntax
25839 }
25840}
25841impl AstNode for Refresh {
25842 #[inline]
25843 fn can_cast(kind: SyntaxKind) -> bool {
25844 kind == SyntaxKind::REFRESH
25845 }
25846 #[inline]
25847 fn cast(syntax: SyntaxNode) -> Option<Self> {
25848 if Self::can_cast(syntax.kind()) {
25849 Some(Self { syntax })
25850 } else {
25851 None
25852 }
25853 }
25854 #[inline]
25855 fn syntax(&self) -> &SyntaxNode {
25856 &self.syntax
25857 }
25858}
25859impl AstNode for RefreshCollationVersion {
25860 #[inline]
25861 fn can_cast(kind: SyntaxKind) -> bool {
25862 kind == SyntaxKind::REFRESH_COLLATION_VERSION
25863 }
25864 #[inline]
25865 fn cast(syntax: SyntaxNode) -> Option<Self> {
25866 if Self::can_cast(syntax.kind()) {
25867 Some(Self { syntax })
25868 } else {
25869 None
25870 }
25871 }
25872 #[inline]
25873 fn syntax(&self) -> &SyntaxNode {
25874 &self.syntax
25875 }
25876}
25877impl AstNode for RefreshVersion {
25878 #[inline]
25879 fn can_cast(kind: SyntaxKind) -> bool {
25880 kind == SyntaxKind::REFRESH_VERSION
25881 }
25882 #[inline]
25883 fn cast(syntax: SyntaxNode) -> Option<Self> {
25884 if Self::can_cast(syntax.kind()) {
25885 Some(Self { syntax })
25886 } else {
25887 None
25888 }
25889 }
25890 #[inline]
25891 fn syntax(&self) -> &SyntaxNode {
25892 &self.syntax
25893 }
25894}
25895impl AstNode for Reindex {
25896 #[inline]
25897 fn can_cast(kind: SyntaxKind) -> bool {
25898 kind == SyntaxKind::REINDEX
25899 }
25900 #[inline]
25901 fn cast(syntax: SyntaxNode) -> Option<Self> {
25902 if Self::can_cast(syntax.kind()) {
25903 Some(Self { syntax })
25904 } else {
25905 None
25906 }
25907 }
25908 #[inline]
25909 fn syntax(&self) -> &SyntaxNode {
25910 &self.syntax
25911 }
25912}
25913impl AstNode for RelationName {
25914 #[inline]
25915 fn can_cast(kind: SyntaxKind) -> bool {
25916 kind == SyntaxKind::RELATION_NAME
25917 }
25918 #[inline]
25919 fn cast(syntax: SyntaxNode) -> Option<Self> {
25920 if Self::can_cast(syntax.kind()) {
25921 Some(Self { syntax })
25922 } else {
25923 None
25924 }
25925 }
25926 #[inline]
25927 fn syntax(&self) -> &SyntaxNode {
25928 &self.syntax
25929 }
25930}
25931impl AstNode for ReleaseSavepoint {
25932 #[inline]
25933 fn can_cast(kind: SyntaxKind) -> bool {
25934 kind == SyntaxKind::RELEASE_SAVEPOINT
25935 }
25936 #[inline]
25937 fn cast(syntax: SyntaxNode) -> Option<Self> {
25938 if Self::can_cast(syntax.kind()) {
25939 Some(Self { syntax })
25940 } else {
25941 None
25942 }
25943 }
25944 #[inline]
25945 fn syntax(&self) -> &SyntaxNode {
25946 &self.syntax
25947 }
25948}
25949impl AstNode for RenameColumn {
25950 #[inline]
25951 fn can_cast(kind: SyntaxKind) -> bool {
25952 kind == SyntaxKind::RENAME_COLUMN
25953 }
25954 #[inline]
25955 fn cast(syntax: SyntaxNode) -> Option<Self> {
25956 if Self::can_cast(syntax.kind()) {
25957 Some(Self { syntax })
25958 } else {
25959 None
25960 }
25961 }
25962 #[inline]
25963 fn syntax(&self) -> &SyntaxNode {
25964 &self.syntax
25965 }
25966}
25967impl AstNode for RenameConstraint {
25968 #[inline]
25969 fn can_cast(kind: SyntaxKind) -> bool {
25970 kind == SyntaxKind::RENAME_CONSTRAINT
25971 }
25972 #[inline]
25973 fn cast(syntax: SyntaxNode) -> Option<Self> {
25974 if Self::can_cast(syntax.kind()) {
25975 Some(Self { syntax })
25976 } else {
25977 None
25978 }
25979 }
25980 #[inline]
25981 fn syntax(&self) -> &SyntaxNode {
25982 &self.syntax
25983 }
25984}
25985impl AstNode for RenameTo {
25986 #[inline]
25987 fn can_cast(kind: SyntaxKind) -> bool {
25988 kind == SyntaxKind::RENAME_TO
25989 }
25990 #[inline]
25991 fn cast(syntax: SyntaxNode) -> Option<Self> {
25992 if Self::can_cast(syntax.kind()) {
25993 Some(Self { syntax })
25994 } else {
25995 None
25996 }
25997 }
25998 #[inline]
25999 fn syntax(&self) -> &SyntaxNode {
26000 &self.syntax
26001 }
26002}
26003impl AstNode for RepeatableClause {
26004 #[inline]
26005 fn can_cast(kind: SyntaxKind) -> bool {
26006 kind == SyntaxKind::REPEATABLE_CLAUSE
26007 }
26008 #[inline]
26009 fn cast(syntax: SyntaxNode) -> Option<Self> {
26010 if Self::can_cast(syntax.kind()) {
26011 Some(Self { syntax })
26012 } else {
26013 None
26014 }
26015 }
26016 #[inline]
26017 fn syntax(&self) -> &SyntaxNode {
26018 &self.syntax
26019 }
26020}
26021impl AstNode for RepeatableRead {
26022 #[inline]
26023 fn can_cast(kind: SyntaxKind) -> bool {
26024 kind == SyntaxKind::REPEATABLE_READ
26025 }
26026 #[inline]
26027 fn cast(syntax: SyntaxNode) -> Option<Self> {
26028 if Self::can_cast(syntax.kind()) {
26029 Some(Self { syntax })
26030 } else {
26031 None
26032 }
26033 }
26034 #[inline]
26035 fn syntax(&self) -> &SyntaxNode {
26036 &self.syntax
26037 }
26038}
26039impl AstNode for ReplicaIdentity {
26040 #[inline]
26041 fn can_cast(kind: SyntaxKind) -> bool {
26042 kind == SyntaxKind::REPLICA_IDENTITY
26043 }
26044 #[inline]
26045 fn cast(syntax: SyntaxNode) -> Option<Self> {
26046 if Self::can_cast(syntax.kind()) {
26047 Some(Self { syntax })
26048 } else {
26049 None
26050 }
26051 }
26052 #[inline]
26053 fn syntax(&self) -> &SyntaxNode {
26054 &self.syntax
26055 }
26056}
26057impl AstNode for Reset {
26058 #[inline]
26059 fn can_cast(kind: SyntaxKind) -> bool {
26060 kind == SyntaxKind::RESET
26061 }
26062 #[inline]
26063 fn cast(syntax: SyntaxNode) -> Option<Self> {
26064 if Self::can_cast(syntax.kind()) {
26065 Some(Self { syntax })
26066 } else {
26067 None
26068 }
26069 }
26070 #[inline]
26071 fn syntax(&self) -> &SyntaxNode {
26072 &self.syntax
26073 }
26074}
26075impl AstNode for ResetConfigParam {
26076 #[inline]
26077 fn can_cast(kind: SyntaxKind) -> bool {
26078 kind == SyntaxKind::RESET_CONFIG_PARAM
26079 }
26080 #[inline]
26081 fn cast(syntax: SyntaxNode) -> Option<Self> {
26082 if Self::can_cast(syntax.kind()) {
26083 Some(Self { syntax })
26084 } else {
26085 None
26086 }
26087 }
26088 #[inline]
26089 fn syntax(&self) -> &SyntaxNode {
26090 &self.syntax
26091 }
26092}
26093impl AstNode for ResetFuncOption {
26094 #[inline]
26095 fn can_cast(kind: SyntaxKind) -> bool {
26096 kind == SyntaxKind::RESET_FUNC_OPTION
26097 }
26098 #[inline]
26099 fn cast(syntax: SyntaxNode) -> Option<Self> {
26100 if Self::can_cast(syntax.kind()) {
26101 Some(Self { syntax })
26102 } else {
26103 None
26104 }
26105 }
26106 #[inline]
26107 fn syntax(&self) -> &SyntaxNode {
26108 &self.syntax
26109 }
26110}
26111impl AstNode for ResetOptions {
26112 #[inline]
26113 fn can_cast(kind: SyntaxKind) -> bool {
26114 kind == SyntaxKind::RESET_OPTIONS
26115 }
26116 #[inline]
26117 fn cast(syntax: SyntaxNode) -> Option<Self> {
26118 if Self::can_cast(syntax.kind()) {
26119 Some(Self { syntax })
26120 } else {
26121 None
26122 }
26123 }
26124 #[inline]
26125 fn syntax(&self) -> &SyntaxNode {
26126 &self.syntax
26127 }
26128}
26129impl AstNode for ResetSessionAuth {
26130 #[inline]
26131 fn can_cast(kind: SyntaxKind) -> bool {
26132 kind == SyntaxKind::RESET_SESSION_AUTH
26133 }
26134 #[inline]
26135 fn cast(syntax: SyntaxNode) -> Option<Self> {
26136 if Self::can_cast(syntax.kind()) {
26137 Some(Self { syntax })
26138 } else {
26139 None
26140 }
26141 }
26142 #[inline]
26143 fn syntax(&self) -> &SyntaxNode {
26144 &self.syntax
26145 }
26146}
26147impl AstNode for Restart {
26148 #[inline]
26149 fn can_cast(kind: SyntaxKind) -> bool {
26150 kind == SyntaxKind::RESTART
26151 }
26152 #[inline]
26153 fn cast(syntax: SyntaxNode) -> Option<Self> {
26154 if Self::can_cast(syntax.kind()) {
26155 Some(Self { syntax })
26156 } else {
26157 None
26158 }
26159 }
26160 #[inline]
26161 fn syntax(&self) -> &SyntaxNode {
26162 &self.syntax
26163 }
26164}
26165impl AstNode for Restrict {
26166 #[inline]
26167 fn can_cast(kind: SyntaxKind) -> bool {
26168 kind == SyntaxKind::RESTRICT
26169 }
26170 #[inline]
26171 fn cast(syntax: SyntaxNode) -> Option<Self> {
26172 if Self::can_cast(syntax.kind()) {
26173 Some(Self { syntax })
26174 } else {
26175 None
26176 }
26177 }
26178 #[inline]
26179 fn syntax(&self) -> &SyntaxNode {
26180 &self.syntax
26181 }
26182}
26183impl AstNode for RetType {
26184 #[inline]
26185 fn can_cast(kind: SyntaxKind) -> bool {
26186 kind == SyntaxKind::RET_TYPE
26187 }
26188 #[inline]
26189 fn cast(syntax: SyntaxNode) -> Option<Self> {
26190 if Self::can_cast(syntax.kind()) {
26191 Some(Self { syntax })
26192 } else {
26193 None
26194 }
26195 }
26196 #[inline]
26197 fn syntax(&self) -> &SyntaxNode {
26198 &self.syntax
26199 }
26200}
26201impl AstNode for ReturnFuncOption {
26202 #[inline]
26203 fn can_cast(kind: SyntaxKind) -> bool {
26204 kind == SyntaxKind::RETURN_FUNC_OPTION
26205 }
26206 #[inline]
26207 fn cast(syntax: SyntaxNode) -> Option<Self> {
26208 if Self::can_cast(syntax.kind()) {
26209 Some(Self { syntax })
26210 } else {
26211 None
26212 }
26213 }
26214 #[inline]
26215 fn syntax(&self) -> &SyntaxNode {
26216 &self.syntax
26217 }
26218}
26219impl AstNode for ReturningClause {
26220 #[inline]
26221 fn can_cast(kind: SyntaxKind) -> bool {
26222 kind == SyntaxKind::RETURNING_CLAUSE
26223 }
26224 #[inline]
26225 fn cast(syntax: SyntaxNode) -> Option<Self> {
26226 if Self::can_cast(syntax.kind()) {
26227 Some(Self { syntax })
26228 } else {
26229 None
26230 }
26231 }
26232 #[inline]
26233 fn syntax(&self) -> &SyntaxNode {
26234 &self.syntax
26235 }
26236}
26237impl AstNode for ReturningOption {
26238 #[inline]
26239 fn can_cast(kind: SyntaxKind) -> bool {
26240 kind == SyntaxKind::RETURNING_OPTION
26241 }
26242 #[inline]
26243 fn cast(syntax: SyntaxNode) -> Option<Self> {
26244 if Self::can_cast(syntax.kind()) {
26245 Some(Self { syntax })
26246 } else {
26247 None
26248 }
26249 }
26250 #[inline]
26251 fn syntax(&self) -> &SyntaxNode {
26252 &self.syntax
26253 }
26254}
26255impl AstNode for ReturningOptionList {
26256 #[inline]
26257 fn can_cast(kind: SyntaxKind) -> bool {
26258 kind == SyntaxKind::RETURNING_OPTION_LIST
26259 }
26260 #[inline]
26261 fn cast(syntax: SyntaxNode) -> Option<Self> {
26262 if Self::can_cast(syntax.kind()) {
26263 Some(Self { syntax })
26264 } else {
26265 None
26266 }
26267 }
26268 #[inline]
26269 fn syntax(&self) -> &SyntaxNode {
26270 &self.syntax
26271 }
26272}
26273impl AstNode for Revoke {
26274 #[inline]
26275 fn can_cast(kind: SyntaxKind) -> bool {
26276 kind == SyntaxKind::REVOKE
26277 }
26278 #[inline]
26279 fn cast(syntax: SyntaxNode) -> Option<Self> {
26280 if Self::can_cast(syntax.kind()) {
26281 Some(Self { syntax })
26282 } else {
26283 None
26284 }
26285 }
26286 #[inline]
26287 fn syntax(&self) -> &SyntaxNode {
26288 &self.syntax
26289 }
26290}
26291impl AstNode for RevokeCommand {
26292 #[inline]
26293 fn can_cast(kind: SyntaxKind) -> bool {
26294 kind == SyntaxKind::REVOKE_COMMAND
26295 }
26296 #[inline]
26297 fn cast(syntax: SyntaxNode) -> Option<Self> {
26298 if Self::can_cast(syntax.kind()) {
26299 Some(Self { syntax })
26300 } else {
26301 None
26302 }
26303 }
26304 #[inline]
26305 fn syntax(&self) -> &SyntaxNode {
26306 &self.syntax
26307 }
26308}
26309impl AstNode for RevokeCommandList {
26310 #[inline]
26311 fn can_cast(kind: SyntaxKind) -> bool {
26312 kind == SyntaxKind::REVOKE_COMMAND_LIST
26313 }
26314 #[inline]
26315 fn cast(syntax: SyntaxNode) -> Option<Self> {
26316 if Self::can_cast(syntax.kind()) {
26317 Some(Self { syntax })
26318 } else {
26319 None
26320 }
26321 }
26322 #[inline]
26323 fn syntax(&self) -> &SyntaxNode {
26324 &self.syntax
26325 }
26326}
26327impl AstNode for RevokeDefaultPrivileges {
26328 #[inline]
26329 fn can_cast(kind: SyntaxKind) -> bool {
26330 kind == SyntaxKind::REVOKE_DEFAULT_PRIVILEGES
26331 }
26332 #[inline]
26333 fn cast(syntax: SyntaxNode) -> Option<Self> {
26334 if Self::can_cast(syntax.kind()) {
26335 Some(Self { syntax })
26336 } else {
26337 None
26338 }
26339 }
26340 #[inline]
26341 fn syntax(&self) -> &SyntaxNode {
26342 &self.syntax
26343 }
26344}
26345impl AstNode for Role {
26346 #[inline]
26347 fn can_cast(kind: SyntaxKind) -> bool {
26348 kind == SyntaxKind::ROLE
26349 }
26350 #[inline]
26351 fn cast(syntax: SyntaxNode) -> Option<Self> {
26352 if Self::can_cast(syntax.kind()) {
26353 Some(Self { syntax })
26354 } else {
26355 None
26356 }
26357 }
26358 #[inline]
26359 fn syntax(&self) -> &SyntaxNode {
26360 &self.syntax
26361 }
26362}
26363impl AstNode for RoleOption {
26364 #[inline]
26365 fn can_cast(kind: SyntaxKind) -> bool {
26366 kind == SyntaxKind::ROLE_OPTION
26367 }
26368 #[inline]
26369 fn cast(syntax: SyntaxNode) -> Option<Self> {
26370 if Self::can_cast(syntax.kind()) {
26371 Some(Self { syntax })
26372 } else {
26373 None
26374 }
26375 }
26376 #[inline]
26377 fn syntax(&self) -> &SyntaxNode {
26378 &self.syntax
26379 }
26380}
26381impl AstNode for RoleOptionList {
26382 #[inline]
26383 fn can_cast(kind: SyntaxKind) -> bool {
26384 kind == SyntaxKind::ROLE_OPTION_LIST
26385 }
26386 #[inline]
26387 fn cast(syntax: SyntaxNode) -> Option<Self> {
26388 if Self::can_cast(syntax.kind()) {
26389 Some(Self { syntax })
26390 } else {
26391 None
26392 }
26393 }
26394 #[inline]
26395 fn syntax(&self) -> &SyntaxNode {
26396 &self.syntax
26397 }
26398}
26399impl AstNode for RoleRef {
26400 #[inline]
26401 fn can_cast(kind: SyntaxKind) -> bool {
26402 kind == SyntaxKind::ROLE_REF
26403 }
26404 #[inline]
26405 fn cast(syntax: SyntaxNode) -> Option<Self> {
26406 if Self::can_cast(syntax.kind()) {
26407 Some(Self { syntax })
26408 } else {
26409 None
26410 }
26411 }
26412 #[inline]
26413 fn syntax(&self) -> &SyntaxNode {
26414 &self.syntax
26415 }
26416}
26417impl AstNode for RoleRefList {
26418 #[inline]
26419 fn can_cast(kind: SyntaxKind) -> bool {
26420 kind == SyntaxKind::ROLE_REF_LIST
26421 }
26422 #[inline]
26423 fn cast(syntax: SyntaxNode) -> Option<Self> {
26424 if Self::can_cast(syntax.kind()) {
26425 Some(Self { syntax })
26426 } else {
26427 None
26428 }
26429 }
26430 #[inline]
26431 fn syntax(&self) -> &SyntaxNode {
26432 &self.syntax
26433 }
26434}
26435impl AstNode for Rollback {
26436 #[inline]
26437 fn can_cast(kind: SyntaxKind) -> bool {
26438 kind == SyntaxKind::ROLLBACK
26439 }
26440 #[inline]
26441 fn cast(syntax: SyntaxNode) -> Option<Self> {
26442 if Self::can_cast(syntax.kind()) {
26443 Some(Self { syntax })
26444 } else {
26445 None
26446 }
26447 }
26448 #[inline]
26449 fn syntax(&self) -> &SyntaxNode {
26450 &self.syntax
26451 }
26452}
26453impl AstNode for Row {
26454 #[inline]
26455 fn can_cast(kind: SyntaxKind) -> bool {
26456 kind == SyntaxKind::ROW
26457 }
26458 #[inline]
26459 fn cast(syntax: SyntaxNode) -> Option<Self> {
26460 if Self::can_cast(syntax.kind()) {
26461 Some(Self { syntax })
26462 } else {
26463 None
26464 }
26465 }
26466 #[inline]
26467 fn syntax(&self) -> &SyntaxNode {
26468 &self.syntax
26469 }
26470}
26471impl AstNode for RowList {
26472 #[inline]
26473 fn can_cast(kind: SyntaxKind) -> bool {
26474 kind == SyntaxKind::ROW_LIST
26475 }
26476 #[inline]
26477 fn cast(syntax: SyntaxNode) -> Option<Self> {
26478 if Self::can_cast(syntax.kind()) {
26479 Some(Self { syntax })
26480 } else {
26481 None
26482 }
26483 }
26484 #[inline]
26485 fn syntax(&self) -> &SyntaxNode {
26486 &self.syntax
26487 }
26488}
26489impl AstNode for RowsFuncOption {
26490 #[inline]
26491 fn can_cast(kind: SyntaxKind) -> bool {
26492 kind == SyntaxKind::ROWS_FUNC_OPTION
26493 }
26494 #[inline]
26495 fn cast(syntax: SyntaxNode) -> Option<Self> {
26496 if Self::can_cast(syntax.kind()) {
26497 Some(Self { syntax })
26498 } else {
26499 None
26500 }
26501 }
26502 #[inline]
26503 fn syntax(&self) -> &SyntaxNode {
26504 &self.syntax
26505 }
26506}
26507impl AstNode for Savepoint {
26508 #[inline]
26509 fn can_cast(kind: SyntaxKind) -> bool {
26510 kind == SyntaxKind::SAVEPOINT
26511 }
26512 #[inline]
26513 fn cast(syntax: SyntaxNode) -> Option<Self> {
26514 if Self::can_cast(syntax.kind()) {
26515 Some(Self { syntax })
26516 } else {
26517 None
26518 }
26519 }
26520 #[inline]
26521 fn syntax(&self) -> &SyntaxNode {
26522 &self.syntax
26523 }
26524}
26525impl AstNode for SecurityFuncOption {
26526 #[inline]
26527 fn can_cast(kind: SyntaxKind) -> bool {
26528 kind == SyntaxKind::SECURITY_FUNC_OPTION
26529 }
26530 #[inline]
26531 fn cast(syntax: SyntaxNode) -> Option<Self> {
26532 if Self::can_cast(syntax.kind()) {
26533 Some(Self { syntax })
26534 } else {
26535 None
26536 }
26537 }
26538 #[inline]
26539 fn syntax(&self) -> &SyntaxNode {
26540 &self.syntax
26541 }
26542}
26543impl AstNode for SecurityLabel {
26544 #[inline]
26545 fn can_cast(kind: SyntaxKind) -> bool {
26546 kind == SyntaxKind::SECURITY_LABEL
26547 }
26548 #[inline]
26549 fn cast(syntax: SyntaxNode) -> Option<Self> {
26550 if Self::can_cast(syntax.kind()) {
26551 Some(Self { syntax })
26552 } else {
26553 None
26554 }
26555 }
26556 #[inline]
26557 fn syntax(&self) -> &SyntaxNode {
26558 &self.syntax
26559 }
26560}
26561impl AstNode for Select {
26562 #[inline]
26563 fn can_cast(kind: SyntaxKind) -> bool {
26564 kind == SyntaxKind::SELECT
26565 }
26566 #[inline]
26567 fn cast(syntax: SyntaxNode) -> Option<Self> {
26568 if Self::can_cast(syntax.kind()) {
26569 Some(Self { syntax })
26570 } else {
26571 None
26572 }
26573 }
26574 #[inline]
26575 fn syntax(&self) -> &SyntaxNode {
26576 &self.syntax
26577 }
26578}
26579impl AstNode for SelectClause {
26580 #[inline]
26581 fn can_cast(kind: SyntaxKind) -> bool {
26582 kind == SyntaxKind::SELECT_CLAUSE
26583 }
26584 #[inline]
26585 fn cast(syntax: SyntaxNode) -> Option<Self> {
26586 if Self::can_cast(syntax.kind()) {
26587 Some(Self { syntax })
26588 } else {
26589 None
26590 }
26591 }
26592 #[inline]
26593 fn syntax(&self) -> &SyntaxNode {
26594 &self.syntax
26595 }
26596}
26597impl AstNode for SelectInto {
26598 #[inline]
26599 fn can_cast(kind: SyntaxKind) -> bool {
26600 kind == SyntaxKind::SELECT_INTO
26601 }
26602 #[inline]
26603 fn cast(syntax: SyntaxNode) -> Option<Self> {
26604 if Self::can_cast(syntax.kind()) {
26605 Some(Self { syntax })
26606 } else {
26607 None
26608 }
26609 }
26610 #[inline]
26611 fn syntax(&self) -> &SyntaxNode {
26612 &self.syntax
26613 }
26614}
26615impl AstNode for SequenceOption {
26616 #[inline]
26617 fn can_cast(kind: SyntaxKind) -> bool {
26618 kind == SyntaxKind::SEQUENCE_OPTION
26619 }
26620 #[inline]
26621 fn cast(syntax: SyntaxNode) -> Option<Self> {
26622 if Self::can_cast(syntax.kind()) {
26623 Some(Self { syntax })
26624 } else {
26625 None
26626 }
26627 }
26628 #[inline]
26629 fn syntax(&self) -> &SyntaxNode {
26630 &self.syntax
26631 }
26632}
26633impl AstNode for SequenceOptionList {
26634 #[inline]
26635 fn can_cast(kind: SyntaxKind) -> bool {
26636 kind == SyntaxKind::SEQUENCE_OPTION_LIST
26637 }
26638 #[inline]
26639 fn cast(syntax: SyntaxNode) -> Option<Self> {
26640 if Self::can_cast(syntax.kind()) {
26641 Some(Self { syntax })
26642 } else {
26643 None
26644 }
26645 }
26646 #[inline]
26647 fn syntax(&self) -> &SyntaxNode {
26648 &self.syntax
26649 }
26650}
26651impl AstNode for Serializable {
26652 #[inline]
26653 fn can_cast(kind: SyntaxKind) -> bool {
26654 kind == SyntaxKind::SERIALIZABLE
26655 }
26656 #[inline]
26657 fn cast(syntax: SyntaxNode) -> Option<Self> {
26658 if Self::can_cast(syntax.kind()) {
26659 Some(Self { syntax })
26660 } else {
26661 None
26662 }
26663 }
26664 #[inline]
26665 fn syntax(&self) -> &SyntaxNode {
26666 &self.syntax
26667 }
26668}
26669impl AstNode for ServerName {
26670 #[inline]
26671 fn can_cast(kind: SyntaxKind) -> bool {
26672 kind == SyntaxKind::SERVER_NAME
26673 }
26674 #[inline]
26675 fn cast(syntax: SyntaxNode) -> Option<Self> {
26676 if Self::can_cast(syntax.kind()) {
26677 Some(Self { syntax })
26678 } else {
26679 None
26680 }
26681 }
26682 #[inline]
26683 fn syntax(&self) -> &SyntaxNode {
26684 &self.syntax
26685 }
26686}
26687impl AstNode for Set {
26688 #[inline]
26689 fn can_cast(kind: SyntaxKind) -> bool {
26690 kind == SyntaxKind::SET
26691 }
26692 #[inline]
26693 fn cast(syntax: SyntaxNode) -> Option<Self> {
26694 if Self::can_cast(syntax.kind()) {
26695 Some(Self { syntax })
26696 } else {
26697 None
26698 }
26699 }
26700 #[inline]
26701 fn syntax(&self) -> &SyntaxNode {
26702 &self.syntax
26703 }
26704}
26705impl AstNode for SetAccessMethod {
26706 #[inline]
26707 fn can_cast(kind: SyntaxKind) -> bool {
26708 kind == SyntaxKind::SET_ACCESS_METHOD
26709 }
26710 #[inline]
26711 fn cast(syntax: SyntaxNode) -> Option<Self> {
26712 if Self::can_cast(syntax.kind()) {
26713 Some(Self { syntax })
26714 } else {
26715 None
26716 }
26717 }
26718 #[inline]
26719 fn syntax(&self) -> &SyntaxNode {
26720 &self.syntax
26721 }
26722}
26723impl AstNode for SetClause {
26724 #[inline]
26725 fn can_cast(kind: SyntaxKind) -> bool {
26726 kind == SyntaxKind::SET_CLAUSE
26727 }
26728 #[inline]
26729 fn cast(syntax: SyntaxNode) -> Option<Self> {
26730 if Self::can_cast(syntax.kind()) {
26731 Some(Self { syntax })
26732 } else {
26733 None
26734 }
26735 }
26736 #[inline]
26737 fn syntax(&self) -> &SyntaxNode {
26738 &self.syntax
26739 }
26740}
26741impl AstNode for SetColumnList {
26742 #[inline]
26743 fn can_cast(kind: SyntaxKind) -> bool {
26744 kind == SyntaxKind::SET_COLUMN_LIST
26745 }
26746 #[inline]
26747 fn cast(syntax: SyntaxNode) -> Option<Self> {
26748 if Self::can_cast(syntax.kind()) {
26749 Some(Self { syntax })
26750 } else {
26751 None
26752 }
26753 }
26754 #[inline]
26755 fn syntax(&self) -> &SyntaxNode {
26756 &self.syntax
26757 }
26758}
26759impl AstNode for SetCompression {
26760 #[inline]
26761 fn can_cast(kind: SyntaxKind) -> bool {
26762 kind == SyntaxKind::SET_COMPRESSION
26763 }
26764 #[inline]
26765 fn cast(syntax: SyntaxNode) -> Option<Self> {
26766 if Self::can_cast(syntax.kind()) {
26767 Some(Self { syntax })
26768 } else {
26769 None
26770 }
26771 }
26772 #[inline]
26773 fn syntax(&self) -> &SyntaxNode {
26774 &self.syntax
26775 }
26776}
26777impl AstNode for SetConfigParam {
26778 #[inline]
26779 fn can_cast(kind: SyntaxKind) -> bool {
26780 kind == SyntaxKind::SET_CONFIG_PARAM
26781 }
26782 #[inline]
26783 fn cast(syntax: SyntaxNode) -> Option<Self> {
26784 if Self::can_cast(syntax.kind()) {
26785 Some(Self { syntax })
26786 } else {
26787 None
26788 }
26789 }
26790 #[inline]
26791 fn syntax(&self) -> &SyntaxNode {
26792 &self.syntax
26793 }
26794}
26795impl AstNode for SetConstraints {
26796 #[inline]
26797 fn can_cast(kind: SyntaxKind) -> bool {
26798 kind == SyntaxKind::SET_CONSTRAINTS
26799 }
26800 #[inline]
26801 fn cast(syntax: SyntaxNode) -> Option<Self> {
26802 if Self::can_cast(syntax.kind()) {
26803 Some(Self { syntax })
26804 } else {
26805 None
26806 }
26807 }
26808 #[inline]
26809 fn syntax(&self) -> &SyntaxNode {
26810 &self.syntax
26811 }
26812}
26813impl AstNode for SetDefault {
26814 #[inline]
26815 fn can_cast(kind: SyntaxKind) -> bool {
26816 kind == SyntaxKind::SET_DEFAULT
26817 }
26818 #[inline]
26819 fn cast(syntax: SyntaxNode) -> Option<Self> {
26820 if Self::can_cast(syntax.kind()) {
26821 Some(Self { syntax })
26822 } else {
26823 None
26824 }
26825 }
26826 #[inline]
26827 fn syntax(&self) -> &SyntaxNode {
26828 &self.syntax
26829 }
26830}
26831impl AstNode for SetDefaultColumns {
26832 #[inline]
26833 fn can_cast(kind: SyntaxKind) -> bool {
26834 kind == SyntaxKind::SET_DEFAULT_COLUMNS
26835 }
26836 #[inline]
26837 fn cast(syntax: SyntaxNode) -> Option<Self> {
26838 if Self::can_cast(syntax.kind()) {
26839 Some(Self { syntax })
26840 } else {
26841 None
26842 }
26843 }
26844 #[inline]
26845 fn syntax(&self) -> &SyntaxNode {
26846 &self.syntax
26847 }
26848}
26849impl AstNode for SetExpr {
26850 #[inline]
26851 fn can_cast(kind: SyntaxKind) -> bool {
26852 kind == SyntaxKind::SET_EXPR
26853 }
26854 #[inline]
26855 fn cast(syntax: SyntaxNode) -> Option<Self> {
26856 if Self::can_cast(syntax.kind()) {
26857 Some(Self { syntax })
26858 } else {
26859 None
26860 }
26861 }
26862 #[inline]
26863 fn syntax(&self) -> &SyntaxNode {
26864 &self.syntax
26865 }
26866}
26867impl AstNode for SetExprList {
26868 #[inline]
26869 fn can_cast(kind: SyntaxKind) -> bool {
26870 kind == SyntaxKind::SET_EXPR_LIST
26871 }
26872 #[inline]
26873 fn cast(syntax: SyntaxNode) -> Option<Self> {
26874 if Self::can_cast(syntax.kind()) {
26875 Some(Self { syntax })
26876 } else {
26877 None
26878 }
26879 }
26880 #[inline]
26881 fn syntax(&self) -> &SyntaxNode {
26882 &self.syntax
26883 }
26884}
26885impl AstNode for SetExpression {
26886 #[inline]
26887 fn can_cast(kind: SyntaxKind) -> bool {
26888 kind == SyntaxKind::SET_EXPRESSION
26889 }
26890 #[inline]
26891 fn cast(syntax: SyntaxNode) -> Option<Self> {
26892 if Self::can_cast(syntax.kind()) {
26893 Some(Self { syntax })
26894 } else {
26895 None
26896 }
26897 }
26898 #[inline]
26899 fn syntax(&self) -> &SyntaxNode {
26900 &self.syntax
26901 }
26902}
26903impl AstNode for SetFuncOption {
26904 #[inline]
26905 fn can_cast(kind: SyntaxKind) -> bool {
26906 kind == SyntaxKind::SET_FUNC_OPTION
26907 }
26908 #[inline]
26909 fn cast(syntax: SyntaxNode) -> Option<Self> {
26910 if Self::can_cast(syntax.kind()) {
26911 Some(Self { syntax })
26912 } else {
26913 None
26914 }
26915 }
26916 #[inline]
26917 fn syntax(&self) -> &SyntaxNode {
26918 &self.syntax
26919 }
26920}
26921impl AstNode for SetGenerated {
26922 #[inline]
26923 fn can_cast(kind: SyntaxKind) -> bool {
26924 kind == SyntaxKind::SET_GENERATED
26925 }
26926 #[inline]
26927 fn cast(syntax: SyntaxNode) -> Option<Self> {
26928 if Self::can_cast(syntax.kind()) {
26929 Some(Self { syntax })
26930 } else {
26931 None
26932 }
26933 }
26934 #[inline]
26935 fn syntax(&self) -> &SyntaxNode {
26936 &self.syntax
26937 }
26938}
26939impl AstNode for SetGeneratedOptions {
26940 #[inline]
26941 fn can_cast(kind: SyntaxKind) -> bool {
26942 kind == SyntaxKind::SET_GENERATED_OPTIONS
26943 }
26944 #[inline]
26945 fn cast(syntax: SyntaxNode) -> Option<Self> {
26946 if Self::can_cast(syntax.kind()) {
26947 Some(Self { syntax })
26948 } else {
26949 None
26950 }
26951 }
26952 #[inline]
26953 fn syntax(&self) -> &SyntaxNode {
26954 &self.syntax
26955 }
26956}
26957impl AstNode for SetLogged {
26958 #[inline]
26959 fn can_cast(kind: SyntaxKind) -> bool {
26960 kind == SyntaxKind::SET_LOGGED
26961 }
26962 #[inline]
26963 fn cast(syntax: SyntaxNode) -> Option<Self> {
26964 if Self::can_cast(syntax.kind()) {
26965 Some(Self { syntax })
26966 } else {
26967 None
26968 }
26969 }
26970 #[inline]
26971 fn syntax(&self) -> &SyntaxNode {
26972 &self.syntax
26973 }
26974}
26975impl AstNode for SetMultipleColumns {
26976 #[inline]
26977 fn can_cast(kind: SyntaxKind) -> bool {
26978 kind == SyntaxKind::SET_MULTIPLE_COLUMNS
26979 }
26980 #[inline]
26981 fn cast(syntax: SyntaxNode) -> Option<Self> {
26982 if Self::can_cast(syntax.kind()) {
26983 Some(Self { syntax })
26984 } else {
26985 None
26986 }
26987 }
26988 #[inline]
26989 fn syntax(&self) -> &SyntaxNode {
26990 &self.syntax
26991 }
26992}
26993impl AstNode for SetNotNull {
26994 #[inline]
26995 fn can_cast(kind: SyntaxKind) -> bool {
26996 kind == SyntaxKind::SET_NOT_NULL
26997 }
26998 #[inline]
26999 fn cast(syntax: SyntaxNode) -> Option<Self> {
27000 if Self::can_cast(syntax.kind()) {
27001 Some(Self { syntax })
27002 } else {
27003 None
27004 }
27005 }
27006 #[inline]
27007 fn syntax(&self) -> &SyntaxNode {
27008 &self.syntax
27009 }
27010}
27011impl AstNode for SetNullColumns {
27012 #[inline]
27013 fn can_cast(kind: SyntaxKind) -> bool {
27014 kind == SyntaxKind::SET_NULL_COLUMNS
27015 }
27016 #[inline]
27017 fn cast(syntax: SyntaxNode) -> Option<Self> {
27018 if Self::can_cast(syntax.kind()) {
27019 Some(Self { syntax })
27020 } else {
27021 None
27022 }
27023 }
27024 #[inline]
27025 fn syntax(&self) -> &SyntaxNode {
27026 &self.syntax
27027 }
27028}
27029impl AstNode for SetOptions {
27030 #[inline]
27031 fn can_cast(kind: SyntaxKind) -> bool {
27032 kind == SyntaxKind::SET_OPTIONS
27033 }
27034 #[inline]
27035 fn cast(syntax: SyntaxNode) -> Option<Self> {
27036 if Self::can_cast(syntax.kind()) {
27037 Some(Self { syntax })
27038 } else {
27039 None
27040 }
27041 }
27042 #[inline]
27043 fn syntax(&self) -> &SyntaxNode {
27044 &self.syntax
27045 }
27046}
27047impl AstNode for SetOptionsList {
27048 #[inline]
27049 fn can_cast(kind: SyntaxKind) -> bool {
27050 kind == SyntaxKind::SET_OPTIONS_LIST
27051 }
27052 #[inline]
27053 fn cast(syntax: SyntaxNode) -> Option<Self> {
27054 if Self::can_cast(syntax.kind()) {
27055 Some(Self { syntax })
27056 } else {
27057 None
27058 }
27059 }
27060 #[inline]
27061 fn syntax(&self) -> &SyntaxNode {
27062 &self.syntax
27063 }
27064}
27065impl AstNode for SetRole {
27066 #[inline]
27067 fn can_cast(kind: SyntaxKind) -> bool {
27068 kind == SyntaxKind::SET_ROLE
27069 }
27070 #[inline]
27071 fn cast(syntax: SyntaxNode) -> Option<Self> {
27072 if Self::can_cast(syntax.kind()) {
27073 Some(Self { syntax })
27074 } else {
27075 None
27076 }
27077 }
27078 #[inline]
27079 fn syntax(&self) -> &SyntaxNode {
27080 &self.syntax
27081 }
27082}
27083impl AstNode for SetSchema {
27084 #[inline]
27085 fn can_cast(kind: SyntaxKind) -> bool {
27086 kind == SyntaxKind::SET_SCHEMA
27087 }
27088 #[inline]
27089 fn cast(syntax: SyntaxNode) -> Option<Self> {
27090 if Self::can_cast(syntax.kind()) {
27091 Some(Self { syntax })
27092 } else {
27093 None
27094 }
27095 }
27096 #[inline]
27097 fn syntax(&self) -> &SyntaxNode {
27098 &self.syntax
27099 }
27100}
27101impl AstNode for SetSequenceOption {
27102 #[inline]
27103 fn can_cast(kind: SyntaxKind) -> bool {
27104 kind == SyntaxKind::SET_SEQUENCE_OPTION
27105 }
27106 #[inline]
27107 fn cast(syntax: SyntaxNode) -> Option<Self> {
27108 if Self::can_cast(syntax.kind()) {
27109 Some(Self { syntax })
27110 } else {
27111 None
27112 }
27113 }
27114 #[inline]
27115 fn syntax(&self) -> &SyntaxNode {
27116 &self.syntax
27117 }
27118}
27119impl AstNode for SetSessionAuth {
27120 #[inline]
27121 fn can_cast(kind: SyntaxKind) -> bool {
27122 kind == SyntaxKind::SET_SESSION_AUTH
27123 }
27124 #[inline]
27125 fn cast(syntax: SyntaxNode) -> Option<Self> {
27126 if Self::can_cast(syntax.kind()) {
27127 Some(Self { syntax })
27128 } else {
27129 None
27130 }
27131 }
27132 #[inline]
27133 fn syntax(&self) -> &SyntaxNode {
27134 &self.syntax
27135 }
27136}
27137impl AstNode for SetSingleColumn {
27138 #[inline]
27139 fn can_cast(kind: SyntaxKind) -> bool {
27140 kind == SyntaxKind::SET_SINGLE_COLUMN
27141 }
27142 #[inline]
27143 fn cast(syntax: SyntaxNode) -> Option<Self> {
27144 if Self::can_cast(syntax.kind()) {
27145 Some(Self { syntax })
27146 } else {
27147 None
27148 }
27149 }
27150 #[inline]
27151 fn syntax(&self) -> &SyntaxNode {
27152 &self.syntax
27153 }
27154}
27155impl AstNode for SetStatistics {
27156 #[inline]
27157 fn can_cast(kind: SyntaxKind) -> bool {
27158 kind == SyntaxKind::SET_STATISTICS
27159 }
27160 #[inline]
27161 fn cast(syntax: SyntaxNode) -> Option<Self> {
27162 if Self::can_cast(syntax.kind()) {
27163 Some(Self { syntax })
27164 } else {
27165 None
27166 }
27167 }
27168 #[inline]
27169 fn syntax(&self) -> &SyntaxNode {
27170 &self.syntax
27171 }
27172}
27173impl AstNode for SetStorage {
27174 #[inline]
27175 fn can_cast(kind: SyntaxKind) -> bool {
27176 kind == SyntaxKind::SET_STORAGE
27177 }
27178 #[inline]
27179 fn cast(syntax: SyntaxNode) -> Option<Self> {
27180 if Self::can_cast(syntax.kind()) {
27181 Some(Self { syntax })
27182 } else {
27183 None
27184 }
27185 }
27186 #[inline]
27187 fn syntax(&self) -> &SyntaxNode {
27188 &self.syntax
27189 }
27190}
27191impl AstNode for SetTablespace {
27192 #[inline]
27193 fn can_cast(kind: SyntaxKind) -> bool {
27194 kind == SyntaxKind::SET_TABLESPACE
27195 }
27196 #[inline]
27197 fn cast(syntax: SyntaxNode) -> Option<Self> {
27198 if Self::can_cast(syntax.kind()) {
27199 Some(Self { syntax })
27200 } else {
27201 None
27202 }
27203 }
27204 #[inline]
27205 fn syntax(&self) -> &SyntaxNode {
27206 &self.syntax
27207 }
27208}
27209impl AstNode for SetTransaction {
27210 #[inline]
27211 fn can_cast(kind: SyntaxKind) -> bool {
27212 kind == SyntaxKind::SET_TRANSACTION
27213 }
27214 #[inline]
27215 fn cast(syntax: SyntaxNode) -> Option<Self> {
27216 if Self::can_cast(syntax.kind()) {
27217 Some(Self { syntax })
27218 } else {
27219 None
27220 }
27221 }
27222 #[inline]
27223 fn syntax(&self) -> &SyntaxNode {
27224 &self.syntax
27225 }
27226}
27227impl AstNode for SetType {
27228 #[inline]
27229 fn can_cast(kind: SyntaxKind) -> bool {
27230 kind == SyntaxKind::SET_TYPE
27231 }
27232 #[inline]
27233 fn cast(syntax: SyntaxNode) -> Option<Self> {
27234 if Self::can_cast(syntax.kind()) {
27235 Some(Self { syntax })
27236 } else {
27237 None
27238 }
27239 }
27240 #[inline]
27241 fn syntax(&self) -> &SyntaxNode {
27242 &self.syntax
27243 }
27244}
27245impl AstNode for SetUnlogged {
27246 #[inline]
27247 fn can_cast(kind: SyntaxKind) -> bool {
27248 kind == SyntaxKind::SET_UNLOGGED
27249 }
27250 #[inline]
27251 fn cast(syntax: SyntaxNode) -> Option<Self> {
27252 if Self::can_cast(syntax.kind()) {
27253 Some(Self { syntax })
27254 } else {
27255 None
27256 }
27257 }
27258 #[inline]
27259 fn syntax(&self) -> &SyntaxNode {
27260 &self.syntax
27261 }
27262}
27263impl AstNode for SetWithoutCluster {
27264 #[inline]
27265 fn can_cast(kind: SyntaxKind) -> bool {
27266 kind == SyntaxKind::SET_WITHOUT_CLUSTER
27267 }
27268 #[inline]
27269 fn cast(syntax: SyntaxNode) -> Option<Self> {
27270 if Self::can_cast(syntax.kind()) {
27271 Some(Self { syntax })
27272 } else {
27273 None
27274 }
27275 }
27276 #[inline]
27277 fn syntax(&self) -> &SyntaxNode {
27278 &self.syntax
27279 }
27280}
27281impl AstNode for SetWithoutOids {
27282 #[inline]
27283 fn can_cast(kind: SyntaxKind) -> bool {
27284 kind == SyntaxKind::SET_WITHOUT_OIDS
27285 }
27286 #[inline]
27287 fn cast(syntax: SyntaxNode) -> Option<Self> {
27288 if Self::can_cast(syntax.kind()) {
27289 Some(Self { syntax })
27290 } else {
27291 None
27292 }
27293 }
27294 #[inline]
27295 fn syntax(&self) -> &SyntaxNode {
27296 &self.syntax
27297 }
27298}
27299impl AstNode for Show {
27300 #[inline]
27301 fn can_cast(kind: SyntaxKind) -> bool {
27302 kind == SyntaxKind::SHOW
27303 }
27304 #[inline]
27305 fn cast(syntax: SyntaxNode) -> Option<Self> {
27306 if Self::can_cast(syntax.kind()) {
27307 Some(Self { syntax })
27308 } else {
27309 None
27310 }
27311 }
27312 #[inline]
27313 fn syntax(&self) -> &SyntaxNode {
27314 &self.syntax
27315 }
27316}
27317impl AstNode for SimilarTo {
27318 #[inline]
27319 fn can_cast(kind: SyntaxKind) -> bool {
27320 kind == SyntaxKind::SIMILAR_TO
27321 }
27322 #[inline]
27323 fn cast(syntax: SyntaxNode) -> Option<Self> {
27324 if Self::can_cast(syntax.kind()) {
27325 Some(Self { syntax })
27326 } else {
27327 None
27328 }
27329 }
27330 #[inline]
27331 fn syntax(&self) -> &SyntaxNode {
27332 &self.syntax
27333 }
27334}
27335impl AstNode for SliceExpr {
27336 #[inline]
27337 fn can_cast(kind: SyntaxKind) -> bool {
27338 kind == SyntaxKind::SLICE_EXPR
27339 }
27340 #[inline]
27341 fn cast(syntax: SyntaxNode) -> Option<Self> {
27342 if Self::can_cast(syntax.kind()) {
27343 Some(Self { syntax })
27344 } else {
27345 None
27346 }
27347 }
27348 #[inline]
27349 fn syntax(&self) -> &SyntaxNode {
27350 &self.syntax
27351 }
27352}
27353impl AstNode for SomeFn {
27354 #[inline]
27355 fn can_cast(kind: SyntaxKind) -> bool {
27356 kind == SyntaxKind::SOME_FN
27357 }
27358 #[inline]
27359 fn cast(syntax: SyntaxNode) -> Option<Self> {
27360 if Self::can_cast(syntax.kind()) {
27361 Some(Self { syntax })
27362 } else {
27363 None
27364 }
27365 }
27366 #[inline]
27367 fn syntax(&self) -> &SyntaxNode {
27368 &self.syntax
27369 }
27370}
27371impl AstNode for SortAsc {
27372 #[inline]
27373 fn can_cast(kind: SyntaxKind) -> bool {
27374 kind == SyntaxKind::SORT_ASC
27375 }
27376 #[inline]
27377 fn cast(syntax: SyntaxNode) -> Option<Self> {
27378 if Self::can_cast(syntax.kind()) {
27379 Some(Self { syntax })
27380 } else {
27381 None
27382 }
27383 }
27384 #[inline]
27385 fn syntax(&self) -> &SyntaxNode {
27386 &self.syntax
27387 }
27388}
27389impl AstNode for SortBy {
27390 #[inline]
27391 fn can_cast(kind: SyntaxKind) -> bool {
27392 kind == SyntaxKind::SORT_BY
27393 }
27394 #[inline]
27395 fn cast(syntax: SyntaxNode) -> Option<Self> {
27396 if Self::can_cast(syntax.kind()) {
27397 Some(Self { syntax })
27398 } else {
27399 None
27400 }
27401 }
27402 #[inline]
27403 fn syntax(&self) -> &SyntaxNode {
27404 &self.syntax
27405 }
27406}
27407impl AstNode for SortByList {
27408 #[inline]
27409 fn can_cast(kind: SyntaxKind) -> bool {
27410 kind == SyntaxKind::SORT_BY_LIST
27411 }
27412 #[inline]
27413 fn cast(syntax: SyntaxNode) -> Option<Self> {
27414 if Self::can_cast(syntax.kind()) {
27415 Some(Self { syntax })
27416 } else {
27417 None
27418 }
27419 }
27420 #[inline]
27421 fn syntax(&self) -> &SyntaxNode {
27422 &self.syntax
27423 }
27424}
27425impl AstNode for SortDesc {
27426 #[inline]
27427 fn can_cast(kind: SyntaxKind) -> bool {
27428 kind == SyntaxKind::SORT_DESC
27429 }
27430 #[inline]
27431 fn cast(syntax: SyntaxNode) -> Option<Self> {
27432 if Self::can_cast(syntax.kind()) {
27433 Some(Self { syntax })
27434 } else {
27435 None
27436 }
27437 }
27438 #[inline]
27439 fn syntax(&self) -> &SyntaxNode {
27440 &self.syntax
27441 }
27442}
27443impl AstNode for SortUsing {
27444 #[inline]
27445 fn can_cast(kind: SyntaxKind) -> bool {
27446 kind == SyntaxKind::SORT_USING
27447 }
27448 #[inline]
27449 fn cast(syntax: SyntaxNode) -> Option<Self> {
27450 if Self::can_cast(syntax.kind()) {
27451 Some(Self { syntax })
27452 } else {
27453 None
27454 }
27455 }
27456 #[inline]
27457 fn syntax(&self) -> &SyntaxNode {
27458 &self.syntax
27459 }
27460}
27461impl AstNode for SourceFile {
27462 #[inline]
27463 fn can_cast(kind: SyntaxKind) -> bool {
27464 kind == SyntaxKind::SOURCE_FILE
27465 }
27466 #[inline]
27467 fn cast(syntax: SyntaxNode) -> Option<Self> {
27468 if Self::can_cast(syntax.kind()) {
27469 Some(Self { syntax })
27470 } else {
27471 None
27472 }
27473 }
27474 #[inline]
27475 fn syntax(&self) -> &SyntaxNode {
27476 &self.syntax
27477 }
27478}
27479impl AstNode for SplitPartition {
27480 #[inline]
27481 fn can_cast(kind: SyntaxKind) -> bool {
27482 kind == SyntaxKind::SPLIT_PARTITION
27483 }
27484 #[inline]
27485 fn cast(syntax: SyntaxNode) -> Option<Self> {
27486 if Self::can_cast(syntax.kind()) {
27487 Some(Self { syntax })
27488 } else {
27489 None
27490 }
27491 }
27492 #[inline]
27493 fn syntax(&self) -> &SyntaxNode {
27494 &self.syntax
27495 }
27496}
27497impl AstNode for Storage {
27498 #[inline]
27499 fn can_cast(kind: SyntaxKind) -> bool {
27500 kind == SyntaxKind::STORAGE
27501 }
27502 #[inline]
27503 fn cast(syntax: SyntaxNode) -> Option<Self> {
27504 if Self::can_cast(syntax.kind()) {
27505 Some(Self { syntax })
27506 } else {
27507 None
27508 }
27509 }
27510 #[inline]
27511 fn syntax(&self) -> &SyntaxNode {
27512 &self.syntax
27513 }
27514}
27515impl AstNode for StrictFuncOption {
27516 #[inline]
27517 fn can_cast(kind: SyntaxKind) -> bool {
27518 kind == SyntaxKind::STRICT_FUNC_OPTION
27519 }
27520 #[inline]
27521 fn cast(syntax: SyntaxNode) -> Option<Self> {
27522 if Self::can_cast(syntax.kind()) {
27523 Some(Self { syntax })
27524 } else {
27525 None
27526 }
27527 }
27528 #[inline]
27529 fn syntax(&self) -> &SyntaxNode {
27530 &self.syntax
27531 }
27532}
27533impl AstNode for SubstringFn {
27534 #[inline]
27535 fn can_cast(kind: SyntaxKind) -> bool {
27536 kind == SyntaxKind::SUBSTRING_FN
27537 }
27538 #[inline]
27539 fn cast(syntax: SyntaxNode) -> Option<Self> {
27540 if Self::can_cast(syntax.kind()) {
27541 Some(Self { syntax })
27542 } else {
27543 None
27544 }
27545 }
27546 #[inline]
27547 fn syntax(&self) -> &SyntaxNode {
27548 &self.syntax
27549 }
27550}
27551impl AstNode for SupportFuncOption {
27552 #[inline]
27553 fn can_cast(kind: SyntaxKind) -> bool {
27554 kind == SyntaxKind::SUPPORT_FUNC_OPTION
27555 }
27556 #[inline]
27557 fn cast(syntax: SyntaxNode) -> Option<Self> {
27558 if Self::can_cast(syntax.kind()) {
27559 Some(Self { syntax })
27560 } else {
27561 None
27562 }
27563 }
27564 #[inline]
27565 fn syntax(&self) -> &SyntaxNode {
27566 &self.syntax
27567 }
27568}
27569impl AstNode for Table {
27570 #[inline]
27571 fn can_cast(kind: SyntaxKind) -> bool {
27572 kind == SyntaxKind::TABLE
27573 }
27574 #[inline]
27575 fn cast(syntax: SyntaxNode) -> Option<Self> {
27576 if Self::can_cast(syntax.kind()) {
27577 Some(Self { syntax })
27578 } else {
27579 None
27580 }
27581 }
27582 #[inline]
27583 fn syntax(&self) -> &SyntaxNode {
27584 &self.syntax
27585 }
27586}
27587impl AstNode for TableAndColumns {
27588 #[inline]
27589 fn can_cast(kind: SyntaxKind) -> bool {
27590 kind == SyntaxKind::TABLE_AND_COLUMNS
27591 }
27592 #[inline]
27593 fn cast(syntax: SyntaxNode) -> Option<Self> {
27594 if Self::can_cast(syntax.kind()) {
27595 Some(Self { syntax })
27596 } else {
27597 None
27598 }
27599 }
27600 #[inline]
27601 fn syntax(&self) -> &SyntaxNode {
27602 &self.syntax
27603 }
27604}
27605impl AstNode for TableAndColumnsList {
27606 #[inline]
27607 fn can_cast(kind: SyntaxKind) -> bool {
27608 kind == SyntaxKind::TABLE_AND_COLUMNS_LIST
27609 }
27610 #[inline]
27611 fn cast(syntax: SyntaxNode) -> Option<Self> {
27612 if Self::can_cast(syntax.kind()) {
27613 Some(Self { syntax })
27614 } else {
27615 None
27616 }
27617 }
27618 #[inline]
27619 fn syntax(&self) -> &SyntaxNode {
27620 &self.syntax
27621 }
27622}
27623impl AstNode for TableArgList {
27624 #[inline]
27625 fn can_cast(kind: SyntaxKind) -> bool {
27626 kind == SyntaxKind::TABLE_ARG_LIST
27627 }
27628 #[inline]
27629 fn cast(syntax: SyntaxNode) -> Option<Self> {
27630 if Self::can_cast(syntax.kind()) {
27631 Some(Self { syntax })
27632 } else {
27633 None
27634 }
27635 }
27636 #[inline]
27637 fn syntax(&self) -> &SyntaxNode {
27638 &self.syntax
27639 }
27640}
27641impl AstNode for TableList {
27642 #[inline]
27643 fn can_cast(kind: SyntaxKind) -> bool {
27644 kind == SyntaxKind::TABLE_LIST
27645 }
27646 #[inline]
27647 fn cast(syntax: SyntaxNode) -> Option<Self> {
27648 if Self::can_cast(syntax.kind()) {
27649 Some(Self { syntax })
27650 } else {
27651 None
27652 }
27653 }
27654 #[inline]
27655 fn syntax(&self) -> &SyntaxNode {
27656 &self.syntax
27657 }
27658}
27659impl AstNode for TablesampleClause {
27660 #[inline]
27661 fn can_cast(kind: SyntaxKind) -> bool {
27662 kind == SyntaxKind::TABLESAMPLE_CLAUSE
27663 }
27664 #[inline]
27665 fn cast(syntax: SyntaxNode) -> Option<Self> {
27666 if Self::can_cast(syntax.kind()) {
27667 Some(Self { syntax })
27668 } else {
27669 None
27670 }
27671 }
27672 #[inline]
27673 fn syntax(&self) -> &SyntaxNode {
27674 &self.syntax
27675 }
27676}
27677impl AstNode for Tablespace {
27678 #[inline]
27679 fn can_cast(kind: SyntaxKind) -> bool {
27680 kind == SyntaxKind::TABLESPACE
27681 }
27682 #[inline]
27683 fn cast(syntax: SyntaxNode) -> Option<Self> {
27684 if Self::can_cast(syntax.kind()) {
27685 Some(Self { syntax })
27686 } else {
27687 None
27688 }
27689 }
27690 #[inline]
27691 fn syntax(&self) -> &SyntaxNode {
27692 &self.syntax
27693 }
27694}
27695impl AstNode for Target {
27696 #[inline]
27697 fn can_cast(kind: SyntaxKind) -> bool {
27698 kind == SyntaxKind::TARGET
27699 }
27700 #[inline]
27701 fn cast(syntax: SyntaxNode) -> Option<Self> {
27702 if Self::can_cast(syntax.kind()) {
27703 Some(Self { syntax })
27704 } else {
27705 None
27706 }
27707 }
27708 #[inline]
27709 fn syntax(&self) -> &SyntaxNode {
27710 &self.syntax
27711 }
27712}
27713impl AstNode for TargetList {
27714 #[inline]
27715 fn can_cast(kind: SyntaxKind) -> bool {
27716 kind == SyntaxKind::TARGET_LIST
27717 }
27718 #[inline]
27719 fn cast(syntax: SyntaxNode) -> Option<Self> {
27720 if Self::can_cast(syntax.kind()) {
27721 Some(Self { syntax })
27722 } else {
27723 None
27724 }
27725 }
27726 #[inline]
27727 fn syntax(&self) -> &SyntaxNode {
27728 &self.syntax
27729 }
27730}
27731impl AstNode for TimeType {
27732 #[inline]
27733 fn can_cast(kind: SyntaxKind) -> bool {
27734 kind == SyntaxKind::TIME_TYPE
27735 }
27736 #[inline]
27737 fn cast(syntax: SyntaxNode) -> Option<Self> {
27738 if Self::can_cast(syntax.kind()) {
27739 Some(Self { syntax })
27740 } else {
27741 None
27742 }
27743 }
27744 #[inline]
27745 fn syntax(&self) -> &SyntaxNode {
27746 &self.syntax
27747 }
27748}
27749impl AstNode for Timing {
27750 #[inline]
27751 fn can_cast(kind: SyntaxKind) -> bool {
27752 kind == SyntaxKind::TIMING
27753 }
27754 #[inline]
27755 fn cast(syntax: SyntaxNode) -> Option<Self> {
27756 if Self::can_cast(syntax.kind()) {
27757 Some(Self { syntax })
27758 } else {
27759 None
27760 }
27761 }
27762 #[inline]
27763 fn syntax(&self) -> &SyntaxNode {
27764 &self.syntax
27765 }
27766}
27767impl AstNode for TransactionModeList {
27768 #[inline]
27769 fn can_cast(kind: SyntaxKind) -> bool {
27770 kind == SyntaxKind::TRANSACTION_MODE_LIST
27771 }
27772 #[inline]
27773 fn cast(syntax: SyntaxNode) -> Option<Self> {
27774 if Self::can_cast(syntax.kind()) {
27775 Some(Self { syntax })
27776 } else {
27777 None
27778 }
27779 }
27780 #[inline]
27781 fn syntax(&self) -> &SyntaxNode {
27782 &self.syntax
27783 }
27784}
27785impl AstNode for TransformFromFunc {
27786 #[inline]
27787 fn can_cast(kind: SyntaxKind) -> bool {
27788 kind == SyntaxKind::TRANSFORM_FROM_FUNC
27789 }
27790 #[inline]
27791 fn cast(syntax: SyntaxNode) -> Option<Self> {
27792 if Self::can_cast(syntax.kind()) {
27793 Some(Self { syntax })
27794 } else {
27795 None
27796 }
27797 }
27798 #[inline]
27799 fn syntax(&self) -> &SyntaxNode {
27800 &self.syntax
27801 }
27802}
27803impl AstNode for TransformFuncOption {
27804 #[inline]
27805 fn can_cast(kind: SyntaxKind) -> bool {
27806 kind == SyntaxKind::TRANSFORM_FUNC_OPTION
27807 }
27808 #[inline]
27809 fn cast(syntax: SyntaxNode) -> Option<Self> {
27810 if Self::can_cast(syntax.kind()) {
27811 Some(Self { syntax })
27812 } else {
27813 None
27814 }
27815 }
27816 #[inline]
27817 fn syntax(&self) -> &SyntaxNode {
27818 &self.syntax
27819 }
27820}
27821impl AstNode for TransformToFunc {
27822 #[inline]
27823 fn can_cast(kind: SyntaxKind) -> bool {
27824 kind == SyntaxKind::TRANSFORM_TO_FUNC
27825 }
27826 #[inline]
27827 fn cast(syntax: SyntaxNode) -> Option<Self> {
27828 if Self::can_cast(syntax.kind()) {
27829 Some(Self { syntax })
27830 } else {
27831 None
27832 }
27833 }
27834 #[inline]
27835 fn syntax(&self) -> &SyntaxNode {
27836 &self.syntax
27837 }
27838}
27839impl AstNode for TriggerEvent {
27840 #[inline]
27841 fn can_cast(kind: SyntaxKind) -> bool {
27842 kind == SyntaxKind::TRIGGER_EVENT
27843 }
27844 #[inline]
27845 fn cast(syntax: SyntaxNode) -> Option<Self> {
27846 if Self::can_cast(syntax.kind()) {
27847 Some(Self { syntax })
27848 } else {
27849 None
27850 }
27851 }
27852 #[inline]
27853 fn syntax(&self) -> &SyntaxNode {
27854 &self.syntax
27855 }
27856}
27857impl AstNode for TriggerEventList {
27858 #[inline]
27859 fn can_cast(kind: SyntaxKind) -> bool {
27860 kind == SyntaxKind::TRIGGER_EVENT_LIST
27861 }
27862 #[inline]
27863 fn cast(syntax: SyntaxNode) -> Option<Self> {
27864 if Self::can_cast(syntax.kind()) {
27865 Some(Self { syntax })
27866 } else {
27867 None
27868 }
27869 }
27870 #[inline]
27871 fn syntax(&self) -> &SyntaxNode {
27872 &self.syntax
27873 }
27874}
27875impl AstNode for TriggerEventUpdate {
27876 #[inline]
27877 fn can_cast(kind: SyntaxKind) -> bool {
27878 kind == SyntaxKind::TRIGGER_EVENT_UPDATE
27879 }
27880 #[inline]
27881 fn cast(syntax: SyntaxNode) -> Option<Self> {
27882 if Self::can_cast(syntax.kind()) {
27883 Some(Self { syntax })
27884 } else {
27885 None
27886 }
27887 }
27888 #[inline]
27889 fn syntax(&self) -> &SyntaxNode {
27890 &self.syntax
27891 }
27892}
27893impl AstNode for TrimFn {
27894 #[inline]
27895 fn can_cast(kind: SyntaxKind) -> bool {
27896 kind == SyntaxKind::TRIM_FN
27897 }
27898 #[inline]
27899 fn cast(syntax: SyntaxNode) -> Option<Self> {
27900 if Self::can_cast(syntax.kind()) {
27901 Some(Self { syntax })
27902 } else {
27903 None
27904 }
27905 }
27906 #[inline]
27907 fn syntax(&self) -> &SyntaxNode {
27908 &self.syntax
27909 }
27910}
27911impl AstNode for Truncate {
27912 #[inline]
27913 fn can_cast(kind: SyntaxKind) -> bool {
27914 kind == SyntaxKind::TRUNCATE
27915 }
27916 #[inline]
27917 fn cast(syntax: SyntaxNode) -> Option<Self> {
27918 if Self::can_cast(syntax.kind()) {
27919 Some(Self { syntax })
27920 } else {
27921 None
27922 }
27923 }
27924 #[inline]
27925 fn syntax(&self) -> &SyntaxNode {
27926 &self.syntax
27927 }
27928}
27929impl AstNode for TupleExpr {
27930 #[inline]
27931 fn can_cast(kind: SyntaxKind) -> bool {
27932 kind == SyntaxKind::TUPLE_EXPR
27933 }
27934 #[inline]
27935 fn cast(syntax: SyntaxNode) -> Option<Self> {
27936 if Self::can_cast(syntax.kind()) {
27937 Some(Self { syntax })
27938 } else {
27939 None
27940 }
27941 }
27942 #[inline]
27943 fn syntax(&self) -> &SyntaxNode {
27944 &self.syntax
27945 }
27946}
27947impl AstNode for UnicodeNormalForm {
27948 #[inline]
27949 fn can_cast(kind: SyntaxKind) -> bool {
27950 kind == SyntaxKind::UNICODE_NORMAL_FORM
27951 }
27952 #[inline]
27953 fn cast(syntax: SyntaxNode) -> Option<Self> {
27954 if Self::can_cast(syntax.kind()) {
27955 Some(Self { syntax })
27956 } else {
27957 None
27958 }
27959 }
27960 #[inline]
27961 fn syntax(&self) -> &SyntaxNode {
27962 &self.syntax
27963 }
27964}
27965impl AstNode for UniqueConstraint {
27966 #[inline]
27967 fn can_cast(kind: SyntaxKind) -> bool {
27968 kind == SyntaxKind::UNIQUE_CONSTRAINT
27969 }
27970 #[inline]
27971 fn cast(syntax: SyntaxNode) -> Option<Self> {
27972 if Self::can_cast(syntax.kind()) {
27973 Some(Self { syntax })
27974 } else {
27975 None
27976 }
27977 }
27978 #[inline]
27979 fn syntax(&self) -> &SyntaxNode {
27980 &self.syntax
27981 }
27982}
27983impl AstNode for Unlisten {
27984 #[inline]
27985 fn can_cast(kind: SyntaxKind) -> bool {
27986 kind == SyntaxKind::UNLISTEN
27987 }
27988 #[inline]
27989 fn cast(syntax: SyntaxNode) -> Option<Self> {
27990 if Self::can_cast(syntax.kind()) {
27991 Some(Self { syntax })
27992 } else {
27993 None
27994 }
27995 }
27996 #[inline]
27997 fn syntax(&self) -> &SyntaxNode {
27998 &self.syntax
27999 }
28000}
28001impl AstNode for Update {
28002 #[inline]
28003 fn can_cast(kind: SyntaxKind) -> bool {
28004 kind == SyntaxKind::UPDATE
28005 }
28006 #[inline]
28007 fn cast(syntax: SyntaxNode) -> Option<Self> {
28008 if Self::can_cast(syntax.kind()) {
28009 Some(Self { syntax })
28010 } else {
28011 None
28012 }
28013 }
28014 #[inline]
28015 fn syntax(&self) -> &SyntaxNode {
28016 &self.syntax
28017 }
28018}
28019impl AstNode for UsingClause {
28020 #[inline]
28021 fn can_cast(kind: SyntaxKind) -> bool {
28022 kind == SyntaxKind::USING_CLAUSE
28023 }
28024 #[inline]
28025 fn cast(syntax: SyntaxNode) -> Option<Self> {
28026 if Self::can_cast(syntax.kind()) {
28027 Some(Self { syntax })
28028 } else {
28029 None
28030 }
28031 }
28032 #[inline]
28033 fn syntax(&self) -> &SyntaxNode {
28034 &self.syntax
28035 }
28036}
28037impl AstNode for UsingExprClause {
28038 #[inline]
28039 fn can_cast(kind: SyntaxKind) -> bool {
28040 kind == SyntaxKind::USING_EXPR_CLAUSE
28041 }
28042 #[inline]
28043 fn cast(syntax: SyntaxNode) -> Option<Self> {
28044 if Self::can_cast(syntax.kind()) {
28045 Some(Self { syntax })
28046 } else {
28047 None
28048 }
28049 }
28050 #[inline]
28051 fn syntax(&self) -> &SyntaxNode {
28052 &self.syntax
28053 }
28054}
28055impl AstNode for UsingIndex {
28056 #[inline]
28057 fn can_cast(kind: SyntaxKind) -> bool {
28058 kind == SyntaxKind::USING_INDEX
28059 }
28060 #[inline]
28061 fn cast(syntax: SyntaxNode) -> Option<Self> {
28062 if Self::can_cast(syntax.kind()) {
28063 Some(Self { syntax })
28064 } else {
28065 None
28066 }
28067 }
28068 #[inline]
28069 fn syntax(&self) -> &SyntaxNode {
28070 &self.syntax
28071 }
28072}
28073impl AstNode for UsingMethod {
28074 #[inline]
28075 fn can_cast(kind: SyntaxKind) -> bool {
28076 kind == SyntaxKind::USING_METHOD
28077 }
28078 #[inline]
28079 fn cast(syntax: SyntaxNode) -> Option<Self> {
28080 if Self::can_cast(syntax.kind()) {
28081 Some(Self { syntax })
28082 } else {
28083 None
28084 }
28085 }
28086 #[inline]
28087 fn syntax(&self) -> &SyntaxNode {
28088 &self.syntax
28089 }
28090}
28091impl AstNode for UsingOnClause {
28092 #[inline]
28093 fn can_cast(kind: SyntaxKind) -> bool {
28094 kind == SyntaxKind::USING_ON_CLAUSE
28095 }
28096 #[inline]
28097 fn cast(syntax: SyntaxNode) -> Option<Self> {
28098 if Self::can_cast(syntax.kind()) {
28099 Some(Self { syntax })
28100 } else {
28101 None
28102 }
28103 }
28104 #[inline]
28105 fn syntax(&self) -> &SyntaxNode {
28106 &self.syntax
28107 }
28108}
28109impl AstNode for Vacuum {
28110 #[inline]
28111 fn can_cast(kind: SyntaxKind) -> bool {
28112 kind == SyntaxKind::VACUUM
28113 }
28114 #[inline]
28115 fn cast(syntax: SyntaxNode) -> Option<Self> {
28116 if Self::can_cast(syntax.kind()) {
28117 Some(Self { syntax })
28118 } else {
28119 None
28120 }
28121 }
28122 #[inline]
28123 fn syntax(&self) -> &SyntaxNode {
28124 &self.syntax
28125 }
28126}
28127impl AstNode for VacuumOption {
28128 #[inline]
28129 fn can_cast(kind: SyntaxKind) -> bool {
28130 kind == SyntaxKind::VACUUM_OPTION
28131 }
28132 #[inline]
28133 fn cast(syntax: SyntaxNode) -> Option<Self> {
28134 if Self::can_cast(syntax.kind()) {
28135 Some(Self { syntax })
28136 } else {
28137 None
28138 }
28139 }
28140 #[inline]
28141 fn syntax(&self) -> &SyntaxNode {
28142 &self.syntax
28143 }
28144}
28145impl AstNode for VacuumOptionList {
28146 #[inline]
28147 fn can_cast(kind: SyntaxKind) -> bool {
28148 kind == SyntaxKind::VACUUM_OPTION_LIST
28149 }
28150 #[inline]
28151 fn cast(syntax: SyntaxNode) -> Option<Self> {
28152 if Self::can_cast(syntax.kind()) {
28153 Some(Self { syntax })
28154 } else {
28155 None
28156 }
28157 }
28158 #[inline]
28159 fn syntax(&self) -> &SyntaxNode {
28160 &self.syntax
28161 }
28162}
28163impl AstNode for ValidateConstraint {
28164 #[inline]
28165 fn can_cast(kind: SyntaxKind) -> bool {
28166 kind == SyntaxKind::VALIDATE_CONSTRAINT
28167 }
28168 #[inline]
28169 fn cast(syntax: SyntaxNode) -> Option<Self> {
28170 if Self::can_cast(syntax.kind()) {
28171 Some(Self { syntax })
28172 } else {
28173 None
28174 }
28175 }
28176 #[inline]
28177 fn syntax(&self) -> &SyntaxNode {
28178 &self.syntax
28179 }
28180}
28181impl AstNode for Values {
28182 #[inline]
28183 fn can_cast(kind: SyntaxKind) -> bool {
28184 kind == SyntaxKind::VALUES
28185 }
28186 #[inline]
28187 fn cast(syntax: SyntaxNode) -> Option<Self> {
28188 if Self::can_cast(syntax.kind()) {
28189 Some(Self { syntax })
28190 } else {
28191 None
28192 }
28193 }
28194 #[inline]
28195 fn syntax(&self) -> &SyntaxNode {
28196 &self.syntax
28197 }
28198}
28199impl AstNode for Variant {
28200 #[inline]
28201 fn can_cast(kind: SyntaxKind) -> bool {
28202 kind == SyntaxKind::VARIANT
28203 }
28204 #[inline]
28205 fn cast(syntax: SyntaxNode) -> Option<Self> {
28206 if Self::can_cast(syntax.kind()) {
28207 Some(Self { syntax })
28208 } else {
28209 None
28210 }
28211 }
28212 #[inline]
28213 fn syntax(&self) -> &SyntaxNode {
28214 &self.syntax
28215 }
28216}
28217impl AstNode for VariantList {
28218 #[inline]
28219 fn can_cast(kind: SyntaxKind) -> bool {
28220 kind == SyntaxKind::VARIANT_LIST
28221 }
28222 #[inline]
28223 fn cast(syntax: SyntaxNode) -> Option<Self> {
28224 if Self::can_cast(syntax.kind()) {
28225 Some(Self { syntax })
28226 } else {
28227 None
28228 }
28229 }
28230 #[inline]
28231 fn syntax(&self) -> &SyntaxNode {
28232 &self.syntax
28233 }
28234}
28235impl AstNode for VolatilityFuncOption {
28236 #[inline]
28237 fn can_cast(kind: SyntaxKind) -> bool {
28238 kind == SyntaxKind::VOLATILITY_FUNC_OPTION
28239 }
28240 #[inline]
28241 fn cast(syntax: SyntaxNode) -> Option<Self> {
28242 if Self::can_cast(syntax.kind()) {
28243 Some(Self { syntax })
28244 } else {
28245 None
28246 }
28247 }
28248 #[inline]
28249 fn syntax(&self) -> &SyntaxNode {
28250 &self.syntax
28251 }
28252}
28253impl AstNode for WhenClause {
28254 #[inline]
28255 fn can_cast(kind: SyntaxKind) -> bool {
28256 kind == SyntaxKind::WHEN_CLAUSE
28257 }
28258 #[inline]
28259 fn cast(syntax: SyntaxNode) -> Option<Self> {
28260 if Self::can_cast(syntax.kind()) {
28261 Some(Self { syntax })
28262 } else {
28263 None
28264 }
28265 }
28266 #[inline]
28267 fn syntax(&self) -> &SyntaxNode {
28268 &self.syntax
28269 }
28270}
28271impl AstNode for WhenClauseList {
28272 #[inline]
28273 fn can_cast(kind: SyntaxKind) -> bool {
28274 kind == SyntaxKind::WHEN_CLAUSE_LIST
28275 }
28276 #[inline]
28277 fn cast(syntax: SyntaxNode) -> Option<Self> {
28278 if Self::can_cast(syntax.kind()) {
28279 Some(Self { syntax })
28280 } else {
28281 None
28282 }
28283 }
28284 #[inline]
28285 fn syntax(&self) -> &SyntaxNode {
28286 &self.syntax
28287 }
28288}
28289impl AstNode for WhenCondition {
28290 #[inline]
28291 fn can_cast(kind: SyntaxKind) -> bool {
28292 kind == SyntaxKind::WHEN_CONDITION
28293 }
28294 #[inline]
28295 fn cast(syntax: SyntaxNode) -> Option<Self> {
28296 if Self::can_cast(syntax.kind()) {
28297 Some(Self { syntax })
28298 } else {
28299 None
28300 }
28301 }
28302 #[inline]
28303 fn syntax(&self) -> &SyntaxNode {
28304 &self.syntax
28305 }
28306}
28307impl AstNode for WhereClause {
28308 #[inline]
28309 fn can_cast(kind: SyntaxKind) -> bool {
28310 kind == SyntaxKind::WHERE_CLAUSE
28311 }
28312 #[inline]
28313 fn cast(syntax: SyntaxNode) -> Option<Self> {
28314 if Self::can_cast(syntax.kind()) {
28315 Some(Self { syntax })
28316 } else {
28317 None
28318 }
28319 }
28320 #[inline]
28321 fn syntax(&self) -> &SyntaxNode {
28322 &self.syntax
28323 }
28324}
28325impl AstNode for WhereConditionClause {
28326 #[inline]
28327 fn can_cast(kind: SyntaxKind) -> bool {
28328 kind == SyntaxKind::WHERE_CONDITION_CLAUSE
28329 }
28330 #[inline]
28331 fn cast(syntax: SyntaxNode) -> Option<Self> {
28332 if Self::can_cast(syntax.kind()) {
28333 Some(Self { syntax })
28334 } else {
28335 None
28336 }
28337 }
28338 #[inline]
28339 fn syntax(&self) -> &SyntaxNode {
28340 &self.syntax
28341 }
28342}
28343impl AstNode for WhereCurrentOf {
28344 #[inline]
28345 fn can_cast(kind: SyntaxKind) -> bool {
28346 kind == SyntaxKind::WHERE_CURRENT_OF
28347 }
28348 #[inline]
28349 fn cast(syntax: SyntaxNode) -> Option<Self> {
28350 if Self::can_cast(syntax.kind()) {
28351 Some(Self { syntax })
28352 } else {
28353 None
28354 }
28355 }
28356 #[inline]
28357 fn syntax(&self) -> &SyntaxNode {
28358 &self.syntax
28359 }
28360}
28361impl AstNode for WindowClause {
28362 #[inline]
28363 fn can_cast(kind: SyntaxKind) -> bool {
28364 kind == SyntaxKind::WINDOW_CLAUSE
28365 }
28366 #[inline]
28367 fn cast(syntax: SyntaxNode) -> Option<Self> {
28368 if Self::can_cast(syntax.kind()) {
28369 Some(Self { syntax })
28370 } else {
28371 None
28372 }
28373 }
28374 #[inline]
28375 fn syntax(&self) -> &SyntaxNode {
28376 &self.syntax
28377 }
28378}
28379impl AstNode for WindowDef {
28380 #[inline]
28381 fn can_cast(kind: SyntaxKind) -> bool {
28382 kind == SyntaxKind::WINDOW_DEF
28383 }
28384 #[inline]
28385 fn cast(syntax: SyntaxNode) -> Option<Self> {
28386 if Self::can_cast(syntax.kind()) {
28387 Some(Self { syntax })
28388 } else {
28389 None
28390 }
28391 }
28392 #[inline]
28393 fn syntax(&self) -> &SyntaxNode {
28394 &self.syntax
28395 }
28396}
28397impl AstNode for WindowFuncOption {
28398 #[inline]
28399 fn can_cast(kind: SyntaxKind) -> bool {
28400 kind == SyntaxKind::WINDOW_FUNC_OPTION
28401 }
28402 #[inline]
28403 fn cast(syntax: SyntaxNode) -> Option<Self> {
28404 if Self::can_cast(syntax.kind()) {
28405 Some(Self { syntax })
28406 } else {
28407 None
28408 }
28409 }
28410 #[inline]
28411 fn syntax(&self) -> &SyntaxNode {
28412 &self.syntax
28413 }
28414}
28415impl AstNode for WindowSpec {
28416 #[inline]
28417 fn can_cast(kind: SyntaxKind) -> bool {
28418 kind == SyntaxKind::WINDOW_SPEC
28419 }
28420 #[inline]
28421 fn cast(syntax: SyntaxNode) -> Option<Self> {
28422 if Self::can_cast(syntax.kind()) {
28423 Some(Self { syntax })
28424 } else {
28425 None
28426 }
28427 }
28428 #[inline]
28429 fn syntax(&self) -> &SyntaxNode {
28430 &self.syntax
28431 }
28432}
28433impl AstNode for WithCheckExprClause {
28434 #[inline]
28435 fn can_cast(kind: SyntaxKind) -> bool {
28436 kind == SyntaxKind::WITH_CHECK_EXPR_CLAUSE
28437 }
28438 #[inline]
28439 fn cast(syntax: SyntaxNode) -> Option<Self> {
28440 if Self::can_cast(syntax.kind()) {
28441 Some(Self { syntax })
28442 } else {
28443 None
28444 }
28445 }
28446 #[inline]
28447 fn syntax(&self) -> &SyntaxNode {
28448 &self.syntax
28449 }
28450}
28451impl AstNode for WithClause {
28452 #[inline]
28453 fn can_cast(kind: SyntaxKind) -> bool {
28454 kind == SyntaxKind::WITH_CLAUSE
28455 }
28456 #[inline]
28457 fn cast(syntax: SyntaxNode) -> Option<Self> {
28458 if Self::can_cast(syntax.kind()) {
28459 Some(Self { syntax })
28460 } else {
28461 None
28462 }
28463 }
28464 #[inline]
28465 fn syntax(&self) -> &SyntaxNode {
28466 &self.syntax
28467 }
28468}
28469impl AstNode for WithData {
28470 #[inline]
28471 fn can_cast(kind: SyntaxKind) -> bool {
28472 kind == SyntaxKind::WITH_DATA
28473 }
28474 #[inline]
28475 fn cast(syntax: SyntaxNode) -> Option<Self> {
28476 if Self::can_cast(syntax.kind()) {
28477 Some(Self { syntax })
28478 } else {
28479 None
28480 }
28481 }
28482 #[inline]
28483 fn syntax(&self) -> &SyntaxNode {
28484 &self.syntax
28485 }
28486}
28487impl AstNode for WithNoData {
28488 #[inline]
28489 fn can_cast(kind: SyntaxKind) -> bool {
28490 kind == SyntaxKind::WITH_NO_DATA
28491 }
28492 #[inline]
28493 fn cast(syntax: SyntaxNode) -> Option<Self> {
28494 if Self::can_cast(syntax.kind()) {
28495 Some(Self { syntax })
28496 } else {
28497 None
28498 }
28499 }
28500 #[inline]
28501 fn syntax(&self) -> &SyntaxNode {
28502 &self.syntax
28503 }
28504}
28505impl AstNode for WithOptions {
28506 #[inline]
28507 fn can_cast(kind: SyntaxKind) -> bool {
28508 kind == SyntaxKind::WITH_OPTIONS
28509 }
28510 #[inline]
28511 fn cast(syntax: SyntaxNode) -> Option<Self> {
28512 if Self::can_cast(syntax.kind()) {
28513 Some(Self { syntax })
28514 } else {
28515 None
28516 }
28517 }
28518 #[inline]
28519 fn syntax(&self) -> &SyntaxNode {
28520 &self.syntax
28521 }
28522}
28523impl AstNode for WithParams {
28524 #[inline]
28525 fn can_cast(kind: SyntaxKind) -> bool {
28526 kind == SyntaxKind::WITH_PARAMS
28527 }
28528 #[inline]
28529 fn cast(syntax: SyntaxNode) -> Option<Self> {
28530 if Self::can_cast(syntax.kind()) {
28531 Some(Self { syntax })
28532 } else {
28533 None
28534 }
28535 }
28536 #[inline]
28537 fn syntax(&self) -> &SyntaxNode {
28538 &self.syntax
28539 }
28540}
28541impl AstNode for WithTable {
28542 #[inline]
28543 fn can_cast(kind: SyntaxKind) -> bool {
28544 kind == SyntaxKind::WITH_TABLE
28545 }
28546 #[inline]
28547 fn cast(syntax: SyntaxNode) -> Option<Self> {
28548 if Self::can_cast(syntax.kind()) {
28549 Some(Self { syntax })
28550 } else {
28551 None
28552 }
28553 }
28554 #[inline]
28555 fn syntax(&self) -> &SyntaxNode {
28556 &self.syntax
28557 }
28558}
28559impl AstNode for WithTimezone {
28560 #[inline]
28561 fn can_cast(kind: SyntaxKind) -> bool {
28562 kind == SyntaxKind::WITH_TIMEZONE
28563 }
28564 #[inline]
28565 fn cast(syntax: SyntaxNode) -> Option<Self> {
28566 if Self::can_cast(syntax.kind()) {
28567 Some(Self { syntax })
28568 } else {
28569 None
28570 }
28571 }
28572 #[inline]
28573 fn syntax(&self) -> &SyntaxNode {
28574 &self.syntax
28575 }
28576}
28577impl AstNode for WithinClause {
28578 #[inline]
28579 fn can_cast(kind: SyntaxKind) -> bool {
28580 kind == SyntaxKind::WITHIN_CLAUSE
28581 }
28582 #[inline]
28583 fn cast(syntax: SyntaxNode) -> Option<Self> {
28584 if Self::can_cast(syntax.kind()) {
28585 Some(Self { syntax })
28586 } else {
28587 None
28588 }
28589 }
28590 #[inline]
28591 fn syntax(&self) -> &SyntaxNode {
28592 &self.syntax
28593 }
28594}
28595impl AstNode for WithoutOids {
28596 #[inline]
28597 fn can_cast(kind: SyntaxKind) -> bool {
28598 kind == SyntaxKind::WITHOUT_OIDS
28599 }
28600 #[inline]
28601 fn cast(syntax: SyntaxNode) -> Option<Self> {
28602 if Self::can_cast(syntax.kind()) {
28603 Some(Self { syntax })
28604 } else {
28605 None
28606 }
28607 }
28608 #[inline]
28609 fn syntax(&self) -> &SyntaxNode {
28610 &self.syntax
28611 }
28612}
28613impl AstNode for WithoutTimezone {
28614 #[inline]
28615 fn can_cast(kind: SyntaxKind) -> bool {
28616 kind == SyntaxKind::WITHOUT_TIMEZONE
28617 }
28618 #[inline]
28619 fn cast(syntax: SyntaxNode) -> Option<Self> {
28620 if Self::can_cast(syntax.kind()) {
28621 Some(Self { syntax })
28622 } else {
28623 None
28624 }
28625 }
28626 #[inline]
28627 fn syntax(&self) -> &SyntaxNode {
28628 &self.syntax
28629 }
28630}
28631impl AstNode for XmlAttributeList {
28632 #[inline]
28633 fn can_cast(kind: SyntaxKind) -> bool {
28634 kind == SyntaxKind::XML_ATTRIBUTE_LIST
28635 }
28636 #[inline]
28637 fn cast(syntax: SyntaxNode) -> Option<Self> {
28638 if Self::can_cast(syntax.kind()) {
28639 Some(Self { syntax })
28640 } else {
28641 None
28642 }
28643 }
28644 #[inline]
28645 fn syntax(&self) -> &SyntaxNode {
28646 &self.syntax
28647 }
28648}
28649impl AstNode for XmlColumnOption {
28650 #[inline]
28651 fn can_cast(kind: SyntaxKind) -> bool {
28652 kind == SyntaxKind::XML_COLUMN_OPTION
28653 }
28654 #[inline]
28655 fn cast(syntax: SyntaxNode) -> Option<Self> {
28656 if Self::can_cast(syntax.kind()) {
28657 Some(Self { syntax })
28658 } else {
28659 None
28660 }
28661 }
28662 #[inline]
28663 fn syntax(&self) -> &SyntaxNode {
28664 &self.syntax
28665 }
28666}
28667impl AstNode for XmlColumnOptionList {
28668 #[inline]
28669 fn can_cast(kind: SyntaxKind) -> bool {
28670 kind == SyntaxKind::XML_COLUMN_OPTION_LIST
28671 }
28672 #[inline]
28673 fn cast(syntax: SyntaxNode) -> Option<Self> {
28674 if Self::can_cast(syntax.kind()) {
28675 Some(Self { syntax })
28676 } else {
28677 None
28678 }
28679 }
28680 #[inline]
28681 fn syntax(&self) -> &SyntaxNode {
28682 &self.syntax
28683 }
28684}
28685impl AstNode for XmlElementFn {
28686 #[inline]
28687 fn can_cast(kind: SyntaxKind) -> bool {
28688 kind == SyntaxKind::XML_ELEMENT_FN
28689 }
28690 #[inline]
28691 fn cast(syntax: SyntaxNode) -> Option<Self> {
28692 if Self::can_cast(syntax.kind()) {
28693 Some(Self { syntax })
28694 } else {
28695 None
28696 }
28697 }
28698 #[inline]
28699 fn syntax(&self) -> &SyntaxNode {
28700 &self.syntax
28701 }
28702}
28703impl AstNode for XmlExistsFn {
28704 #[inline]
28705 fn can_cast(kind: SyntaxKind) -> bool {
28706 kind == SyntaxKind::XML_EXISTS_FN
28707 }
28708 #[inline]
28709 fn cast(syntax: SyntaxNode) -> Option<Self> {
28710 if Self::can_cast(syntax.kind()) {
28711 Some(Self { syntax })
28712 } else {
28713 None
28714 }
28715 }
28716 #[inline]
28717 fn syntax(&self) -> &SyntaxNode {
28718 &self.syntax
28719 }
28720}
28721impl AstNode for XmlForestFn {
28722 #[inline]
28723 fn can_cast(kind: SyntaxKind) -> bool {
28724 kind == SyntaxKind::XML_FOREST_FN
28725 }
28726 #[inline]
28727 fn cast(syntax: SyntaxNode) -> Option<Self> {
28728 if Self::can_cast(syntax.kind()) {
28729 Some(Self { syntax })
28730 } else {
28731 None
28732 }
28733 }
28734 #[inline]
28735 fn syntax(&self) -> &SyntaxNode {
28736 &self.syntax
28737 }
28738}
28739impl AstNode for XmlNamespace {
28740 #[inline]
28741 fn can_cast(kind: SyntaxKind) -> bool {
28742 kind == SyntaxKind::XML_NAMESPACE
28743 }
28744 #[inline]
28745 fn cast(syntax: SyntaxNode) -> Option<Self> {
28746 if Self::can_cast(syntax.kind()) {
28747 Some(Self { syntax })
28748 } else {
28749 None
28750 }
28751 }
28752 #[inline]
28753 fn syntax(&self) -> &SyntaxNode {
28754 &self.syntax
28755 }
28756}
28757impl AstNode for XmlNamespaceList {
28758 #[inline]
28759 fn can_cast(kind: SyntaxKind) -> bool {
28760 kind == SyntaxKind::XML_NAMESPACE_LIST
28761 }
28762 #[inline]
28763 fn cast(syntax: SyntaxNode) -> Option<Self> {
28764 if Self::can_cast(syntax.kind()) {
28765 Some(Self { syntax })
28766 } else {
28767 None
28768 }
28769 }
28770 #[inline]
28771 fn syntax(&self) -> &SyntaxNode {
28772 &self.syntax
28773 }
28774}
28775impl AstNode for XmlParseFn {
28776 #[inline]
28777 fn can_cast(kind: SyntaxKind) -> bool {
28778 kind == SyntaxKind::XML_PARSE_FN
28779 }
28780 #[inline]
28781 fn cast(syntax: SyntaxNode) -> Option<Self> {
28782 if Self::can_cast(syntax.kind()) {
28783 Some(Self { syntax })
28784 } else {
28785 None
28786 }
28787 }
28788 #[inline]
28789 fn syntax(&self) -> &SyntaxNode {
28790 &self.syntax
28791 }
28792}
28793impl AstNode for XmlPassingMech {
28794 #[inline]
28795 fn can_cast(kind: SyntaxKind) -> bool {
28796 kind == SyntaxKind::XML_PASSING_MECH
28797 }
28798 #[inline]
28799 fn cast(syntax: SyntaxNode) -> Option<Self> {
28800 if Self::can_cast(syntax.kind()) {
28801 Some(Self { syntax })
28802 } else {
28803 None
28804 }
28805 }
28806 #[inline]
28807 fn syntax(&self) -> &SyntaxNode {
28808 &self.syntax
28809 }
28810}
28811impl AstNode for XmlPiFn {
28812 #[inline]
28813 fn can_cast(kind: SyntaxKind) -> bool {
28814 kind == SyntaxKind::XML_PI_FN
28815 }
28816 #[inline]
28817 fn cast(syntax: SyntaxNode) -> Option<Self> {
28818 if Self::can_cast(syntax.kind()) {
28819 Some(Self { syntax })
28820 } else {
28821 None
28822 }
28823 }
28824 #[inline]
28825 fn syntax(&self) -> &SyntaxNode {
28826 &self.syntax
28827 }
28828}
28829impl AstNode for XmlRootFn {
28830 #[inline]
28831 fn can_cast(kind: SyntaxKind) -> bool {
28832 kind == SyntaxKind::XML_ROOT_FN
28833 }
28834 #[inline]
28835 fn cast(syntax: SyntaxNode) -> Option<Self> {
28836 if Self::can_cast(syntax.kind()) {
28837 Some(Self { syntax })
28838 } else {
28839 None
28840 }
28841 }
28842 #[inline]
28843 fn syntax(&self) -> &SyntaxNode {
28844 &self.syntax
28845 }
28846}
28847impl AstNode for XmlRowPassingClause {
28848 #[inline]
28849 fn can_cast(kind: SyntaxKind) -> bool {
28850 kind == SyntaxKind::XML_ROW_PASSING_CLAUSE
28851 }
28852 #[inline]
28853 fn cast(syntax: SyntaxNode) -> Option<Self> {
28854 if Self::can_cast(syntax.kind()) {
28855 Some(Self { syntax })
28856 } else {
28857 None
28858 }
28859 }
28860 #[inline]
28861 fn syntax(&self) -> &SyntaxNode {
28862 &self.syntax
28863 }
28864}
28865impl AstNode for XmlSerializeFn {
28866 #[inline]
28867 fn can_cast(kind: SyntaxKind) -> bool {
28868 kind == SyntaxKind::XML_SERIALIZE_FN
28869 }
28870 #[inline]
28871 fn cast(syntax: SyntaxNode) -> Option<Self> {
28872 if Self::can_cast(syntax.kind()) {
28873 Some(Self { syntax })
28874 } else {
28875 None
28876 }
28877 }
28878 #[inline]
28879 fn syntax(&self) -> &SyntaxNode {
28880 &self.syntax
28881 }
28882}
28883impl AstNode for XmlTable {
28884 #[inline]
28885 fn can_cast(kind: SyntaxKind) -> bool {
28886 kind == SyntaxKind::XML_TABLE
28887 }
28888 #[inline]
28889 fn cast(syntax: SyntaxNode) -> Option<Self> {
28890 if Self::can_cast(syntax.kind()) {
28891 Some(Self { syntax })
28892 } else {
28893 None
28894 }
28895 }
28896 #[inline]
28897 fn syntax(&self) -> &SyntaxNode {
28898 &self.syntax
28899 }
28900}
28901impl AstNode for XmlTableColumn {
28902 #[inline]
28903 fn can_cast(kind: SyntaxKind) -> bool {
28904 kind == SyntaxKind::XML_TABLE_COLUMN
28905 }
28906 #[inline]
28907 fn cast(syntax: SyntaxNode) -> Option<Self> {
28908 if Self::can_cast(syntax.kind()) {
28909 Some(Self { syntax })
28910 } else {
28911 None
28912 }
28913 }
28914 #[inline]
28915 fn syntax(&self) -> &SyntaxNode {
28916 &self.syntax
28917 }
28918}
28919impl AstNode for XmlTableColumnList {
28920 #[inline]
28921 fn can_cast(kind: SyntaxKind) -> bool {
28922 kind == SyntaxKind::XML_TABLE_COLUMN_LIST
28923 }
28924 #[inline]
28925 fn cast(syntax: SyntaxNode) -> Option<Self> {
28926 if Self::can_cast(syntax.kind()) {
28927 Some(Self { syntax })
28928 } else {
28929 None
28930 }
28931 }
28932 #[inline]
28933 fn syntax(&self) -> &SyntaxNode {
28934 &self.syntax
28935 }
28936}
28937impl AstNode for AlterColumnOption {
28938 #[inline]
28939 fn can_cast(kind: SyntaxKind) -> bool {
28940 matches!(
28941 kind,
28942 SyntaxKind::ADD_GENERATED
28943 | SyntaxKind::DROP_DEFAULT
28944 | SyntaxKind::DROP_EXPRESSION
28945 | SyntaxKind::DROP_IDENTITY
28946 | SyntaxKind::DROP_NOT_NULL
28947 | SyntaxKind::INHERIT
28948 | SyntaxKind::NO_INHERIT
28949 | SyntaxKind::RESET_OPTIONS
28950 | SyntaxKind::RESTART
28951 | SyntaxKind::SET_COMPRESSION
28952 | SyntaxKind::SET_DEFAULT
28953 | SyntaxKind::SET_EXPRESSION
28954 | SyntaxKind::SET_GENERATED
28955 | SyntaxKind::SET_GENERATED_OPTIONS
28956 | SyntaxKind::SET_NOT_NULL
28957 | SyntaxKind::SET_OPTIONS
28958 | SyntaxKind::SET_OPTIONS_LIST
28959 | SyntaxKind::SET_SEQUENCE_OPTION
28960 | SyntaxKind::SET_STATISTICS
28961 | SyntaxKind::SET_STORAGE
28962 | SyntaxKind::SET_TYPE
28963 )
28964 }
28965 #[inline]
28966 fn cast(syntax: SyntaxNode) -> Option<Self> {
28967 let res = match syntax.kind() {
28968 SyntaxKind::ADD_GENERATED => AlterColumnOption::AddGenerated(AddGenerated { syntax }),
28969 SyntaxKind::DROP_DEFAULT => AlterColumnOption::DropDefault(DropDefault { syntax }),
28970 SyntaxKind::DROP_EXPRESSION => {
28971 AlterColumnOption::DropExpression(DropExpression { syntax })
28972 }
28973 SyntaxKind::DROP_IDENTITY => AlterColumnOption::DropIdentity(DropIdentity { syntax }),
28974 SyntaxKind::DROP_NOT_NULL => AlterColumnOption::DropNotNull(DropNotNull { syntax }),
28975 SyntaxKind::INHERIT => AlterColumnOption::Inherit(Inherit { syntax }),
28976 SyntaxKind::NO_INHERIT => AlterColumnOption::NoInherit(NoInherit { syntax }),
28977 SyntaxKind::RESET_OPTIONS => AlterColumnOption::ResetOptions(ResetOptions { syntax }),
28978 SyntaxKind::RESTART => AlterColumnOption::Restart(Restart { syntax }),
28979 SyntaxKind::SET_COMPRESSION => {
28980 AlterColumnOption::SetCompression(SetCompression { syntax })
28981 }
28982 SyntaxKind::SET_DEFAULT => AlterColumnOption::SetDefault(SetDefault { syntax }),
28983 SyntaxKind::SET_EXPRESSION => {
28984 AlterColumnOption::SetExpression(SetExpression { syntax })
28985 }
28986 SyntaxKind::SET_GENERATED => AlterColumnOption::SetGenerated(SetGenerated { syntax }),
28987 SyntaxKind::SET_GENERATED_OPTIONS => {
28988 AlterColumnOption::SetGeneratedOptions(SetGeneratedOptions { syntax })
28989 }
28990 SyntaxKind::SET_NOT_NULL => AlterColumnOption::SetNotNull(SetNotNull { syntax }),
28991 SyntaxKind::SET_OPTIONS => AlterColumnOption::SetOptions(SetOptions { syntax }),
28992 SyntaxKind::SET_OPTIONS_LIST => {
28993 AlterColumnOption::SetOptionsList(SetOptionsList { syntax })
28994 }
28995 SyntaxKind::SET_SEQUENCE_OPTION => {
28996 AlterColumnOption::SetSequenceOption(SetSequenceOption { syntax })
28997 }
28998 SyntaxKind::SET_STATISTICS => {
28999 AlterColumnOption::SetStatistics(SetStatistics { syntax })
29000 }
29001 SyntaxKind::SET_STORAGE => AlterColumnOption::SetStorage(SetStorage { syntax }),
29002 SyntaxKind::SET_TYPE => AlterColumnOption::SetType(SetType { syntax }),
29003 _ => {
29004 return None;
29005 }
29006 };
29007 Some(res)
29008 }
29009 #[inline]
29010 fn syntax(&self) -> &SyntaxNode {
29011 match self {
29012 AlterColumnOption::AddGenerated(it) => &it.syntax,
29013 AlterColumnOption::DropDefault(it) => &it.syntax,
29014 AlterColumnOption::DropExpression(it) => &it.syntax,
29015 AlterColumnOption::DropIdentity(it) => &it.syntax,
29016 AlterColumnOption::DropNotNull(it) => &it.syntax,
29017 AlterColumnOption::Inherit(it) => &it.syntax,
29018 AlterColumnOption::NoInherit(it) => &it.syntax,
29019 AlterColumnOption::ResetOptions(it) => &it.syntax,
29020 AlterColumnOption::Restart(it) => &it.syntax,
29021 AlterColumnOption::SetCompression(it) => &it.syntax,
29022 AlterColumnOption::SetDefault(it) => &it.syntax,
29023 AlterColumnOption::SetExpression(it) => &it.syntax,
29024 AlterColumnOption::SetGenerated(it) => &it.syntax,
29025 AlterColumnOption::SetGeneratedOptions(it) => &it.syntax,
29026 AlterColumnOption::SetNotNull(it) => &it.syntax,
29027 AlterColumnOption::SetOptions(it) => &it.syntax,
29028 AlterColumnOption::SetOptionsList(it) => &it.syntax,
29029 AlterColumnOption::SetSequenceOption(it) => &it.syntax,
29030 AlterColumnOption::SetStatistics(it) => &it.syntax,
29031 AlterColumnOption::SetStorage(it) => &it.syntax,
29032 AlterColumnOption::SetType(it) => &it.syntax,
29033 }
29034 }
29035}
29036impl From<AddGenerated> for AlterColumnOption {
29037 #[inline]
29038 fn from(node: AddGenerated) -> AlterColumnOption {
29039 AlterColumnOption::AddGenerated(node)
29040 }
29041}
29042impl From<DropDefault> for AlterColumnOption {
29043 #[inline]
29044 fn from(node: DropDefault) -> AlterColumnOption {
29045 AlterColumnOption::DropDefault(node)
29046 }
29047}
29048impl From<DropExpression> for AlterColumnOption {
29049 #[inline]
29050 fn from(node: DropExpression) -> AlterColumnOption {
29051 AlterColumnOption::DropExpression(node)
29052 }
29053}
29054impl From<DropIdentity> for AlterColumnOption {
29055 #[inline]
29056 fn from(node: DropIdentity) -> AlterColumnOption {
29057 AlterColumnOption::DropIdentity(node)
29058 }
29059}
29060impl From<DropNotNull> for AlterColumnOption {
29061 #[inline]
29062 fn from(node: DropNotNull) -> AlterColumnOption {
29063 AlterColumnOption::DropNotNull(node)
29064 }
29065}
29066impl From<Inherit> for AlterColumnOption {
29067 #[inline]
29068 fn from(node: Inherit) -> AlterColumnOption {
29069 AlterColumnOption::Inherit(node)
29070 }
29071}
29072impl From<NoInherit> for AlterColumnOption {
29073 #[inline]
29074 fn from(node: NoInherit) -> AlterColumnOption {
29075 AlterColumnOption::NoInherit(node)
29076 }
29077}
29078impl From<ResetOptions> for AlterColumnOption {
29079 #[inline]
29080 fn from(node: ResetOptions) -> AlterColumnOption {
29081 AlterColumnOption::ResetOptions(node)
29082 }
29083}
29084impl From<Restart> for AlterColumnOption {
29085 #[inline]
29086 fn from(node: Restart) -> AlterColumnOption {
29087 AlterColumnOption::Restart(node)
29088 }
29089}
29090impl From<SetCompression> for AlterColumnOption {
29091 #[inline]
29092 fn from(node: SetCompression) -> AlterColumnOption {
29093 AlterColumnOption::SetCompression(node)
29094 }
29095}
29096impl From<SetDefault> for AlterColumnOption {
29097 #[inline]
29098 fn from(node: SetDefault) -> AlterColumnOption {
29099 AlterColumnOption::SetDefault(node)
29100 }
29101}
29102impl From<SetExpression> for AlterColumnOption {
29103 #[inline]
29104 fn from(node: SetExpression) -> AlterColumnOption {
29105 AlterColumnOption::SetExpression(node)
29106 }
29107}
29108impl From<SetGenerated> for AlterColumnOption {
29109 #[inline]
29110 fn from(node: SetGenerated) -> AlterColumnOption {
29111 AlterColumnOption::SetGenerated(node)
29112 }
29113}
29114impl From<SetGeneratedOptions> for AlterColumnOption {
29115 #[inline]
29116 fn from(node: SetGeneratedOptions) -> AlterColumnOption {
29117 AlterColumnOption::SetGeneratedOptions(node)
29118 }
29119}
29120impl From<SetNotNull> for AlterColumnOption {
29121 #[inline]
29122 fn from(node: SetNotNull) -> AlterColumnOption {
29123 AlterColumnOption::SetNotNull(node)
29124 }
29125}
29126impl From<SetOptions> for AlterColumnOption {
29127 #[inline]
29128 fn from(node: SetOptions) -> AlterColumnOption {
29129 AlterColumnOption::SetOptions(node)
29130 }
29131}
29132impl From<SetOptionsList> for AlterColumnOption {
29133 #[inline]
29134 fn from(node: SetOptionsList) -> AlterColumnOption {
29135 AlterColumnOption::SetOptionsList(node)
29136 }
29137}
29138impl From<SetSequenceOption> for AlterColumnOption {
29139 #[inline]
29140 fn from(node: SetSequenceOption) -> AlterColumnOption {
29141 AlterColumnOption::SetSequenceOption(node)
29142 }
29143}
29144impl From<SetStatistics> for AlterColumnOption {
29145 #[inline]
29146 fn from(node: SetStatistics) -> AlterColumnOption {
29147 AlterColumnOption::SetStatistics(node)
29148 }
29149}
29150impl From<SetStorage> for AlterColumnOption {
29151 #[inline]
29152 fn from(node: SetStorage) -> AlterColumnOption {
29153 AlterColumnOption::SetStorage(node)
29154 }
29155}
29156impl From<SetType> for AlterColumnOption {
29157 #[inline]
29158 fn from(node: SetType) -> AlterColumnOption {
29159 AlterColumnOption::SetType(node)
29160 }
29161}
29162impl AstNode for AlterDomainAction {
29163 #[inline]
29164 fn can_cast(kind: SyntaxKind) -> bool {
29165 matches!(
29166 kind,
29167 SyntaxKind::ADD_CONSTRAINT
29168 | SyntaxKind::DROP_CONSTRAINT
29169 | SyntaxKind::DROP_DEFAULT
29170 | SyntaxKind::DROP_NOT_NULL
29171 | SyntaxKind::OWNER_TO
29172 | SyntaxKind::RENAME_CONSTRAINT
29173 | SyntaxKind::RENAME_TO
29174 | SyntaxKind::SET_DEFAULT
29175 | SyntaxKind::SET_NOT_NULL
29176 | SyntaxKind::SET_SCHEMA
29177 | SyntaxKind::VALIDATE_CONSTRAINT
29178 )
29179 }
29180 #[inline]
29181 fn cast(syntax: SyntaxNode) -> Option<Self> {
29182 let res = match syntax.kind() {
29183 SyntaxKind::ADD_CONSTRAINT => {
29184 AlterDomainAction::AddConstraint(AddConstraint { syntax })
29185 }
29186 SyntaxKind::DROP_CONSTRAINT => {
29187 AlterDomainAction::DropConstraint(DropConstraint { syntax })
29188 }
29189 SyntaxKind::DROP_DEFAULT => AlterDomainAction::DropDefault(DropDefault { syntax }),
29190 SyntaxKind::DROP_NOT_NULL => AlterDomainAction::DropNotNull(DropNotNull { syntax }),
29191 SyntaxKind::OWNER_TO => AlterDomainAction::OwnerTo(OwnerTo { syntax }),
29192 SyntaxKind::RENAME_CONSTRAINT => {
29193 AlterDomainAction::RenameConstraint(RenameConstraint { syntax })
29194 }
29195 SyntaxKind::RENAME_TO => AlterDomainAction::RenameTo(RenameTo { syntax }),
29196 SyntaxKind::SET_DEFAULT => AlterDomainAction::SetDefault(SetDefault { syntax }),
29197 SyntaxKind::SET_NOT_NULL => AlterDomainAction::SetNotNull(SetNotNull { syntax }),
29198 SyntaxKind::SET_SCHEMA => AlterDomainAction::SetSchema(SetSchema { syntax }),
29199 SyntaxKind::VALIDATE_CONSTRAINT => {
29200 AlterDomainAction::ValidateConstraint(ValidateConstraint { syntax })
29201 }
29202 _ => {
29203 return None;
29204 }
29205 };
29206 Some(res)
29207 }
29208 #[inline]
29209 fn syntax(&self) -> &SyntaxNode {
29210 match self {
29211 AlterDomainAction::AddConstraint(it) => &it.syntax,
29212 AlterDomainAction::DropConstraint(it) => &it.syntax,
29213 AlterDomainAction::DropDefault(it) => &it.syntax,
29214 AlterDomainAction::DropNotNull(it) => &it.syntax,
29215 AlterDomainAction::OwnerTo(it) => &it.syntax,
29216 AlterDomainAction::RenameConstraint(it) => &it.syntax,
29217 AlterDomainAction::RenameTo(it) => &it.syntax,
29218 AlterDomainAction::SetDefault(it) => &it.syntax,
29219 AlterDomainAction::SetNotNull(it) => &it.syntax,
29220 AlterDomainAction::SetSchema(it) => &it.syntax,
29221 AlterDomainAction::ValidateConstraint(it) => &it.syntax,
29222 }
29223 }
29224}
29225impl From<AddConstraint> for AlterDomainAction {
29226 #[inline]
29227 fn from(node: AddConstraint) -> AlterDomainAction {
29228 AlterDomainAction::AddConstraint(node)
29229 }
29230}
29231impl From<DropConstraint> for AlterDomainAction {
29232 #[inline]
29233 fn from(node: DropConstraint) -> AlterDomainAction {
29234 AlterDomainAction::DropConstraint(node)
29235 }
29236}
29237impl From<DropDefault> for AlterDomainAction {
29238 #[inline]
29239 fn from(node: DropDefault) -> AlterDomainAction {
29240 AlterDomainAction::DropDefault(node)
29241 }
29242}
29243impl From<DropNotNull> for AlterDomainAction {
29244 #[inline]
29245 fn from(node: DropNotNull) -> AlterDomainAction {
29246 AlterDomainAction::DropNotNull(node)
29247 }
29248}
29249impl From<OwnerTo> for AlterDomainAction {
29250 #[inline]
29251 fn from(node: OwnerTo) -> AlterDomainAction {
29252 AlterDomainAction::OwnerTo(node)
29253 }
29254}
29255impl From<RenameConstraint> for AlterDomainAction {
29256 #[inline]
29257 fn from(node: RenameConstraint) -> AlterDomainAction {
29258 AlterDomainAction::RenameConstraint(node)
29259 }
29260}
29261impl From<RenameTo> for AlterDomainAction {
29262 #[inline]
29263 fn from(node: RenameTo) -> AlterDomainAction {
29264 AlterDomainAction::RenameTo(node)
29265 }
29266}
29267impl From<SetDefault> for AlterDomainAction {
29268 #[inline]
29269 fn from(node: SetDefault) -> AlterDomainAction {
29270 AlterDomainAction::SetDefault(node)
29271 }
29272}
29273impl From<SetNotNull> for AlterDomainAction {
29274 #[inline]
29275 fn from(node: SetNotNull) -> AlterDomainAction {
29276 AlterDomainAction::SetNotNull(node)
29277 }
29278}
29279impl From<SetSchema> for AlterDomainAction {
29280 #[inline]
29281 fn from(node: SetSchema) -> AlterDomainAction {
29282 AlterDomainAction::SetSchema(node)
29283 }
29284}
29285impl From<ValidateConstraint> for AlterDomainAction {
29286 #[inline]
29287 fn from(node: ValidateConstraint) -> AlterDomainAction {
29288 AlterDomainAction::ValidateConstraint(node)
29289 }
29290}
29291impl AstNode for AlterIndexAction {
29292 #[inline]
29293 fn can_cast(kind: SyntaxKind) -> bool {
29294 matches!(
29295 kind,
29296 SyntaxKind::ALTER_SET_STATISTICS
29297 | SyntaxKind::ATTACH_PARTITION
29298 | SyntaxKind::DEPENDS_ON_EXTENSION
29299 | SyntaxKind::NO_DEPENDS_ON_EXTENSION
29300 | SyntaxKind::RENAME_TO
29301 | SyntaxKind::RESET_OPTIONS
29302 | SyntaxKind::SET_OPTIONS
29303 | SyntaxKind::SET_TABLESPACE
29304 )
29305 }
29306 #[inline]
29307 fn cast(syntax: SyntaxNode) -> Option<Self> {
29308 let res = match syntax.kind() {
29309 SyntaxKind::ALTER_SET_STATISTICS => {
29310 AlterIndexAction::AlterSetStatistics(AlterSetStatistics { syntax })
29311 }
29312 SyntaxKind::ATTACH_PARTITION => {
29313 AlterIndexAction::AttachPartition(AttachPartition { syntax })
29314 }
29315 SyntaxKind::DEPENDS_ON_EXTENSION => {
29316 AlterIndexAction::DependsOnExtension(DependsOnExtension { syntax })
29317 }
29318 SyntaxKind::NO_DEPENDS_ON_EXTENSION => {
29319 AlterIndexAction::NoDependsOnExtension(NoDependsOnExtension { syntax })
29320 }
29321 SyntaxKind::RENAME_TO => AlterIndexAction::RenameTo(RenameTo { syntax }),
29322 SyntaxKind::RESET_OPTIONS => AlterIndexAction::ResetOptions(ResetOptions { syntax }),
29323 SyntaxKind::SET_OPTIONS => AlterIndexAction::SetOptions(SetOptions { syntax }),
29324 SyntaxKind::SET_TABLESPACE => AlterIndexAction::SetTablespace(SetTablespace { syntax }),
29325 _ => {
29326 return None;
29327 }
29328 };
29329 Some(res)
29330 }
29331 #[inline]
29332 fn syntax(&self) -> &SyntaxNode {
29333 match self {
29334 AlterIndexAction::AlterSetStatistics(it) => &it.syntax,
29335 AlterIndexAction::AttachPartition(it) => &it.syntax,
29336 AlterIndexAction::DependsOnExtension(it) => &it.syntax,
29337 AlterIndexAction::NoDependsOnExtension(it) => &it.syntax,
29338 AlterIndexAction::RenameTo(it) => &it.syntax,
29339 AlterIndexAction::ResetOptions(it) => &it.syntax,
29340 AlterIndexAction::SetOptions(it) => &it.syntax,
29341 AlterIndexAction::SetTablespace(it) => &it.syntax,
29342 }
29343 }
29344}
29345impl From<AlterSetStatistics> for AlterIndexAction {
29346 #[inline]
29347 fn from(node: AlterSetStatistics) -> AlterIndexAction {
29348 AlterIndexAction::AlterSetStatistics(node)
29349 }
29350}
29351impl From<AttachPartition> for AlterIndexAction {
29352 #[inline]
29353 fn from(node: AttachPartition) -> AlterIndexAction {
29354 AlterIndexAction::AttachPartition(node)
29355 }
29356}
29357impl From<DependsOnExtension> for AlterIndexAction {
29358 #[inline]
29359 fn from(node: DependsOnExtension) -> AlterIndexAction {
29360 AlterIndexAction::DependsOnExtension(node)
29361 }
29362}
29363impl From<NoDependsOnExtension> for AlterIndexAction {
29364 #[inline]
29365 fn from(node: NoDependsOnExtension) -> AlterIndexAction {
29366 AlterIndexAction::NoDependsOnExtension(node)
29367 }
29368}
29369impl From<RenameTo> for AlterIndexAction {
29370 #[inline]
29371 fn from(node: RenameTo) -> AlterIndexAction {
29372 AlterIndexAction::RenameTo(node)
29373 }
29374}
29375impl From<ResetOptions> for AlterIndexAction {
29376 #[inline]
29377 fn from(node: ResetOptions) -> AlterIndexAction {
29378 AlterIndexAction::ResetOptions(node)
29379 }
29380}
29381impl From<SetOptions> for AlterIndexAction {
29382 #[inline]
29383 fn from(node: SetOptions) -> AlterIndexAction {
29384 AlterIndexAction::SetOptions(node)
29385 }
29386}
29387impl From<SetTablespace> for AlterIndexAction {
29388 #[inline]
29389 fn from(node: SetTablespace) -> AlterIndexAction {
29390 AlterIndexAction::SetTablespace(node)
29391 }
29392}
29393impl AstNode for AlterMaterializedViewAction {
29394 #[inline]
29395 fn can_cast(kind: SyntaxKind) -> bool {
29396 matches!(
29397 kind,
29398 SyntaxKind::DEPENDS_ON_EXTENSION
29399 | SyntaxKind::NO_DEPENDS_ON_EXTENSION
29400 | SyntaxKind::RENAME_COLUMN
29401 | SyntaxKind::RENAME_TO
29402 | SyntaxKind::SET_SCHEMA
29403 )
29404 }
29405 #[inline]
29406 fn cast(syntax: SyntaxNode) -> Option<Self> {
29407 let res = match syntax.kind() {
29408 SyntaxKind::DEPENDS_ON_EXTENSION => {
29409 AlterMaterializedViewAction::DependsOnExtension(DependsOnExtension { syntax })
29410 }
29411 SyntaxKind::NO_DEPENDS_ON_EXTENSION => {
29412 AlterMaterializedViewAction::NoDependsOnExtension(NoDependsOnExtension { syntax })
29413 }
29414 SyntaxKind::RENAME_COLUMN => {
29415 AlterMaterializedViewAction::RenameColumn(RenameColumn { syntax })
29416 }
29417 SyntaxKind::RENAME_TO => AlterMaterializedViewAction::RenameTo(RenameTo { syntax }),
29418 SyntaxKind::SET_SCHEMA => AlterMaterializedViewAction::SetSchema(SetSchema { syntax }),
29419 _ => {
29420 if let Some(result) = AlterTableAction::cast(syntax) {
29421 return Some(AlterMaterializedViewAction::AlterTableAction(result));
29422 }
29423 return None;
29424 }
29425 };
29426 Some(res)
29427 }
29428 #[inline]
29429 fn syntax(&self) -> &SyntaxNode {
29430 match self {
29431 AlterMaterializedViewAction::DependsOnExtension(it) => &it.syntax,
29432 AlterMaterializedViewAction::NoDependsOnExtension(it) => &it.syntax,
29433 AlterMaterializedViewAction::RenameColumn(it) => &it.syntax,
29434 AlterMaterializedViewAction::RenameTo(it) => &it.syntax,
29435 AlterMaterializedViewAction::SetSchema(it) => &it.syntax,
29436 AlterMaterializedViewAction::AlterTableAction(it) => it.syntax(),
29437 }
29438 }
29439}
29440impl From<DependsOnExtension> for AlterMaterializedViewAction {
29441 #[inline]
29442 fn from(node: DependsOnExtension) -> AlterMaterializedViewAction {
29443 AlterMaterializedViewAction::DependsOnExtension(node)
29444 }
29445}
29446impl From<NoDependsOnExtension> for AlterMaterializedViewAction {
29447 #[inline]
29448 fn from(node: NoDependsOnExtension) -> AlterMaterializedViewAction {
29449 AlterMaterializedViewAction::NoDependsOnExtension(node)
29450 }
29451}
29452impl From<RenameColumn> for AlterMaterializedViewAction {
29453 #[inline]
29454 fn from(node: RenameColumn) -> AlterMaterializedViewAction {
29455 AlterMaterializedViewAction::RenameColumn(node)
29456 }
29457}
29458impl From<RenameTo> for AlterMaterializedViewAction {
29459 #[inline]
29460 fn from(node: RenameTo) -> AlterMaterializedViewAction {
29461 AlterMaterializedViewAction::RenameTo(node)
29462 }
29463}
29464impl From<SetSchema> for AlterMaterializedViewAction {
29465 #[inline]
29466 fn from(node: SetSchema) -> AlterMaterializedViewAction {
29467 AlterMaterializedViewAction::SetSchema(node)
29468 }
29469}
29470impl AstNode for AlterTableAction {
29471 #[inline]
29472 fn can_cast(kind: SyntaxKind) -> bool {
29473 matches!(
29474 kind,
29475 SyntaxKind::ADD_COLUMN
29476 | SyntaxKind::ADD_CONSTRAINT
29477 | SyntaxKind::ALTER_COLUMN
29478 | SyntaxKind::ALTER_CONSTRAINT
29479 | SyntaxKind::ATTACH_PARTITION
29480 | SyntaxKind::CLUSTER_ON
29481 | SyntaxKind::DETACH_PARTITION
29482 | SyntaxKind::DISABLE_RLS
29483 | SyntaxKind::DISABLE_RULE
29484 | SyntaxKind::DISABLE_TRIGGER
29485 | SyntaxKind::DROP_COLUMN
29486 | SyntaxKind::DROP_CONSTRAINT
29487 | SyntaxKind::ENABLE_ALWAYS_RULE
29488 | SyntaxKind::ENABLE_ALWAYS_TRIGGER
29489 | SyntaxKind::ENABLE_REPLICA_RULE
29490 | SyntaxKind::ENABLE_REPLICA_TRIGGER
29491 | SyntaxKind::ENABLE_RLS
29492 | SyntaxKind::ENABLE_RULE
29493 | SyntaxKind::ENABLE_TRIGGER
29494 | SyntaxKind::FORCE_RLS
29495 | SyntaxKind::INHERIT_TABLE
29496 | SyntaxKind::MERGE_PARTITIONS
29497 | SyntaxKind::NO_FORCE_RLS
29498 | SyntaxKind::NO_INHERIT_TABLE
29499 | SyntaxKind::NOT_OF
29500 | SyntaxKind::OF_TYPE
29501 | SyntaxKind::OPTION_ITEM_LIST
29502 | SyntaxKind::OWNER_TO
29503 | SyntaxKind::RENAME_COLUMN
29504 | SyntaxKind::RENAME_CONSTRAINT
29505 | SyntaxKind::RENAME_TO
29506 | SyntaxKind::REPLICA_IDENTITY
29507 | SyntaxKind::RESET_OPTIONS
29508 | SyntaxKind::SET_ACCESS_METHOD
29509 | SyntaxKind::SET_LOGGED
29510 | SyntaxKind::SET_OPTIONS
29511 | SyntaxKind::SET_SCHEMA
29512 | SyntaxKind::SET_TABLESPACE
29513 | SyntaxKind::SET_UNLOGGED
29514 | SyntaxKind::SET_WITHOUT_CLUSTER
29515 | SyntaxKind::SET_WITHOUT_OIDS
29516 | SyntaxKind::SPLIT_PARTITION
29517 | SyntaxKind::VALIDATE_CONSTRAINT
29518 )
29519 }
29520 #[inline]
29521 fn cast(syntax: SyntaxNode) -> Option<Self> {
29522 let res = match syntax.kind() {
29523 SyntaxKind::ADD_COLUMN => AlterTableAction::AddColumn(AddColumn { syntax }),
29524 SyntaxKind::ADD_CONSTRAINT => AlterTableAction::AddConstraint(AddConstraint { syntax }),
29525 SyntaxKind::ALTER_COLUMN => AlterTableAction::AlterColumn(AlterColumn { syntax }),
29526 SyntaxKind::ALTER_CONSTRAINT => {
29527 AlterTableAction::AlterConstraint(AlterConstraint { syntax })
29528 }
29529 SyntaxKind::ATTACH_PARTITION => {
29530 AlterTableAction::AttachPartition(AttachPartition { syntax })
29531 }
29532 SyntaxKind::CLUSTER_ON => AlterTableAction::ClusterOn(ClusterOn { syntax }),
29533 SyntaxKind::DETACH_PARTITION => {
29534 AlterTableAction::DetachPartition(DetachPartition { syntax })
29535 }
29536 SyntaxKind::DISABLE_RLS => AlterTableAction::DisableRls(DisableRls { syntax }),
29537 SyntaxKind::DISABLE_RULE => AlterTableAction::DisableRule(DisableRule { syntax }),
29538 SyntaxKind::DISABLE_TRIGGER => {
29539 AlterTableAction::DisableTrigger(DisableTrigger { syntax })
29540 }
29541 SyntaxKind::DROP_COLUMN => AlterTableAction::DropColumn(DropColumn { syntax }),
29542 SyntaxKind::DROP_CONSTRAINT => {
29543 AlterTableAction::DropConstraint(DropConstraint { syntax })
29544 }
29545 SyntaxKind::ENABLE_ALWAYS_RULE => {
29546 AlterTableAction::EnableAlwaysRule(EnableAlwaysRule { syntax })
29547 }
29548 SyntaxKind::ENABLE_ALWAYS_TRIGGER => {
29549 AlterTableAction::EnableAlwaysTrigger(EnableAlwaysTrigger { syntax })
29550 }
29551 SyntaxKind::ENABLE_REPLICA_RULE => {
29552 AlterTableAction::EnableReplicaRule(EnableReplicaRule { syntax })
29553 }
29554 SyntaxKind::ENABLE_REPLICA_TRIGGER => {
29555 AlterTableAction::EnableReplicaTrigger(EnableReplicaTrigger { syntax })
29556 }
29557 SyntaxKind::ENABLE_RLS => AlterTableAction::EnableRls(EnableRls { syntax }),
29558 SyntaxKind::ENABLE_RULE => AlterTableAction::EnableRule(EnableRule { syntax }),
29559 SyntaxKind::ENABLE_TRIGGER => AlterTableAction::EnableTrigger(EnableTrigger { syntax }),
29560 SyntaxKind::FORCE_RLS => AlterTableAction::ForceRls(ForceRls { syntax }),
29561 SyntaxKind::INHERIT_TABLE => AlterTableAction::InheritTable(InheritTable { syntax }),
29562 SyntaxKind::MERGE_PARTITIONS => {
29563 AlterTableAction::MergePartitions(MergePartitions { syntax })
29564 }
29565 SyntaxKind::NO_FORCE_RLS => AlterTableAction::NoForceRls(NoForceRls { syntax }),
29566 SyntaxKind::NO_INHERIT_TABLE => {
29567 AlterTableAction::NoInheritTable(NoInheritTable { syntax })
29568 }
29569 SyntaxKind::NOT_OF => AlterTableAction::NotOf(NotOf { syntax }),
29570 SyntaxKind::OF_TYPE => AlterTableAction::OfType(OfType { syntax }),
29571 SyntaxKind::OPTION_ITEM_LIST => {
29572 AlterTableAction::OptionItemList(OptionItemList { syntax })
29573 }
29574 SyntaxKind::OWNER_TO => AlterTableAction::OwnerTo(OwnerTo { syntax }),
29575 SyntaxKind::RENAME_COLUMN => AlterTableAction::RenameColumn(RenameColumn { syntax }),
29576 SyntaxKind::RENAME_CONSTRAINT => {
29577 AlterTableAction::RenameConstraint(RenameConstraint { syntax })
29578 }
29579 SyntaxKind::RENAME_TO => AlterTableAction::RenameTo(RenameTo { syntax }),
29580 SyntaxKind::REPLICA_IDENTITY => {
29581 AlterTableAction::ReplicaIdentity(ReplicaIdentity { syntax })
29582 }
29583 SyntaxKind::RESET_OPTIONS => AlterTableAction::ResetOptions(ResetOptions { syntax }),
29584 SyntaxKind::SET_ACCESS_METHOD => {
29585 AlterTableAction::SetAccessMethod(SetAccessMethod { syntax })
29586 }
29587 SyntaxKind::SET_LOGGED => AlterTableAction::SetLogged(SetLogged { syntax }),
29588 SyntaxKind::SET_OPTIONS => AlterTableAction::SetOptions(SetOptions { syntax }),
29589 SyntaxKind::SET_SCHEMA => AlterTableAction::SetSchema(SetSchema { syntax }),
29590 SyntaxKind::SET_TABLESPACE => AlterTableAction::SetTablespace(SetTablespace { syntax }),
29591 SyntaxKind::SET_UNLOGGED => AlterTableAction::SetUnlogged(SetUnlogged { syntax }),
29592 SyntaxKind::SET_WITHOUT_CLUSTER => {
29593 AlterTableAction::SetWithoutCluster(SetWithoutCluster { syntax })
29594 }
29595 SyntaxKind::SET_WITHOUT_OIDS => {
29596 AlterTableAction::SetWithoutOids(SetWithoutOids { syntax })
29597 }
29598 SyntaxKind::SPLIT_PARTITION => {
29599 AlterTableAction::SplitPartition(SplitPartition { syntax })
29600 }
29601 SyntaxKind::VALIDATE_CONSTRAINT => {
29602 AlterTableAction::ValidateConstraint(ValidateConstraint { syntax })
29603 }
29604 _ => {
29605 return None;
29606 }
29607 };
29608 Some(res)
29609 }
29610 #[inline]
29611 fn syntax(&self) -> &SyntaxNode {
29612 match self {
29613 AlterTableAction::AddColumn(it) => &it.syntax,
29614 AlterTableAction::AddConstraint(it) => &it.syntax,
29615 AlterTableAction::AlterColumn(it) => &it.syntax,
29616 AlterTableAction::AlterConstraint(it) => &it.syntax,
29617 AlterTableAction::AttachPartition(it) => &it.syntax,
29618 AlterTableAction::ClusterOn(it) => &it.syntax,
29619 AlterTableAction::DetachPartition(it) => &it.syntax,
29620 AlterTableAction::DisableRls(it) => &it.syntax,
29621 AlterTableAction::DisableRule(it) => &it.syntax,
29622 AlterTableAction::DisableTrigger(it) => &it.syntax,
29623 AlterTableAction::DropColumn(it) => &it.syntax,
29624 AlterTableAction::DropConstraint(it) => &it.syntax,
29625 AlterTableAction::EnableAlwaysRule(it) => &it.syntax,
29626 AlterTableAction::EnableAlwaysTrigger(it) => &it.syntax,
29627 AlterTableAction::EnableReplicaRule(it) => &it.syntax,
29628 AlterTableAction::EnableReplicaTrigger(it) => &it.syntax,
29629 AlterTableAction::EnableRls(it) => &it.syntax,
29630 AlterTableAction::EnableRule(it) => &it.syntax,
29631 AlterTableAction::EnableTrigger(it) => &it.syntax,
29632 AlterTableAction::ForceRls(it) => &it.syntax,
29633 AlterTableAction::InheritTable(it) => &it.syntax,
29634 AlterTableAction::MergePartitions(it) => &it.syntax,
29635 AlterTableAction::NoForceRls(it) => &it.syntax,
29636 AlterTableAction::NoInheritTable(it) => &it.syntax,
29637 AlterTableAction::NotOf(it) => &it.syntax,
29638 AlterTableAction::OfType(it) => &it.syntax,
29639 AlterTableAction::OptionItemList(it) => &it.syntax,
29640 AlterTableAction::OwnerTo(it) => &it.syntax,
29641 AlterTableAction::RenameColumn(it) => &it.syntax,
29642 AlterTableAction::RenameConstraint(it) => &it.syntax,
29643 AlterTableAction::RenameTo(it) => &it.syntax,
29644 AlterTableAction::ReplicaIdentity(it) => &it.syntax,
29645 AlterTableAction::ResetOptions(it) => &it.syntax,
29646 AlterTableAction::SetAccessMethod(it) => &it.syntax,
29647 AlterTableAction::SetLogged(it) => &it.syntax,
29648 AlterTableAction::SetOptions(it) => &it.syntax,
29649 AlterTableAction::SetSchema(it) => &it.syntax,
29650 AlterTableAction::SetTablespace(it) => &it.syntax,
29651 AlterTableAction::SetUnlogged(it) => &it.syntax,
29652 AlterTableAction::SetWithoutCluster(it) => &it.syntax,
29653 AlterTableAction::SetWithoutOids(it) => &it.syntax,
29654 AlterTableAction::SplitPartition(it) => &it.syntax,
29655 AlterTableAction::ValidateConstraint(it) => &it.syntax,
29656 }
29657 }
29658}
29659impl From<AddColumn> for AlterTableAction {
29660 #[inline]
29661 fn from(node: AddColumn) -> AlterTableAction {
29662 AlterTableAction::AddColumn(node)
29663 }
29664}
29665impl From<AddConstraint> for AlterTableAction {
29666 #[inline]
29667 fn from(node: AddConstraint) -> AlterTableAction {
29668 AlterTableAction::AddConstraint(node)
29669 }
29670}
29671impl From<AlterColumn> for AlterTableAction {
29672 #[inline]
29673 fn from(node: AlterColumn) -> AlterTableAction {
29674 AlterTableAction::AlterColumn(node)
29675 }
29676}
29677impl From<AlterConstraint> for AlterTableAction {
29678 #[inline]
29679 fn from(node: AlterConstraint) -> AlterTableAction {
29680 AlterTableAction::AlterConstraint(node)
29681 }
29682}
29683impl From<AttachPartition> for AlterTableAction {
29684 #[inline]
29685 fn from(node: AttachPartition) -> AlterTableAction {
29686 AlterTableAction::AttachPartition(node)
29687 }
29688}
29689impl From<ClusterOn> for AlterTableAction {
29690 #[inline]
29691 fn from(node: ClusterOn) -> AlterTableAction {
29692 AlterTableAction::ClusterOn(node)
29693 }
29694}
29695impl From<DetachPartition> for AlterTableAction {
29696 #[inline]
29697 fn from(node: DetachPartition) -> AlterTableAction {
29698 AlterTableAction::DetachPartition(node)
29699 }
29700}
29701impl From<DisableRls> for AlterTableAction {
29702 #[inline]
29703 fn from(node: DisableRls) -> AlterTableAction {
29704 AlterTableAction::DisableRls(node)
29705 }
29706}
29707impl From<DisableRule> for AlterTableAction {
29708 #[inline]
29709 fn from(node: DisableRule) -> AlterTableAction {
29710 AlterTableAction::DisableRule(node)
29711 }
29712}
29713impl From<DisableTrigger> for AlterTableAction {
29714 #[inline]
29715 fn from(node: DisableTrigger) -> AlterTableAction {
29716 AlterTableAction::DisableTrigger(node)
29717 }
29718}
29719impl From<DropColumn> for AlterTableAction {
29720 #[inline]
29721 fn from(node: DropColumn) -> AlterTableAction {
29722 AlterTableAction::DropColumn(node)
29723 }
29724}
29725impl From<DropConstraint> for AlterTableAction {
29726 #[inline]
29727 fn from(node: DropConstraint) -> AlterTableAction {
29728 AlterTableAction::DropConstraint(node)
29729 }
29730}
29731impl From<EnableAlwaysRule> for AlterTableAction {
29732 #[inline]
29733 fn from(node: EnableAlwaysRule) -> AlterTableAction {
29734 AlterTableAction::EnableAlwaysRule(node)
29735 }
29736}
29737impl From<EnableAlwaysTrigger> for AlterTableAction {
29738 #[inline]
29739 fn from(node: EnableAlwaysTrigger) -> AlterTableAction {
29740 AlterTableAction::EnableAlwaysTrigger(node)
29741 }
29742}
29743impl From<EnableReplicaRule> for AlterTableAction {
29744 #[inline]
29745 fn from(node: EnableReplicaRule) -> AlterTableAction {
29746 AlterTableAction::EnableReplicaRule(node)
29747 }
29748}
29749impl From<EnableReplicaTrigger> for AlterTableAction {
29750 #[inline]
29751 fn from(node: EnableReplicaTrigger) -> AlterTableAction {
29752 AlterTableAction::EnableReplicaTrigger(node)
29753 }
29754}
29755impl From<EnableRls> for AlterTableAction {
29756 #[inline]
29757 fn from(node: EnableRls) -> AlterTableAction {
29758 AlterTableAction::EnableRls(node)
29759 }
29760}
29761impl From<EnableRule> for AlterTableAction {
29762 #[inline]
29763 fn from(node: EnableRule) -> AlterTableAction {
29764 AlterTableAction::EnableRule(node)
29765 }
29766}
29767impl From<EnableTrigger> for AlterTableAction {
29768 #[inline]
29769 fn from(node: EnableTrigger) -> AlterTableAction {
29770 AlterTableAction::EnableTrigger(node)
29771 }
29772}
29773impl From<ForceRls> for AlterTableAction {
29774 #[inline]
29775 fn from(node: ForceRls) -> AlterTableAction {
29776 AlterTableAction::ForceRls(node)
29777 }
29778}
29779impl From<InheritTable> for AlterTableAction {
29780 #[inline]
29781 fn from(node: InheritTable) -> AlterTableAction {
29782 AlterTableAction::InheritTable(node)
29783 }
29784}
29785impl From<MergePartitions> for AlterTableAction {
29786 #[inline]
29787 fn from(node: MergePartitions) -> AlterTableAction {
29788 AlterTableAction::MergePartitions(node)
29789 }
29790}
29791impl From<NoForceRls> for AlterTableAction {
29792 #[inline]
29793 fn from(node: NoForceRls) -> AlterTableAction {
29794 AlterTableAction::NoForceRls(node)
29795 }
29796}
29797impl From<NoInheritTable> for AlterTableAction {
29798 #[inline]
29799 fn from(node: NoInheritTable) -> AlterTableAction {
29800 AlterTableAction::NoInheritTable(node)
29801 }
29802}
29803impl From<NotOf> for AlterTableAction {
29804 #[inline]
29805 fn from(node: NotOf) -> AlterTableAction {
29806 AlterTableAction::NotOf(node)
29807 }
29808}
29809impl From<OfType> for AlterTableAction {
29810 #[inline]
29811 fn from(node: OfType) -> AlterTableAction {
29812 AlterTableAction::OfType(node)
29813 }
29814}
29815impl From<OptionItemList> for AlterTableAction {
29816 #[inline]
29817 fn from(node: OptionItemList) -> AlterTableAction {
29818 AlterTableAction::OptionItemList(node)
29819 }
29820}
29821impl From<OwnerTo> for AlterTableAction {
29822 #[inline]
29823 fn from(node: OwnerTo) -> AlterTableAction {
29824 AlterTableAction::OwnerTo(node)
29825 }
29826}
29827impl From<RenameColumn> for AlterTableAction {
29828 #[inline]
29829 fn from(node: RenameColumn) -> AlterTableAction {
29830 AlterTableAction::RenameColumn(node)
29831 }
29832}
29833impl From<RenameConstraint> for AlterTableAction {
29834 #[inline]
29835 fn from(node: RenameConstraint) -> AlterTableAction {
29836 AlterTableAction::RenameConstraint(node)
29837 }
29838}
29839impl From<RenameTo> for AlterTableAction {
29840 #[inline]
29841 fn from(node: RenameTo) -> AlterTableAction {
29842 AlterTableAction::RenameTo(node)
29843 }
29844}
29845impl From<ReplicaIdentity> for AlterTableAction {
29846 #[inline]
29847 fn from(node: ReplicaIdentity) -> AlterTableAction {
29848 AlterTableAction::ReplicaIdentity(node)
29849 }
29850}
29851impl From<ResetOptions> for AlterTableAction {
29852 #[inline]
29853 fn from(node: ResetOptions) -> AlterTableAction {
29854 AlterTableAction::ResetOptions(node)
29855 }
29856}
29857impl From<SetAccessMethod> for AlterTableAction {
29858 #[inline]
29859 fn from(node: SetAccessMethod) -> AlterTableAction {
29860 AlterTableAction::SetAccessMethod(node)
29861 }
29862}
29863impl From<SetLogged> for AlterTableAction {
29864 #[inline]
29865 fn from(node: SetLogged) -> AlterTableAction {
29866 AlterTableAction::SetLogged(node)
29867 }
29868}
29869impl From<SetOptions> for AlterTableAction {
29870 #[inline]
29871 fn from(node: SetOptions) -> AlterTableAction {
29872 AlterTableAction::SetOptions(node)
29873 }
29874}
29875impl From<SetSchema> for AlterTableAction {
29876 #[inline]
29877 fn from(node: SetSchema) -> AlterTableAction {
29878 AlterTableAction::SetSchema(node)
29879 }
29880}
29881impl From<SetTablespace> for AlterTableAction {
29882 #[inline]
29883 fn from(node: SetTablespace) -> AlterTableAction {
29884 AlterTableAction::SetTablespace(node)
29885 }
29886}
29887impl From<SetUnlogged> for AlterTableAction {
29888 #[inline]
29889 fn from(node: SetUnlogged) -> AlterTableAction {
29890 AlterTableAction::SetUnlogged(node)
29891 }
29892}
29893impl From<SetWithoutCluster> for AlterTableAction {
29894 #[inline]
29895 fn from(node: SetWithoutCluster) -> AlterTableAction {
29896 AlterTableAction::SetWithoutCluster(node)
29897 }
29898}
29899impl From<SetWithoutOids> for AlterTableAction {
29900 #[inline]
29901 fn from(node: SetWithoutOids) -> AlterTableAction {
29902 AlterTableAction::SetWithoutOids(node)
29903 }
29904}
29905impl From<SplitPartition> for AlterTableAction {
29906 #[inline]
29907 fn from(node: SplitPartition) -> AlterTableAction {
29908 AlterTableAction::SplitPartition(node)
29909 }
29910}
29911impl From<ValidateConstraint> for AlterTableAction {
29912 #[inline]
29913 fn from(node: ValidateConstraint) -> AlterTableAction {
29914 AlterTableAction::ValidateConstraint(node)
29915 }
29916}
29917impl AstNode for ColumnConstraint {
29918 #[inline]
29919 fn can_cast(kind: SyntaxKind) -> bool {
29920 matches!(
29921 kind,
29922 SyntaxKind::CHECK_CONSTRAINT
29923 | SyntaxKind::DEFAULT_CONSTRAINT
29924 | SyntaxKind::EXCLUDE_CONSTRAINT
29925 | SyntaxKind::NOT_NULL_CONSTRAINT
29926 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
29927 | SyntaxKind::REFERENCES_CONSTRAINT
29928 | SyntaxKind::UNIQUE_CONSTRAINT
29929 )
29930 }
29931 #[inline]
29932 fn cast(syntax: SyntaxNode) -> Option<Self> {
29933 let res = match syntax.kind() {
29934 SyntaxKind::CHECK_CONSTRAINT => {
29935 ColumnConstraint::CheckConstraint(CheckConstraint { syntax })
29936 }
29937 SyntaxKind::DEFAULT_CONSTRAINT => {
29938 ColumnConstraint::DefaultConstraint(DefaultConstraint { syntax })
29939 }
29940 SyntaxKind::EXCLUDE_CONSTRAINT => {
29941 ColumnConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
29942 }
29943 SyntaxKind::NOT_NULL_CONSTRAINT => {
29944 ColumnConstraint::NotNullConstraint(NotNullConstraint { syntax })
29945 }
29946 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
29947 ColumnConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
29948 }
29949 SyntaxKind::REFERENCES_CONSTRAINT => {
29950 ColumnConstraint::ReferencesConstraint(ReferencesConstraint { syntax })
29951 }
29952 SyntaxKind::UNIQUE_CONSTRAINT => {
29953 ColumnConstraint::UniqueConstraint(UniqueConstraint { syntax })
29954 }
29955 _ => {
29956 return None;
29957 }
29958 };
29959 Some(res)
29960 }
29961 #[inline]
29962 fn syntax(&self) -> &SyntaxNode {
29963 match self {
29964 ColumnConstraint::CheckConstraint(it) => &it.syntax,
29965 ColumnConstraint::DefaultConstraint(it) => &it.syntax,
29966 ColumnConstraint::ExcludeConstraint(it) => &it.syntax,
29967 ColumnConstraint::NotNullConstraint(it) => &it.syntax,
29968 ColumnConstraint::PrimaryKeyConstraint(it) => &it.syntax,
29969 ColumnConstraint::ReferencesConstraint(it) => &it.syntax,
29970 ColumnConstraint::UniqueConstraint(it) => &it.syntax,
29971 }
29972 }
29973}
29974impl From<CheckConstraint> for ColumnConstraint {
29975 #[inline]
29976 fn from(node: CheckConstraint) -> ColumnConstraint {
29977 ColumnConstraint::CheckConstraint(node)
29978 }
29979}
29980impl From<DefaultConstraint> for ColumnConstraint {
29981 #[inline]
29982 fn from(node: DefaultConstraint) -> ColumnConstraint {
29983 ColumnConstraint::DefaultConstraint(node)
29984 }
29985}
29986impl From<ExcludeConstraint> for ColumnConstraint {
29987 #[inline]
29988 fn from(node: ExcludeConstraint) -> ColumnConstraint {
29989 ColumnConstraint::ExcludeConstraint(node)
29990 }
29991}
29992impl From<NotNullConstraint> for ColumnConstraint {
29993 #[inline]
29994 fn from(node: NotNullConstraint) -> ColumnConstraint {
29995 ColumnConstraint::NotNullConstraint(node)
29996 }
29997}
29998impl From<PrimaryKeyConstraint> for ColumnConstraint {
29999 #[inline]
30000 fn from(node: PrimaryKeyConstraint) -> ColumnConstraint {
30001 ColumnConstraint::PrimaryKeyConstraint(node)
30002 }
30003}
30004impl From<ReferencesConstraint> for ColumnConstraint {
30005 #[inline]
30006 fn from(node: ReferencesConstraint) -> ColumnConstraint {
30007 ColumnConstraint::ReferencesConstraint(node)
30008 }
30009}
30010impl From<UniqueConstraint> for ColumnConstraint {
30011 #[inline]
30012 fn from(node: UniqueConstraint) -> ColumnConstraint {
30013 ColumnConstraint::UniqueConstraint(node)
30014 }
30015}
30016impl AstNode for ConfigValue {
30017 #[inline]
30018 fn can_cast(kind: SyntaxKind) -> bool {
30019 matches!(kind, SyntaxKind::LITERAL | SyntaxKind::NAME_REF)
30020 }
30021 #[inline]
30022 fn cast(syntax: SyntaxNode) -> Option<Self> {
30023 let res = match syntax.kind() {
30024 SyntaxKind::LITERAL => ConfigValue::Literal(Literal { syntax }),
30025 SyntaxKind::NAME_REF => ConfigValue::NameRef(NameRef { syntax }),
30026 _ => {
30027 return None;
30028 }
30029 };
30030 Some(res)
30031 }
30032 #[inline]
30033 fn syntax(&self) -> &SyntaxNode {
30034 match self {
30035 ConfigValue::Literal(it) => &it.syntax,
30036 ConfigValue::NameRef(it) => &it.syntax,
30037 }
30038 }
30039}
30040impl From<Literal> for ConfigValue {
30041 #[inline]
30042 fn from(node: Literal) -> ConfigValue {
30043 ConfigValue::Literal(node)
30044 }
30045}
30046impl From<NameRef> for ConfigValue {
30047 #[inline]
30048 fn from(node: NameRef) -> ConfigValue {
30049 ConfigValue::NameRef(node)
30050 }
30051}
30052impl AstNode for ConflictAction {
30053 #[inline]
30054 fn can_cast(kind: SyntaxKind) -> bool {
30055 matches!(
30056 kind,
30057 SyntaxKind::CONFLICT_DO_NOTHING
30058 | SyntaxKind::CONFLICT_DO_SELECT
30059 | SyntaxKind::CONFLICT_DO_UPDATE_SET
30060 )
30061 }
30062 #[inline]
30063 fn cast(syntax: SyntaxNode) -> Option<Self> {
30064 let res = match syntax.kind() {
30065 SyntaxKind::CONFLICT_DO_NOTHING => {
30066 ConflictAction::ConflictDoNothing(ConflictDoNothing { syntax })
30067 }
30068 SyntaxKind::CONFLICT_DO_SELECT => {
30069 ConflictAction::ConflictDoSelect(ConflictDoSelect { syntax })
30070 }
30071 SyntaxKind::CONFLICT_DO_UPDATE_SET => {
30072 ConflictAction::ConflictDoUpdateSet(ConflictDoUpdateSet { syntax })
30073 }
30074 _ => {
30075 return None;
30076 }
30077 };
30078 Some(res)
30079 }
30080 #[inline]
30081 fn syntax(&self) -> &SyntaxNode {
30082 match self {
30083 ConflictAction::ConflictDoNothing(it) => &it.syntax,
30084 ConflictAction::ConflictDoSelect(it) => &it.syntax,
30085 ConflictAction::ConflictDoUpdateSet(it) => &it.syntax,
30086 }
30087 }
30088}
30089impl From<ConflictDoNothing> for ConflictAction {
30090 #[inline]
30091 fn from(node: ConflictDoNothing) -> ConflictAction {
30092 ConflictAction::ConflictDoNothing(node)
30093 }
30094}
30095impl From<ConflictDoSelect> for ConflictAction {
30096 #[inline]
30097 fn from(node: ConflictDoSelect) -> ConflictAction {
30098 ConflictAction::ConflictDoSelect(node)
30099 }
30100}
30101impl From<ConflictDoUpdateSet> for ConflictAction {
30102 #[inline]
30103 fn from(node: ConflictDoUpdateSet) -> ConflictAction {
30104 ConflictAction::ConflictDoUpdateSet(node)
30105 }
30106}
30107impl AstNode for ConflictTarget {
30108 #[inline]
30109 fn can_cast(kind: SyntaxKind) -> bool {
30110 matches!(
30111 kind,
30112 SyntaxKind::CONFLICT_ON_CONSTRAINT | SyntaxKind::CONFLICT_ON_INDEX
30113 )
30114 }
30115 #[inline]
30116 fn cast(syntax: SyntaxNode) -> Option<Self> {
30117 let res = match syntax.kind() {
30118 SyntaxKind::CONFLICT_ON_CONSTRAINT => {
30119 ConflictTarget::ConflictOnConstraint(ConflictOnConstraint { syntax })
30120 }
30121 SyntaxKind::CONFLICT_ON_INDEX => {
30122 ConflictTarget::ConflictOnIndex(ConflictOnIndex { syntax })
30123 }
30124 _ => {
30125 return None;
30126 }
30127 };
30128 Some(res)
30129 }
30130 #[inline]
30131 fn syntax(&self) -> &SyntaxNode {
30132 match self {
30133 ConflictTarget::ConflictOnConstraint(it) => &it.syntax,
30134 ConflictTarget::ConflictOnIndex(it) => &it.syntax,
30135 }
30136 }
30137}
30138impl From<ConflictOnConstraint> for ConflictTarget {
30139 #[inline]
30140 fn from(node: ConflictOnConstraint) -> ConflictTarget {
30141 ConflictTarget::ConflictOnConstraint(node)
30142 }
30143}
30144impl From<ConflictOnIndex> for ConflictTarget {
30145 #[inline]
30146 fn from(node: ConflictOnIndex) -> ConflictTarget {
30147 ConflictTarget::ConflictOnIndex(node)
30148 }
30149}
30150impl AstNode for Constraint {
30151 #[inline]
30152 fn can_cast(kind: SyntaxKind) -> bool {
30153 matches!(
30154 kind,
30155 SyntaxKind::CHECK_CONSTRAINT
30156 | SyntaxKind::DEFAULT_CONSTRAINT
30157 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
30158 | SyntaxKind::GENERATED_CONSTRAINT
30159 | SyntaxKind::NOT_NULL_CONSTRAINT
30160 | SyntaxKind::NULL_CONSTRAINT
30161 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
30162 | SyntaxKind::REFERENCES_CONSTRAINT
30163 | SyntaxKind::UNIQUE_CONSTRAINT
30164 )
30165 }
30166 #[inline]
30167 fn cast(syntax: SyntaxNode) -> Option<Self> {
30168 let res = match syntax.kind() {
30169 SyntaxKind::CHECK_CONSTRAINT => Constraint::CheckConstraint(CheckConstraint { syntax }),
30170 SyntaxKind::DEFAULT_CONSTRAINT => {
30171 Constraint::DefaultConstraint(DefaultConstraint { syntax })
30172 }
30173 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
30174 Constraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
30175 }
30176 SyntaxKind::GENERATED_CONSTRAINT => {
30177 Constraint::GeneratedConstraint(GeneratedConstraint { syntax })
30178 }
30179 SyntaxKind::NOT_NULL_CONSTRAINT => {
30180 Constraint::NotNullConstraint(NotNullConstraint { syntax })
30181 }
30182 SyntaxKind::NULL_CONSTRAINT => Constraint::NullConstraint(NullConstraint { syntax }),
30183 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
30184 Constraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
30185 }
30186 SyntaxKind::REFERENCES_CONSTRAINT => {
30187 Constraint::ReferencesConstraint(ReferencesConstraint { syntax })
30188 }
30189 SyntaxKind::UNIQUE_CONSTRAINT => {
30190 Constraint::UniqueConstraint(UniqueConstraint { syntax })
30191 }
30192 _ => {
30193 return None;
30194 }
30195 };
30196 Some(res)
30197 }
30198 #[inline]
30199 fn syntax(&self) -> &SyntaxNode {
30200 match self {
30201 Constraint::CheckConstraint(it) => &it.syntax,
30202 Constraint::DefaultConstraint(it) => &it.syntax,
30203 Constraint::ForeignKeyConstraint(it) => &it.syntax,
30204 Constraint::GeneratedConstraint(it) => &it.syntax,
30205 Constraint::NotNullConstraint(it) => &it.syntax,
30206 Constraint::NullConstraint(it) => &it.syntax,
30207 Constraint::PrimaryKeyConstraint(it) => &it.syntax,
30208 Constraint::ReferencesConstraint(it) => &it.syntax,
30209 Constraint::UniqueConstraint(it) => &it.syntax,
30210 }
30211 }
30212}
30213impl From<CheckConstraint> for Constraint {
30214 #[inline]
30215 fn from(node: CheckConstraint) -> Constraint {
30216 Constraint::CheckConstraint(node)
30217 }
30218}
30219impl From<DefaultConstraint> for Constraint {
30220 #[inline]
30221 fn from(node: DefaultConstraint) -> Constraint {
30222 Constraint::DefaultConstraint(node)
30223 }
30224}
30225impl From<ForeignKeyConstraint> for Constraint {
30226 #[inline]
30227 fn from(node: ForeignKeyConstraint) -> Constraint {
30228 Constraint::ForeignKeyConstraint(node)
30229 }
30230}
30231impl From<GeneratedConstraint> for Constraint {
30232 #[inline]
30233 fn from(node: GeneratedConstraint) -> Constraint {
30234 Constraint::GeneratedConstraint(node)
30235 }
30236}
30237impl From<NotNullConstraint> for Constraint {
30238 #[inline]
30239 fn from(node: NotNullConstraint) -> Constraint {
30240 Constraint::NotNullConstraint(node)
30241 }
30242}
30243impl From<NullConstraint> for Constraint {
30244 #[inline]
30245 fn from(node: NullConstraint) -> Constraint {
30246 Constraint::NullConstraint(node)
30247 }
30248}
30249impl From<PrimaryKeyConstraint> for Constraint {
30250 #[inline]
30251 fn from(node: PrimaryKeyConstraint) -> Constraint {
30252 Constraint::PrimaryKeyConstraint(node)
30253 }
30254}
30255impl From<ReferencesConstraint> for Constraint {
30256 #[inline]
30257 fn from(node: ReferencesConstraint) -> Constraint {
30258 Constraint::ReferencesConstraint(node)
30259 }
30260}
30261impl From<UniqueConstraint> for Constraint {
30262 #[inline]
30263 fn from(node: UniqueConstraint) -> Constraint {
30264 Constraint::UniqueConstraint(node)
30265 }
30266}
30267impl AstNode for ExplainStmt {
30268 #[inline]
30269 fn can_cast(kind: SyntaxKind) -> bool {
30270 matches!(
30271 kind,
30272 SyntaxKind::COMPOUND_SELECT
30273 | SyntaxKind::CREATE_MATERIALIZED_VIEW
30274 | SyntaxKind::CREATE_TABLE_AS
30275 | SyntaxKind::DECLARE
30276 | SyntaxKind::DELETE
30277 | SyntaxKind::EXECUTE
30278 | SyntaxKind::INSERT
30279 | SyntaxKind::MERGE
30280 | SyntaxKind::PAREN_SELECT
30281 | SyntaxKind::SELECT
30282 | SyntaxKind::SELECT_INTO
30283 | SyntaxKind::TABLE
30284 | SyntaxKind::UPDATE
30285 | SyntaxKind::VALUES
30286 )
30287 }
30288 #[inline]
30289 fn cast(syntax: SyntaxNode) -> Option<Self> {
30290 let res = match syntax.kind() {
30291 SyntaxKind::COMPOUND_SELECT => ExplainStmt::CompoundSelect(CompoundSelect { syntax }),
30292 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
30293 ExplainStmt::CreateMaterializedView(CreateMaterializedView { syntax })
30294 }
30295 SyntaxKind::CREATE_TABLE_AS => ExplainStmt::CreateTableAs(CreateTableAs { syntax }),
30296 SyntaxKind::DECLARE => ExplainStmt::Declare(Declare { syntax }),
30297 SyntaxKind::DELETE => ExplainStmt::Delete(Delete { syntax }),
30298 SyntaxKind::EXECUTE => ExplainStmt::Execute(Execute { syntax }),
30299 SyntaxKind::INSERT => ExplainStmt::Insert(Insert { syntax }),
30300 SyntaxKind::MERGE => ExplainStmt::Merge(Merge { syntax }),
30301 SyntaxKind::PAREN_SELECT => ExplainStmt::ParenSelect(ParenSelect { syntax }),
30302 SyntaxKind::SELECT => ExplainStmt::Select(Select { syntax }),
30303 SyntaxKind::SELECT_INTO => ExplainStmt::SelectInto(SelectInto { syntax }),
30304 SyntaxKind::TABLE => ExplainStmt::Table(Table { syntax }),
30305 SyntaxKind::UPDATE => ExplainStmt::Update(Update { syntax }),
30306 SyntaxKind::VALUES => ExplainStmt::Values(Values { syntax }),
30307 _ => {
30308 return None;
30309 }
30310 };
30311 Some(res)
30312 }
30313 #[inline]
30314 fn syntax(&self) -> &SyntaxNode {
30315 match self {
30316 ExplainStmt::CompoundSelect(it) => &it.syntax,
30317 ExplainStmt::CreateMaterializedView(it) => &it.syntax,
30318 ExplainStmt::CreateTableAs(it) => &it.syntax,
30319 ExplainStmt::Declare(it) => &it.syntax,
30320 ExplainStmt::Delete(it) => &it.syntax,
30321 ExplainStmt::Execute(it) => &it.syntax,
30322 ExplainStmt::Insert(it) => &it.syntax,
30323 ExplainStmt::Merge(it) => &it.syntax,
30324 ExplainStmt::ParenSelect(it) => &it.syntax,
30325 ExplainStmt::Select(it) => &it.syntax,
30326 ExplainStmt::SelectInto(it) => &it.syntax,
30327 ExplainStmt::Table(it) => &it.syntax,
30328 ExplainStmt::Update(it) => &it.syntax,
30329 ExplainStmt::Values(it) => &it.syntax,
30330 }
30331 }
30332}
30333impl From<CompoundSelect> for ExplainStmt {
30334 #[inline]
30335 fn from(node: CompoundSelect) -> ExplainStmt {
30336 ExplainStmt::CompoundSelect(node)
30337 }
30338}
30339impl From<CreateMaterializedView> for ExplainStmt {
30340 #[inline]
30341 fn from(node: CreateMaterializedView) -> ExplainStmt {
30342 ExplainStmt::CreateMaterializedView(node)
30343 }
30344}
30345impl From<CreateTableAs> for ExplainStmt {
30346 #[inline]
30347 fn from(node: CreateTableAs) -> ExplainStmt {
30348 ExplainStmt::CreateTableAs(node)
30349 }
30350}
30351impl From<Declare> for ExplainStmt {
30352 #[inline]
30353 fn from(node: Declare) -> ExplainStmt {
30354 ExplainStmt::Declare(node)
30355 }
30356}
30357impl From<Delete> for ExplainStmt {
30358 #[inline]
30359 fn from(node: Delete) -> ExplainStmt {
30360 ExplainStmt::Delete(node)
30361 }
30362}
30363impl From<Execute> for ExplainStmt {
30364 #[inline]
30365 fn from(node: Execute) -> ExplainStmt {
30366 ExplainStmt::Execute(node)
30367 }
30368}
30369impl From<Insert> for ExplainStmt {
30370 #[inline]
30371 fn from(node: Insert) -> ExplainStmt {
30372 ExplainStmt::Insert(node)
30373 }
30374}
30375impl From<Merge> for ExplainStmt {
30376 #[inline]
30377 fn from(node: Merge) -> ExplainStmt {
30378 ExplainStmt::Merge(node)
30379 }
30380}
30381impl From<ParenSelect> for ExplainStmt {
30382 #[inline]
30383 fn from(node: ParenSelect) -> ExplainStmt {
30384 ExplainStmt::ParenSelect(node)
30385 }
30386}
30387impl From<Select> for ExplainStmt {
30388 #[inline]
30389 fn from(node: Select) -> ExplainStmt {
30390 ExplainStmt::Select(node)
30391 }
30392}
30393impl From<SelectInto> for ExplainStmt {
30394 #[inline]
30395 fn from(node: SelectInto) -> ExplainStmt {
30396 ExplainStmt::SelectInto(node)
30397 }
30398}
30399impl From<Table> for ExplainStmt {
30400 #[inline]
30401 fn from(node: Table) -> ExplainStmt {
30402 ExplainStmt::Table(node)
30403 }
30404}
30405impl From<Update> for ExplainStmt {
30406 #[inline]
30407 fn from(node: Update) -> ExplainStmt {
30408 ExplainStmt::Update(node)
30409 }
30410}
30411impl From<Values> for ExplainStmt {
30412 #[inline]
30413 fn from(node: Values) -> ExplainStmt {
30414 ExplainStmt::Values(node)
30415 }
30416}
30417impl AstNode for Expr {
30418 #[inline]
30419 fn can_cast(kind: SyntaxKind) -> bool {
30420 matches!(
30421 kind,
30422 SyntaxKind::ARRAY_EXPR
30423 | SyntaxKind::BETWEEN_EXPR
30424 | SyntaxKind::BIN_EXPR
30425 | SyntaxKind::CALL_EXPR
30426 | SyntaxKind::CASE_EXPR
30427 | SyntaxKind::CAST_EXPR
30428 | SyntaxKind::FIELD_EXPR
30429 | SyntaxKind::INDEX_EXPR
30430 | SyntaxKind::LITERAL
30431 | SyntaxKind::NAME_REF
30432 | SyntaxKind::PAREN_EXPR
30433 | SyntaxKind::POSTFIX_EXPR
30434 | SyntaxKind::PREFIX_EXPR
30435 | SyntaxKind::SLICE_EXPR
30436 | SyntaxKind::TUPLE_EXPR
30437 )
30438 }
30439 #[inline]
30440 fn cast(syntax: SyntaxNode) -> Option<Self> {
30441 let res = match syntax.kind() {
30442 SyntaxKind::ARRAY_EXPR => Expr::ArrayExpr(ArrayExpr { syntax }),
30443 SyntaxKind::BETWEEN_EXPR => Expr::BetweenExpr(BetweenExpr { syntax }),
30444 SyntaxKind::BIN_EXPR => Expr::BinExpr(BinExpr { syntax }),
30445 SyntaxKind::CALL_EXPR => Expr::CallExpr(CallExpr { syntax }),
30446 SyntaxKind::CASE_EXPR => Expr::CaseExpr(CaseExpr { syntax }),
30447 SyntaxKind::CAST_EXPR => Expr::CastExpr(CastExpr { syntax }),
30448 SyntaxKind::FIELD_EXPR => Expr::FieldExpr(FieldExpr { syntax }),
30449 SyntaxKind::INDEX_EXPR => Expr::IndexExpr(IndexExpr { syntax }),
30450 SyntaxKind::LITERAL => Expr::Literal(Literal { syntax }),
30451 SyntaxKind::NAME_REF => Expr::NameRef(NameRef { syntax }),
30452 SyntaxKind::PAREN_EXPR => Expr::ParenExpr(ParenExpr { syntax }),
30453 SyntaxKind::POSTFIX_EXPR => Expr::PostfixExpr(PostfixExpr { syntax }),
30454 SyntaxKind::PREFIX_EXPR => Expr::PrefixExpr(PrefixExpr { syntax }),
30455 SyntaxKind::SLICE_EXPR => Expr::SliceExpr(SliceExpr { syntax }),
30456 SyntaxKind::TUPLE_EXPR => Expr::TupleExpr(TupleExpr { syntax }),
30457 _ => {
30458 return None;
30459 }
30460 };
30461 Some(res)
30462 }
30463 #[inline]
30464 fn syntax(&self) -> &SyntaxNode {
30465 match self {
30466 Expr::ArrayExpr(it) => &it.syntax,
30467 Expr::BetweenExpr(it) => &it.syntax,
30468 Expr::BinExpr(it) => &it.syntax,
30469 Expr::CallExpr(it) => &it.syntax,
30470 Expr::CaseExpr(it) => &it.syntax,
30471 Expr::CastExpr(it) => &it.syntax,
30472 Expr::FieldExpr(it) => &it.syntax,
30473 Expr::IndexExpr(it) => &it.syntax,
30474 Expr::Literal(it) => &it.syntax,
30475 Expr::NameRef(it) => &it.syntax,
30476 Expr::ParenExpr(it) => &it.syntax,
30477 Expr::PostfixExpr(it) => &it.syntax,
30478 Expr::PrefixExpr(it) => &it.syntax,
30479 Expr::SliceExpr(it) => &it.syntax,
30480 Expr::TupleExpr(it) => &it.syntax,
30481 }
30482 }
30483}
30484impl From<ArrayExpr> for Expr {
30485 #[inline]
30486 fn from(node: ArrayExpr) -> Expr {
30487 Expr::ArrayExpr(node)
30488 }
30489}
30490impl From<BetweenExpr> for Expr {
30491 #[inline]
30492 fn from(node: BetweenExpr) -> Expr {
30493 Expr::BetweenExpr(node)
30494 }
30495}
30496impl From<BinExpr> for Expr {
30497 #[inline]
30498 fn from(node: BinExpr) -> Expr {
30499 Expr::BinExpr(node)
30500 }
30501}
30502impl From<CallExpr> for Expr {
30503 #[inline]
30504 fn from(node: CallExpr) -> Expr {
30505 Expr::CallExpr(node)
30506 }
30507}
30508impl From<CaseExpr> for Expr {
30509 #[inline]
30510 fn from(node: CaseExpr) -> Expr {
30511 Expr::CaseExpr(node)
30512 }
30513}
30514impl From<CastExpr> for Expr {
30515 #[inline]
30516 fn from(node: CastExpr) -> Expr {
30517 Expr::CastExpr(node)
30518 }
30519}
30520impl From<FieldExpr> for Expr {
30521 #[inline]
30522 fn from(node: FieldExpr) -> Expr {
30523 Expr::FieldExpr(node)
30524 }
30525}
30526impl From<IndexExpr> for Expr {
30527 #[inline]
30528 fn from(node: IndexExpr) -> Expr {
30529 Expr::IndexExpr(node)
30530 }
30531}
30532impl From<Literal> for Expr {
30533 #[inline]
30534 fn from(node: Literal) -> Expr {
30535 Expr::Literal(node)
30536 }
30537}
30538impl From<NameRef> for Expr {
30539 #[inline]
30540 fn from(node: NameRef) -> Expr {
30541 Expr::NameRef(node)
30542 }
30543}
30544impl From<ParenExpr> for Expr {
30545 #[inline]
30546 fn from(node: ParenExpr) -> Expr {
30547 Expr::ParenExpr(node)
30548 }
30549}
30550impl From<PostfixExpr> for Expr {
30551 #[inline]
30552 fn from(node: PostfixExpr) -> Expr {
30553 Expr::PostfixExpr(node)
30554 }
30555}
30556impl From<PrefixExpr> for Expr {
30557 #[inline]
30558 fn from(node: PrefixExpr) -> Expr {
30559 Expr::PrefixExpr(node)
30560 }
30561}
30562impl From<SliceExpr> for Expr {
30563 #[inline]
30564 fn from(node: SliceExpr) -> Expr {
30565 Expr::SliceExpr(node)
30566 }
30567}
30568impl From<TupleExpr> for Expr {
30569 #[inline]
30570 fn from(node: TupleExpr) -> Expr {
30571 Expr::TupleExpr(node)
30572 }
30573}
30574impl AstNode for FuncOption {
30575 #[inline]
30576 fn can_cast(kind: SyntaxKind) -> bool {
30577 matches!(
30578 kind,
30579 SyntaxKind::AS_FUNC_OPTION
30580 | SyntaxKind::BEGIN_FUNC_OPTION_LIST
30581 | SyntaxKind::COST_FUNC_OPTION
30582 | SyntaxKind::LANGUAGE_FUNC_OPTION
30583 | SyntaxKind::LEAKPROOF_FUNC_OPTION
30584 | SyntaxKind::PARALLEL_FUNC_OPTION
30585 | SyntaxKind::RESET_FUNC_OPTION
30586 | SyntaxKind::RETURN_FUNC_OPTION
30587 | SyntaxKind::ROWS_FUNC_OPTION
30588 | SyntaxKind::SECURITY_FUNC_OPTION
30589 | SyntaxKind::SET_FUNC_OPTION
30590 | SyntaxKind::STRICT_FUNC_OPTION
30591 | SyntaxKind::SUPPORT_FUNC_OPTION
30592 | SyntaxKind::TRANSFORM_FUNC_OPTION
30593 | SyntaxKind::VOLATILITY_FUNC_OPTION
30594 | SyntaxKind::WINDOW_FUNC_OPTION
30595 )
30596 }
30597 #[inline]
30598 fn cast(syntax: SyntaxNode) -> Option<Self> {
30599 let res = match syntax.kind() {
30600 SyntaxKind::AS_FUNC_OPTION => FuncOption::AsFuncOption(AsFuncOption { syntax }),
30601 SyntaxKind::BEGIN_FUNC_OPTION_LIST => {
30602 FuncOption::BeginFuncOptionList(BeginFuncOptionList { syntax })
30603 }
30604 SyntaxKind::COST_FUNC_OPTION => FuncOption::CostFuncOption(CostFuncOption { syntax }),
30605 SyntaxKind::LANGUAGE_FUNC_OPTION => {
30606 FuncOption::LanguageFuncOption(LanguageFuncOption { syntax })
30607 }
30608 SyntaxKind::LEAKPROOF_FUNC_OPTION => {
30609 FuncOption::LeakproofFuncOption(LeakproofFuncOption { syntax })
30610 }
30611 SyntaxKind::PARALLEL_FUNC_OPTION => {
30612 FuncOption::ParallelFuncOption(ParallelFuncOption { syntax })
30613 }
30614 SyntaxKind::RESET_FUNC_OPTION => {
30615 FuncOption::ResetFuncOption(ResetFuncOption { syntax })
30616 }
30617 SyntaxKind::RETURN_FUNC_OPTION => {
30618 FuncOption::ReturnFuncOption(ReturnFuncOption { syntax })
30619 }
30620 SyntaxKind::ROWS_FUNC_OPTION => FuncOption::RowsFuncOption(RowsFuncOption { syntax }),
30621 SyntaxKind::SECURITY_FUNC_OPTION => {
30622 FuncOption::SecurityFuncOption(SecurityFuncOption { syntax })
30623 }
30624 SyntaxKind::SET_FUNC_OPTION => FuncOption::SetFuncOption(SetFuncOption { syntax }),
30625 SyntaxKind::STRICT_FUNC_OPTION => {
30626 FuncOption::StrictFuncOption(StrictFuncOption { syntax })
30627 }
30628 SyntaxKind::SUPPORT_FUNC_OPTION => {
30629 FuncOption::SupportFuncOption(SupportFuncOption { syntax })
30630 }
30631 SyntaxKind::TRANSFORM_FUNC_OPTION => {
30632 FuncOption::TransformFuncOption(TransformFuncOption { syntax })
30633 }
30634 SyntaxKind::VOLATILITY_FUNC_OPTION => {
30635 FuncOption::VolatilityFuncOption(VolatilityFuncOption { syntax })
30636 }
30637 SyntaxKind::WINDOW_FUNC_OPTION => {
30638 FuncOption::WindowFuncOption(WindowFuncOption { syntax })
30639 }
30640 _ => {
30641 return None;
30642 }
30643 };
30644 Some(res)
30645 }
30646 #[inline]
30647 fn syntax(&self) -> &SyntaxNode {
30648 match self {
30649 FuncOption::AsFuncOption(it) => &it.syntax,
30650 FuncOption::BeginFuncOptionList(it) => &it.syntax,
30651 FuncOption::CostFuncOption(it) => &it.syntax,
30652 FuncOption::LanguageFuncOption(it) => &it.syntax,
30653 FuncOption::LeakproofFuncOption(it) => &it.syntax,
30654 FuncOption::ParallelFuncOption(it) => &it.syntax,
30655 FuncOption::ResetFuncOption(it) => &it.syntax,
30656 FuncOption::ReturnFuncOption(it) => &it.syntax,
30657 FuncOption::RowsFuncOption(it) => &it.syntax,
30658 FuncOption::SecurityFuncOption(it) => &it.syntax,
30659 FuncOption::SetFuncOption(it) => &it.syntax,
30660 FuncOption::StrictFuncOption(it) => &it.syntax,
30661 FuncOption::SupportFuncOption(it) => &it.syntax,
30662 FuncOption::TransformFuncOption(it) => &it.syntax,
30663 FuncOption::VolatilityFuncOption(it) => &it.syntax,
30664 FuncOption::WindowFuncOption(it) => &it.syntax,
30665 }
30666 }
30667}
30668impl From<AsFuncOption> for FuncOption {
30669 #[inline]
30670 fn from(node: AsFuncOption) -> FuncOption {
30671 FuncOption::AsFuncOption(node)
30672 }
30673}
30674impl From<BeginFuncOptionList> for FuncOption {
30675 #[inline]
30676 fn from(node: BeginFuncOptionList) -> FuncOption {
30677 FuncOption::BeginFuncOptionList(node)
30678 }
30679}
30680impl From<CostFuncOption> for FuncOption {
30681 #[inline]
30682 fn from(node: CostFuncOption) -> FuncOption {
30683 FuncOption::CostFuncOption(node)
30684 }
30685}
30686impl From<LanguageFuncOption> for FuncOption {
30687 #[inline]
30688 fn from(node: LanguageFuncOption) -> FuncOption {
30689 FuncOption::LanguageFuncOption(node)
30690 }
30691}
30692impl From<LeakproofFuncOption> for FuncOption {
30693 #[inline]
30694 fn from(node: LeakproofFuncOption) -> FuncOption {
30695 FuncOption::LeakproofFuncOption(node)
30696 }
30697}
30698impl From<ParallelFuncOption> for FuncOption {
30699 #[inline]
30700 fn from(node: ParallelFuncOption) -> FuncOption {
30701 FuncOption::ParallelFuncOption(node)
30702 }
30703}
30704impl From<ResetFuncOption> for FuncOption {
30705 #[inline]
30706 fn from(node: ResetFuncOption) -> FuncOption {
30707 FuncOption::ResetFuncOption(node)
30708 }
30709}
30710impl From<ReturnFuncOption> for FuncOption {
30711 #[inline]
30712 fn from(node: ReturnFuncOption) -> FuncOption {
30713 FuncOption::ReturnFuncOption(node)
30714 }
30715}
30716impl From<RowsFuncOption> for FuncOption {
30717 #[inline]
30718 fn from(node: RowsFuncOption) -> FuncOption {
30719 FuncOption::RowsFuncOption(node)
30720 }
30721}
30722impl From<SecurityFuncOption> for FuncOption {
30723 #[inline]
30724 fn from(node: SecurityFuncOption) -> FuncOption {
30725 FuncOption::SecurityFuncOption(node)
30726 }
30727}
30728impl From<SetFuncOption> for FuncOption {
30729 #[inline]
30730 fn from(node: SetFuncOption) -> FuncOption {
30731 FuncOption::SetFuncOption(node)
30732 }
30733}
30734impl From<StrictFuncOption> for FuncOption {
30735 #[inline]
30736 fn from(node: StrictFuncOption) -> FuncOption {
30737 FuncOption::StrictFuncOption(node)
30738 }
30739}
30740impl From<SupportFuncOption> for FuncOption {
30741 #[inline]
30742 fn from(node: SupportFuncOption) -> FuncOption {
30743 FuncOption::SupportFuncOption(node)
30744 }
30745}
30746impl From<TransformFuncOption> for FuncOption {
30747 #[inline]
30748 fn from(node: TransformFuncOption) -> FuncOption {
30749 FuncOption::TransformFuncOption(node)
30750 }
30751}
30752impl From<VolatilityFuncOption> for FuncOption {
30753 #[inline]
30754 fn from(node: VolatilityFuncOption) -> FuncOption {
30755 FuncOption::VolatilityFuncOption(node)
30756 }
30757}
30758impl From<WindowFuncOption> for FuncOption {
30759 #[inline]
30760 fn from(node: WindowFuncOption) -> FuncOption {
30761 FuncOption::WindowFuncOption(node)
30762 }
30763}
30764impl AstNode for GroupBy {
30765 #[inline]
30766 fn can_cast(kind: SyntaxKind) -> bool {
30767 matches!(
30768 kind,
30769 SyntaxKind::GROUPING_CUBE
30770 | SyntaxKind::GROUPING_EXPR
30771 | SyntaxKind::GROUPING_ROLLUP
30772 | SyntaxKind::GROUPING_SETS
30773 )
30774 }
30775 #[inline]
30776 fn cast(syntax: SyntaxNode) -> Option<Self> {
30777 let res = match syntax.kind() {
30778 SyntaxKind::GROUPING_CUBE => GroupBy::GroupingCube(GroupingCube { syntax }),
30779 SyntaxKind::GROUPING_EXPR => GroupBy::GroupingExpr(GroupingExpr { syntax }),
30780 SyntaxKind::GROUPING_ROLLUP => GroupBy::GroupingRollup(GroupingRollup { syntax }),
30781 SyntaxKind::GROUPING_SETS => GroupBy::GroupingSets(GroupingSets { syntax }),
30782 _ => {
30783 return None;
30784 }
30785 };
30786 Some(res)
30787 }
30788 #[inline]
30789 fn syntax(&self) -> &SyntaxNode {
30790 match self {
30791 GroupBy::GroupingCube(it) => &it.syntax,
30792 GroupBy::GroupingExpr(it) => &it.syntax,
30793 GroupBy::GroupingRollup(it) => &it.syntax,
30794 GroupBy::GroupingSets(it) => &it.syntax,
30795 }
30796 }
30797}
30798impl From<GroupingCube> for GroupBy {
30799 #[inline]
30800 fn from(node: GroupingCube) -> GroupBy {
30801 GroupBy::GroupingCube(node)
30802 }
30803}
30804impl From<GroupingExpr> for GroupBy {
30805 #[inline]
30806 fn from(node: GroupingExpr) -> GroupBy {
30807 GroupBy::GroupingExpr(node)
30808 }
30809}
30810impl From<GroupingRollup> for GroupBy {
30811 #[inline]
30812 fn from(node: GroupingRollup) -> GroupBy {
30813 GroupBy::GroupingRollup(node)
30814 }
30815}
30816impl From<GroupingSets> for GroupBy {
30817 #[inline]
30818 fn from(node: GroupingSets) -> GroupBy {
30819 GroupBy::GroupingSets(node)
30820 }
30821}
30822impl AstNode for JoinType {
30823 #[inline]
30824 fn can_cast(kind: SyntaxKind) -> bool {
30825 matches!(
30826 kind,
30827 SyntaxKind::JOIN_CROSS
30828 | SyntaxKind::JOIN_FULL
30829 | SyntaxKind::JOIN_INNER
30830 | SyntaxKind::JOIN_LEFT
30831 | SyntaxKind::JOIN_RIGHT
30832 )
30833 }
30834 #[inline]
30835 fn cast(syntax: SyntaxNode) -> Option<Self> {
30836 let res = match syntax.kind() {
30837 SyntaxKind::JOIN_CROSS => JoinType::JoinCross(JoinCross { syntax }),
30838 SyntaxKind::JOIN_FULL => JoinType::JoinFull(JoinFull { syntax }),
30839 SyntaxKind::JOIN_INNER => JoinType::JoinInner(JoinInner { syntax }),
30840 SyntaxKind::JOIN_LEFT => JoinType::JoinLeft(JoinLeft { syntax }),
30841 SyntaxKind::JOIN_RIGHT => JoinType::JoinRight(JoinRight { syntax }),
30842 _ => {
30843 return None;
30844 }
30845 };
30846 Some(res)
30847 }
30848 #[inline]
30849 fn syntax(&self) -> &SyntaxNode {
30850 match self {
30851 JoinType::JoinCross(it) => &it.syntax,
30852 JoinType::JoinFull(it) => &it.syntax,
30853 JoinType::JoinInner(it) => &it.syntax,
30854 JoinType::JoinLeft(it) => &it.syntax,
30855 JoinType::JoinRight(it) => &it.syntax,
30856 }
30857 }
30858}
30859impl From<JoinCross> for JoinType {
30860 #[inline]
30861 fn from(node: JoinCross) -> JoinType {
30862 JoinType::JoinCross(node)
30863 }
30864}
30865impl From<JoinFull> for JoinType {
30866 #[inline]
30867 fn from(node: JoinFull) -> JoinType {
30868 JoinType::JoinFull(node)
30869 }
30870}
30871impl From<JoinInner> for JoinType {
30872 #[inline]
30873 fn from(node: JoinInner) -> JoinType {
30874 JoinType::JoinInner(node)
30875 }
30876}
30877impl From<JoinLeft> for JoinType {
30878 #[inline]
30879 fn from(node: JoinLeft) -> JoinType {
30880 JoinType::JoinLeft(node)
30881 }
30882}
30883impl From<JoinRight> for JoinType {
30884 #[inline]
30885 fn from(node: JoinRight) -> JoinType {
30886 JoinType::JoinRight(node)
30887 }
30888}
30889impl AstNode for JsonBehavior {
30890 #[inline]
30891 fn can_cast(kind: SyntaxKind) -> bool {
30892 matches!(
30893 kind,
30894 SyntaxKind::JSON_BEHAVIOR_DEFAULT
30895 | SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY
30896 | SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT
30897 | SyntaxKind::JSON_BEHAVIOR_ERROR
30898 | SyntaxKind::JSON_BEHAVIOR_FALSE
30899 | SyntaxKind::JSON_BEHAVIOR_NULL
30900 | SyntaxKind::JSON_BEHAVIOR_TRUE
30901 | SyntaxKind::JSON_BEHAVIOR_UNKNOWN
30902 )
30903 }
30904 #[inline]
30905 fn cast(syntax: SyntaxNode) -> Option<Self> {
30906 let res = match syntax.kind() {
30907 SyntaxKind::JSON_BEHAVIOR_DEFAULT => {
30908 JsonBehavior::JsonBehaviorDefault(JsonBehaviorDefault { syntax })
30909 }
30910 SyntaxKind::JSON_BEHAVIOR_EMPTY_ARRAY => {
30911 JsonBehavior::JsonBehaviorEmptyArray(JsonBehaviorEmptyArray { syntax })
30912 }
30913 SyntaxKind::JSON_BEHAVIOR_EMPTY_OBJECT => {
30914 JsonBehavior::JsonBehaviorEmptyObject(JsonBehaviorEmptyObject { syntax })
30915 }
30916 SyntaxKind::JSON_BEHAVIOR_ERROR => {
30917 JsonBehavior::JsonBehaviorError(JsonBehaviorError { syntax })
30918 }
30919 SyntaxKind::JSON_BEHAVIOR_FALSE => {
30920 JsonBehavior::JsonBehaviorFalse(JsonBehaviorFalse { syntax })
30921 }
30922 SyntaxKind::JSON_BEHAVIOR_NULL => {
30923 JsonBehavior::JsonBehaviorNull(JsonBehaviorNull { syntax })
30924 }
30925 SyntaxKind::JSON_BEHAVIOR_TRUE => {
30926 JsonBehavior::JsonBehaviorTrue(JsonBehaviorTrue { syntax })
30927 }
30928 SyntaxKind::JSON_BEHAVIOR_UNKNOWN => {
30929 JsonBehavior::JsonBehaviorUnknown(JsonBehaviorUnknown { syntax })
30930 }
30931 _ => {
30932 return None;
30933 }
30934 };
30935 Some(res)
30936 }
30937 #[inline]
30938 fn syntax(&self) -> &SyntaxNode {
30939 match self {
30940 JsonBehavior::JsonBehaviorDefault(it) => &it.syntax,
30941 JsonBehavior::JsonBehaviorEmptyArray(it) => &it.syntax,
30942 JsonBehavior::JsonBehaviorEmptyObject(it) => &it.syntax,
30943 JsonBehavior::JsonBehaviorError(it) => &it.syntax,
30944 JsonBehavior::JsonBehaviorFalse(it) => &it.syntax,
30945 JsonBehavior::JsonBehaviorNull(it) => &it.syntax,
30946 JsonBehavior::JsonBehaviorTrue(it) => &it.syntax,
30947 JsonBehavior::JsonBehaviorUnknown(it) => &it.syntax,
30948 }
30949 }
30950}
30951impl From<JsonBehaviorDefault> for JsonBehavior {
30952 #[inline]
30953 fn from(node: JsonBehaviorDefault) -> JsonBehavior {
30954 JsonBehavior::JsonBehaviorDefault(node)
30955 }
30956}
30957impl From<JsonBehaviorEmptyArray> for JsonBehavior {
30958 #[inline]
30959 fn from(node: JsonBehaviorEmptyArray) -> JsonBehavior {
30960 JsonBehavior::JsonBehaviorEmptyArray(node)
30961 }
30962}
30963impl From<JsonBehaviorEmptyObject> for JsonBehavior {
30964 #[inline]
30965 fn from(node: JsonBehaviorEmptyObject) -> JsonBehavior {
30966 JsonBehavior::JsonBehaviorEmptyObject(node)
30967 }
30968}
30969impl From<JsonBehaviorError> for JsonBehavior {
30970 #[inline]
30971 fn from(node: JsonBehaviorError) -> JsonBehavior {
30972 JsonBehavior::JsonBehaviorError(node)
30973 }
30974}
30975impl From<JsonBehaviorFalse> for JsonBehavior {
30976 #[inline]
30977 fn from(node: JsonBehaviorFalse) -> JsonBehavior {
30978 JsonBehavior::JsonBehaviorFalse(node)
30979 }
30980}
30981impl From<JsonBehaviorNull> for JsonBehavior {
30982 #[inline]
30983 fn from(node: JsonBehaviorNull) -> JsonBehavior {
30984 JsonBehavior::JsonBehaviorNull(node)
30985 }
30986}
30987impl From<JsonBehaviorTrue> for JsonBehavior {
30988 #[inline]
30989 fn from(node: JsonBehaviorTrue) -> JsonBehavior {
30990 JsonBehavior::JsonBehaviorTrue(node)
30991 }
30992}
30993impl From<JsonBehaviorUnknown> for JsonBehavior {
30994 #[inline]
30995 fn from(node: JsonBehaviorUnknown) -> JsonBehavior {
30996 JsonBehavior::JsonBehaviorUnknown(node)
30997 }
30998}
30999impl AstNode for MatchType {
31000 #[inline]
31001 fn can_cast(kind: SyntaxKind) -> bool {
31002 matches!(
31003 kind,
31004 SyntaxKind::MATCH_FULL | SyntaxKind::MATCH_PARTIAL | SyntaxKind::MATCH_SIMPLE
31005 )
31006 }
31007 #[inline]
31008 fn cast(syntax: SyntaxNode) -> Option<Self> {
31009 let res = match syntax.kind() {
31010 SyntaxKind::MATCH_FULL => MatchType::MatchFull(MatchFull { syntax }),
31011 SyntaxKind::MATCH_PARTIAL => MatchType::MatchPartial(MatchPartial { syntax }),
31012 SyntaxKind::MATCH_SIMPLE => MatchType::MatchSimple(MatchSimple { syntax }),
31013 _ => {
31014 return None;
31015 }
31016 };
31017 Some(res)
31018 }
31019 #[inline]
31020 fn syntax(&self) -> &SyntaxNode {
31021 match self {
31022 MatchType::MatchFull(it) => &it.syntax,
31023 MatchType::MatchPartial(it) => &it.syntax,
31024 MatchType::MatchSimple(it) => &it.syntax,
31025 }
31026 }
31027}
31028impl From<MatchFull> for MatchType {
31029 #[inline]
31030 fn from(node: MatchFull) -> MatchType {
31031 MatchType::MatchFull(node)
31032 }
31033}
31034impl From<MatchPartial> for MatchType {
31035 #[inline]
31036 fn from(node: MatchPartial) -> MatchType {
31037 MatchType::MatchPartial(node)
31038 }
31039}
31040impl From<MatchSimple> for MatchType {
31041 #[inline]
31042 fn from(node: MatchSimple) -> MatchType {
31043 MatchType::MatchSimple(node)
31044 }
31045}
31046impl AstNode for MergeAction {
31047 #[inline]
31048 fn can_cast(kind: SyntaxKind) -> bool {
31049 matches!(
31050 kind,
31051 SyntaxKind::MERGE_DELETE
31052 | SyntaxKind::MERGE_DO_NOTHING
31053 | SyntaxKind::MERGE_INSERT
31054 | SyntaxKind::MERGE_UPDATE
31055 )
31056 }
31057 #[inline]
31058 fn cast(syntax: SyntaxNode) -> Option<Self> {
31059 let res = match syntax.kind() {
31060 SyntaxKind::MERGE_DELETE => MergeAction::MergeDelete(MergeDelete { syntax }),
31061 SyntaxKind::MERGE_DO_NOTHING => MergeAction::MergeDoNothing(MergeDoNothing { syntax }),
31062 SyntaxKind::MERGE_INSERT => MergeAction::MergeInsert(MergeInsert { syntax }),
31063 SyntaxKind::MERGE_UPDATE => MergeAction::MergeUpdate(MergeUpdate { syntax }),
31064 _ => {
31065 return None;
31066 }
31067 };
31068 Some(res)
31069 }
31070 #[inline]
31071 fn syntax(&self) -> &SyntaxNode {
31072 match self {
31073 MergeAction::MergeDelete(it) => &it.syntax,
31074 MergeAction::MergeDoNothing(it) => &it.syntax,
31075 MergeAction::MergeInsert(it) => &it.syntax,
31076 MergeAction::MergeUpdate(it) => &it.syntax,
31077 }
31078 }
31079}
31080impl From<MergeDelete> for MergeAction {
31081 #[inline]
31082 fn from(node: MergeDelete) -> MergeAction {
31083 MergeAction::MergeDelete(node)
31084 }
31085}
31086impl From<MergeDoNothing> for MergeAction {
31087 #[inline]
31088 fn from(node: MergeDoNothing) -> MergeAction {
31089 MergeAction::MergeDoNothing(node)
31090 }
31091}
31092impl From<MergeInsert> for MergeAction {
31093 #[inline]
31094 fn from(node: MergeInsert) -> MergeAction {
31095 MergeAction::MergeInsert(node)
31096 }
31097}
31098impl From<MergeUpdate> for MergeAction {
31099 #[inline]
31100 fn from(node: MergeUpdate) -> MergeAction {
31101 MergeAction::MergeUpdate(node)
31102 }
31103}
31104impl AstNode for MergeWhenClause {
31105 #[inline]
31106 fn can_cast(kind: SyntaxKind) -> bool {
31107 matches!(
31108 kind,
31109 SyntaxKind::MERGE_WHEN_MATCHED
31110 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE
31111 | SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET
31112 )
31113 }
31114 #[inline]
31115 fn cast(syntax: SyntaxNode) -> Option<Self> {
31116 let res = match syntax.kind() {
31117 SyntaxKind::MERGE_WHEN_MATCHED => {
31118 MergeWhenClause::MergeWhenMatched(MergeWhenMatched { syntax })
31119 }
31120 SyntaxKind::MERGE_WHEN_NOT_MATCHED_SOURCE => {
31121 MergeWhenClause::MergeWhenNotMatchedSource(MergeWhenNotMatchedSource { syntax })
31122 }
31123 SyntaxKind::MERGE_WHEN_NOT_MATCHED_TARGET => {
31124 MergeWhenClause::MergeWhenNotMatchedTarget(MergeWhenNotMatchedTarget { syntax })
31125 }
31126 _ => {
31127 return None;
31128 }
31129 };
31130 Some(res)
31131 }
31132 #[inline]
31133 fn syntax(&self) -> &SyntaxNode {
31134 match self {
31135 MergeWhenClause::MergeWhenMatched(it) => &it.syntax,
31136 MergeWhenClause::MergeWhenNotMatchedSource(it) => &it.syntax,
31137 MergeWhenClause::MergeWhenNotMatchedTarget(it) => &it.syntax,
31138 }
31139 }
31140}
31141impl From<MergeWhenMatched> for MergeWhenClause {
31142 #[inline]
31143 fn from(node: MergeWhenMatched) -> MergeWhenClause {
31144 MergeWhenClause::MergeWhenMatched(node)
31145 }
31146}
31147impl From<MergeWhenNotMatchedSource> for MergeWhenClause {
31148 #[inline]
31149 fn from(node: MergeWhenNotMatchedSource) -> MergeWhenClause {
31150 MergeWhenClause::MergeWhenNotMatchedSource(node)
31151 }
31152}
31153impl From<MergeWhenNotMatchedTarget> for MergeWhenClause {
31154 #[inline]
31155 fn from(node: MergeWhenNotMatchedTarget) -> MergeWhenClause {
31156 MergeWhenClause::MergeWhenNotMatchedTarget(node)
31157 }
31158}
31159impl AstNode for OnCommitAction {
31160 #[inline]
31161 fn can_cast(kind: SyntaxKind) -> bool {
31162 matches!(
31163 kind,
31164 SyntaxKind::DELETE_ROWS | SyntaxKind::DROP | SyntaxKind::PRESERVE_ROWS
31165 )
31166 }
31167 #[inline]
31168 fn cast(syntax: SyntaxNode) -> Option<Self> {
31169 let res = match syntax.kind() {
31170 SyntaxKind::DELETE_ROWS => OnCommitAction::DeleteRows(DeleteRows { syntax }),
31171 SyntaxKind::DROP => OnCommitAction::Drop(Drop { syntax }),
31172 SyntaxKind::PRESERVE_ROWS => OnCommitAction::PreserveRows(PreserveRows { syntax }),
31173 _ => {
31174 return None;
31175 }
31176 };
31177 Some(res)
31178 }
31179 #[inline]
31180 fn syntax(&self) -> &SyntaxNode {
31181 match self {
31182 OnCommitAction::DeleteRows(it) => &it.syntax,
31183 OnCommitAction::Drop(it) => &it.syntax,
31184 OnCommitAction::PreserveRows(it) => &it.syntax,
31185 }
31186 }
31187}
31188impl From<DeleteRows> for OnCommitAction {
31189 #[inline]
31190 fn from(node: DeleteRows) -> OnCommitAction {
31191 OnCommitAction::DeleteRows(node)
31192 }
31193}
31194impl From<Drop> for OnCommitAction {
31195 #[inline]
31196 fn from(node: Drop) -> OnCommitAction {
31197 OnCommitAction::Drop(node)
31198 }
31199}
31200impl From<PreserveRows> for OnCommitAction {
31201 #[inline]
31202 fn from(node: PreserveRows) -> OnCommitAction {
31203 OnCommitAction::PreserveRows(node)
31204 }
31205}
31206impl AstNode for ParamMode {
31207 #[inline]
31208 fn can_cast(kind: SyntaxKind) -> bool {
31209 matches!(
31210 kind,
31211 SyntaxKind::PARAM_IN
31212 | SyntaxKind::PARAM_IN_OUT
31213 | SyntaxKind::PARAM_OUT
31214 | SyntaxKind::PARAM_VARIADIC
31215 )
31216 }
31217 #[inline]
31218 fn cast(syntax: SyntaxNode) -> Option<Self> {
31219 let res = match syntax.kind() {
31220 SyntaxKind::PARAM_IN => ParamMode::ParamIn(ParamIn { syntax }),
31221 SyntaxKind::PARAM_IN_OUT => ParamMode::ParamInOut(ParamInOut { syntax }),
31222 SyntaxKind::PARAM_OUT => ParamMode::ParamOut(ParamOut { syntax }),
31223 SyntaxKind::PARAM_VARIADIC => ParamMode::ParamVariadic(ParamVariadic { syntax }),
31224 _ => {
31225 return None;
31226 }
31227 };
31228 Some(res)
31229 }
31230 #[inline]
31231 fn syntax(&self) -> &SyntaxNode {
31232 match self {
31233 ParamMode::ParamIn(it) => &it.syntax,
31234 ParamMode::ParamInOut(it) => &it.syntax,
31235 ParamMode::ParamOut(it) => &it.syntax,
31236 ParamMode::ParamVariadic(it) => &it.syntax,
31237 }
31238 }
31239}
31240impl From<ParamIn> for ParamMode {
31241 #[inline]
31242 fn from(node: ParamIn) -> ParamMode {
31243 ParamMode::ParamIn(node)
31244 }
31245}
31246impl From<ParamInOut> for ParamMode {
31247 #[inline]
31248 fn from(node: ParamInOut) -> ParamMode {
31249 ParamMode::ParamInOut(node)
31250 }
31251}
31252impl From<ParamOut> for ParamMode {
31253 #[inline]
31254 fn from(node: ParamOut) -> ParamMode {
31255 ParamMode::ParamOut(node)
31256 }
31257}
31258impl From<ParamVariadic> for ParamMode {
31259 #[inline]
31260 fn from(node: ParamVariadic) -> ParamMode {
31261 ParamMode::ParamVariadic(node)
31262 }
31263}
31264impl AstNode for PartitionType {
31265 #[inline]
31266 fn can_cast(kind: SyntaxKind) -> bool {
31267 matches!(
31268 kind,
31269 SyntaxKind::PARTITION_DEFAULT
31270 | SyntaxKind::PARTITION_FOR_VALUES_FROM
31271 | SyntaxKind::PARTITION_FOR_VALUES_IN
31272 | SyntaxKind::PARTITION_FOR_VALUES_WITH
31273 )
31274 }
31275 #[inline]
31276 fn cast(syntax: SyntaxNode) -> Option<Self> {
31277 let res = match syntax.kind() {
31278 SyntaxKind::PARTITION_DEFAULT => {
31279 PartitionType::PartitionDefault(PartitionDefault { syntax })
31280 }
31281 SyntaxKind::PARTITION_FOR_VALUES_FROM => {
31282 PartitionType::PartitionForValuesFrom(PartitionForValuesFrom { syntax })
31283 }
31284 SyntaxKind::PARTITION_FOR_VALUES_IN => {
31285 PartitionType::PartitionForValuesIn(PartitionForValuesIn { syntax })
31286 }
31287 SyntaxKind::PARTITION_FOR_VALUES_WITH => {
31288 PartitionType::PartitionForValuesWith(PartitionForValuesWith { syntax })
31289 }
31290 _ => {
31291 return None;
31292 }
31293 };
31294 Some(res)
31295 }
31296 #[inline]
31297 fn syntax(&self) -> &SyntaxNode {
31298 match self {
31299 PartitionType::PartitionDefault(it) => &it.syntax,
31300 PartitionType::PartitionForValuesFrom(it) => &it.syntax,
31301 PartitionType::PartitionForValuesIn(it) => &it.syntax,
31302 PartitionType::PartitionForValuesWith(it) => &it.syntax,
31303 }
31304 }
31305}
31306impl From<PartitionDefault> for PartitionType {
31307 #[inline]
31308 fn from(node: PartitionDefault) -> PartitionType {
31309 PartitionType::PartitionDefault(node)
31310 }
31311}
31312impl From<PartitionForValuesFrom> for PartitionType {
31313 #[inline]
31314 fn from(node: PartitionForValuesFrom) -> PartitionType {
31315 PartitionType::PartitionForValuesFrom(node)
31316 }
31317}
31318impl From<PartitionForValuesIn> for PartitionType {
31319 #[inline]
31320 fn from(node: PartitionForValuesIn) -> PartitionType {
31321 PartitionType::PartitionForValuesIn(node)
31322 }
31323}
31324impl From<PartitionForValuesWith> for PartitionType {
31325 #[inline]
31326 fn from(node: PartitionForValuesWith) -> PartitionType {
31327 PartitionType::PartitionForValuesWith(node)
31328 }
31329}
31330impl AstNode for PreparableStmt {
31331 #[inline]
31332 fn can_cast(kind: SyntaxKind) -> bool {
31333 matches!(
31334 kind,
31335 SyntaxKind::COMPOUND_SELECT
31336 | SyntaxKind::DELETE
31337 | SyntaxKind::INSERT
31338 | SyntaxKind::MERGE
31339 | SyntaxKind::SELECT
31340 | SyntaxKind::SELECT_INTO
31341 | SyntaxKind::TABLE
31342 | SyntaxKind::UPDATE
31343 | SyntaxKind::VALUES
31344 )
31345 }
31346 #[inline]
31347 fn cast(syntax: SyntaxNode) -> Option<Self> {
31348 let res = match syntax.kind() {
31349 SyntaxKind::COMPOUND_SELECT => {
31350 PreparableStmt::CompoundSelect(CompoundSelect { syntax })
31351 }
31352 SyntaxKind::DELETE => PreparableStmt::Delete(Delete { syntax }),
31353 SyntaxKind::INSERT => PreparableStmt::Insert(Insert { syntax }),
31354 SyntaxKind::MERGE => PreparableStmt::Merge(Merge { syntax }),
31355 SyntaxKind::SELECT => PreparableStmt::Select(Select { syntax }),
31356 SyntaxKind::SELECT_INTO => PreparableStmt::SelectInto(SelectInto { syntax }),
31357 SyntaxKind::TABLE => PreparableStmt::Table(Table { syntax }),
31358 SyntaxKind::UPDATE => PreparableStmt::Update(Update { syntax }),
31359 SyntaxKind::VALUES => PreparableStmt::Values(Values { syntax }),
31360 _ => {
31361 return None;
31362 }
31363 };
31364 Some(res)
31365 }
31366 #[inline]
31367 fn syntax(&self) -> &SyntaxNode {
31368 match self {
31369 PreparableStmt::CompoundSelect(it) => &it.syntax,
31370 PreparableStmt::Delete(it) => &it.syntax,
31371 PreparableStmt::Insert(it) => &it.syntax,
31372 PreparableStmt::Merge(it) => &it.syntax,
31373 PreparableStmt::Select(it) => &it.syntax,
31374 PreparableStmt::SelectInto(it) => &it.syntax,
31375 PreparableStmt::Table(it) => &it.syntax,
31376 PreparableStmt::Update(it) => &it.syntax,
31377 PreparableStmt::Values(it) => &it.syntax,
31378 }
31379 }
31380}
31381impl From<CompoundSelect> for PreparableStmt {
31382 #[inline]
31383 fn from(node: CompoundSelect) -> PreparableStmt {
31384 PreparableStmt::CompoundSelect(node)
31385 }
31386}
31387impl From<Delete> for PreparableStmt {
31388 #[inline]
31389 fn from(node: Delete) -> PreparableStmt {
31390 PreparableStmt::Delete(node)
31391 }
31392}
31393impl From<Insert> for PreparableStmt {
31394 #[inline]
31395 fn from(node: Insert) -> PreparableStmt {
31396 PreparableStmt::Insert(node)
31397 }
31398}
31399impl From<Merge> for PreparableStmt {
31400 #[inline]
31401 fn from(node: Merge) -> PreparableStmt {
31402 PreparableStmt::Merge(node)
31403 }
31404}
31405impl From<Select> for PreparableStmt {
31406 #[inline]
31407 fn from(node: Select) -> PreparableStmt {
31408 PreparableStmt::Select(node)
31409 }
31410}
31411impl From<SelectInto> for PreparableStmt {
31412 #[inline]
31413 fn from(node: SelectInto) -> PreparableStmt {
31414 PreparableStmt::SelectInto(node)
31415 }
31416}
31417impl From<Table> for PreparableStmt {
31418 #[inline]
31419 fn from(node: Table) -> PreparableStmt {
31420 PreparableStmt::Table(node)
31421 }
31422}
31423impl From<Update> for PreparableStmt {
31424 #[inline]
31425 fn from(node: Update) -> PreparableStmt {
31426 PreparableStmt::Update(node)
31427 }
31428}
31429impl From<Values> for PreparableStmt {
31430 #[inline]
31431 fn from(node: Values) -> PreparableStmt {
31432 PreparableStmt::Values(node)
31433 }
31434}
31435impl AstNode for RefAction {
31436 #[inline]
31437 fn can_cast(kind: SyntaxKind) -> bool {
31438 matches!(
31439 kind,
31440 SyntaxKind::CASCADE
31441 | SyntaxKind::NO_ACTION
31442 | SyntaxKind::RESTRICT
31443 | SyntaxKind::SET_DEFAULT_COLUMNS
31444 | SyntaxKind::SET_NULL_COLUMNS
31445 )
31446 }
31447 #[inline]
31448 fn cast(syntax: SyntaxNode) -> Option<Self> {
31449 let res = match syntax.kind() {
31450 SyntaxKind::CASCADE => RefAction::Cascade(Cascade { syntax }),
31451 SyntaxKind::NO_ACTION => RefAction::NoAction(NoAction { syntax }),
31452 SyntaxKind::RESTRICT => RefAction::Restrict(Restrict { syntax }),
31453 SyntaxKind::SET_DEFAULT_COLUMNS => {
31454 RefAction::SetDefaultColumns(SetDefaultColumns { syntax })
31455 }
31456 SyntaxKind::SET_NULL_COLUMNS => RefAction::SetNullColumns(SetNullColumns { syntax }),
31457 _ => {
31458 return None;
31459 }
31460 };
31461 Some(res)
31462 }
31463 #[inline]
31464 fn syntax(&self) -> &SyntaxNode {
31465 match self {
31466 RefAction::Cascade(it) => &it.syntax,
31467 RefAction::NoAction(it) => &it.syntax,
31468 RefAction::Restrict(it) => &it.syntax,
31469 RefAction::SetDefaultColumns(it) => &it.syntax,
31470 RefAction::SetNullColumns(it) => &it.syntax,
31471 }
31472 }
31473}
31474impl From<Cascade> for RefAction {
31475 #[inline]
31476 fn from(node: Cascade) -> RefAction {
31477 RefAction::Cascade(node)
31478 }
31479}
31480impl From<NoAction> for RefAction {
31481 #[inline]
31482 fn from(node: NoAction) -> RefAction {
31483 RefAction::NoAction(node)
31484 }
31485}
31486impl From<Restrict> for RefAction {
31487 #[inline]
31488 fn from(node: Restrict) -> RefAction {
31489 RefAction::Restrict(node)
31490 }
31491}
31492impl From<SetDefaultColumns> for RefAction {
31493 #[inline]
31494 fn from(node: SetDefaultColumns) -> RefAction {
31495 RefAction::SetDefaultColumns(node)
31496 }
31497}
31498impl From<SetNullColumns> for RefAction {
31499 #[inline]
31500 fn from(node: SetNullColumns) -> RefAction {
31501 RefAction::SetNullColumns(node)
31502 }
31503}
31504impl AstNode for SchemaElement {
31505 #[inline]
31506 fn can_cast(kind: SyntaxKind) -> bool {
31507 matches!(
31508 kind,
31509 SyntaxKind::CREATE_INDEX
31510 | SyntaxKind::CREATE_SEQUENCE
31511 | SyntaxKind::CREATE_TABLE
31512 | SyntaxKind::CREATE_TRIGGER
31513 | SyntaxKind::CREATE_VIEW
31514 | SyntaxKind::GRANT
31515 )
31516 }
31517 #[inline]
31518 fn cast(syntax: SyntaxNode) -> Option<Self> {
31519 let res = match syntax.kind() {
31520 SyntaxKind::CREATE_INDEX => SchemaElement::CreateIndex(CreateIndex { syntax }),
31521 SyntaxKind::CREATE_SEQUENCE => SchemaElement::CreateSequence(CreateSequence { syntax }),
31522 SyntaxKind::CREATE_TABLE => SchemaElement::CreateTable(CreateTable { syntax }),
31523 SyntaxKind::CREATE_TRIGGER => SchemaElement::CreateTrigger(CreateTrigger { syntax }),
31524 SyntaxKind::CREATE_VIEW => SchemaElement::CreateView(CreateView { syntax }),
31525 SyntaxKind::GRANT => SchemaElement::Grant(Grant { syntax }),
31526 _ => {
31527 return None;
31528 }
31529 };
31530 Some(res)
31531 }
31532 #[inline]
31533 fn syntax(&self) -> &SyntaxNode {
31534 match self {
31535 SchemaElement::CreateIndex(it) => &it.syntax,
31536 SchemaElement::CreateSequence(it) => &it.syntax,
31537 SchemaElement::CreateTable(it) => &it.syntax,
31538 SchemaElement::CreateTrigger(it) => &it.syntax,
31539 SchemaElement::CreateView(it) => &it.syntax,
31540 SchemaElement::Grant(it) => &it.syntax,
31541 }
31542 }
31543}
31544impl From<CreateIndex> for SchemaElement {
31545 #[inline]
31546 fn from(node: CreateIndex) -> SchemaElement {
31547 SchemaElement::CreateIndex(node)
31548 }
31549}
31550impl From<CreateSequence> for SchemaElement {
31551 #[inline]
31552 fn from(node: CreateSequence) -> SchemaElement {
31553 SchemaElement::CreateSequence(node)
31554 }
31555}
31556impl From<CreateTable> for SchemaElement {
31557 #[inline]
31558 fn from(node: CreateTable) -> SchemaElement {
31559 SchemaElement::CreateTable(node)
31560 }
31561}
31562impl From<CreateTrigger> for SchemaElement {
31563 #[inline]
31564 fn from(node: CreateTrigger) -> SchemaElement {
31565 SchemaElement::CreateTrigger(node)
31566 }
31567}
31568impl From<CreateView> for SchemaElement {
31569 #[inline]
31570 fn from(node: CreateView) -> SchemaElement {
31571 SchemaElement::CreateView(node)
31572 }
31573}
31574impl From<Grant> for SchemaElement {
31575 #[inline]
31576 fn from(node: Grant) -> SchemaElement {
31577 SchemaElement::Grant(node)
31578 }
31579}
31580impl AstNode for SelectVariant {
31581 #[inline]
31582 fn can_cast(kind: SyntaxKind) -> bool {
31583 matches!(
31584 kind,
31585 SyntaxKind::COMPOUND_SELECT
31586 | SyntaxKind::PAREN_SELECT
31587 | SyntaxKind::SELECT
31588 | SyntaxKind::SELECT_INTO
31589 | SyntaxKind::TABLE
31590 | SyntaxKind::VALUES
31591 )
31592 }
31593 #[inline]
31594 fn cast(syntax: SyntaxNode) -> Option<Self> {
31595 let res = match syntax.kind() {
31596 SyntaxKind::COMPOUND_SELECT => SelectVariant::CompoundSelect(CompoundSelect { syntax }),
31597 SyntaxKind::PAREN_SELECT => SelectVariant::ParenSelect(ParenSelect { syntax }),
31598 SyntaxKind::SELECT => SelectVariant::Select(Select { syntax }),
31599 SyntaxKind::SELECT_INTO => SelectVariant::SelectInto(SelectInto { syntax }),
31600 SyntaxKind::TABLE => SelectVariant::Table(Table { syntax }),
31601 SyntaxKind::VALUES => SelectVariant::Values(Values { syntax }),
31602 _ => {
31603 return None;
31604 }
31605 };
31606 Some(res)
31607 }
31608 #[inline]
31609 fn syntax(&self) -> &SyntaxNode {
31610 match self {
31611 SelectVariant::CompoundSelect(it) => &it.syntax,
31612 SelectVariant::ParenSelect(it) => &it.syntax,
31613 SelectVariant::Select(it) => &it.syntax,
31614 SelectVariant::SelectInto(it) => &it.syntax,
31615 SelectVariant::Table(it) => &it.syntax,
31616 SelectVariant::Values(it) => &it.syntax,
31617 }
31618 }
31619}
31620impl From<CompoundSelect> for SelectVariant {
31621 #[inline]
31622 fn from(node: CompoundSelect) -> SelectVariant {
31623 SelectVariant::CompoundSelect(node)
31624 }
31625}
31626impl From<ParenSelect> for SelectVariant {
31627 #[inline]
31628 fn from(node: ParenSelect) -> SelectVariant {
31629 SelectVariant::ParenSelect(node)
31630 }
31631}
31632impl From<Select> for SelectVariant {
31633 #[inline]
31634 fn from(node: Select) -> SelectVariant {
31635 SelectVariant::Select(node)
31636 }
31637}
31638impl From<SelectInto> for SelectVariant {
31639 #[inline]
31640 fn from(node: SelectInto) -> SelectVariant {
31641 SelectVariant::SelectInto(node)
31642 }
31643}
31644impl From<Table> for SelectVariant {
31645 #[inline]
31646 fn from(node: Table) -> SelectVariant {
31647 SelectVariant::Table(node)
31648 }
31649}
31650impl From<Values> for SelectVariant {
31651 #[inline]
31652 fn from(node: Values) -> SelectVariant {
31653 SelectVariant::Values(node)
31654 }
31655}
31656impl AstNode for SetColumn {
31657 #[inline]
31658 fn can_cast(kind: SyntaxKind) -> bool {
31659 matches!(
31660 kind,
31661 SyntaxKind::SET_MULTIPLE_COLUMNS | SyntaxKind::SET_SINGLE_COLUMN
31662 )
31663 }
31664 #[inline]
31665 fn cast(syntax: SyntaxNode) -> Option<Self> {
31666 let res = match syntax.kind() {
31667 SyntaxKind::SET_MULTIPLE_COLUMNS => {
31668 SetColumn::SetMultipleColumns(SetMultipleColumns { syntax })
31669 }
31670 SyntaxKind::SET_SINGLE_COLUMN => SetColumn::SetSingleColumn(SetSingleColumn { syntax }),
31671 _ => {
31672 return None;
31673 }
31674 };
31675 Some(res)
31676 }
31677 #[inline]
31678 fn syntax(&self) -> &SyntaxNode {
31679 match self {
31680 SetColumn::SetMultipleColumns(it) => &it.syntax,
31681 SetColumn::SetSingleColumn(it) => &it.syntax,
31682 }
31683 }
31684}
31685impl From<SetMultipleColumns> for SetColumn {
31686 #[inline]
31687 fn from(node: SetMultipleColumns) -> SetColumn {
31688 SetColumn::SetMultipleColumns(node)
31689 }
31690}
31691impl From<SetSingleColumn> for SetColumn {
31692 #[inline]
31693 fn from(node: SetSingleColumn) -> SetColumn {
31694 SetColumn::SetSingleColumn(node)
31695 }
31696}
31697impl AstNode for Stmt {
31698 #[inline]
31699 fn can_cast(kind: SyntaxKind) -> bool {
31700 matches!(
31701 kind,
31702 SyntaxKind::ALTER_AGGREGATE
31703 | SyntaxKind::ALTER_COLLATION
31704 | SyntaxKind::ALTER_CONVERSION
31705 | SyntaxKind::ALTER_DATABASE
31706 | SyntaxKind::ALTER_DEFAULT_PRIVILEGES
31707 | SyntaxKind::ALTER_DOMAIN
31708 | SyntaxKind::ALTER_EVENT_TRIGGER
31709 | SyntaxKind::ALTER_EXTENSION
31710 | SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER
31711 | SyntaxKind::ALTER_FOREIGN_TABLE
31712 | SyntaxKind::ALTER_FUNCTION
31713 | SyntaxKind::ALTER_GROUP
31714 | SyntaxKind::ALTER_INDEX
31715 | SyntaxKind::ALTER_LANGUAGE
31716 | SyntaxKind::ALTER_LARGE_OBJECT
31717 | SyntaxKind::ALTER_MATERIALIZED_VIEW
31718 | SyntaxKind::ALTER_OPERATOR
31719 | SyntaxKind::ALTER_OPERATOR_CLASS
31720 | SyntaxKind::ALTER_OPERATOR_FAMILY
31721 | SyntaxKind::ALTER_POLICY
31722 | SyntaxKind::ALTER_PROCEDURE
31723 | SyntaxKind::ALTER_PUBLICATION
31724 | SyntaxKind::ALTER_ROLE
31725 | SyntaxKind::ALTER_ROUTINE
31726 | SyntaxKind::ALTER_RULE
31727 | SyntaxKind::ALTER_SCHEMA
31728 | SyntaxKind::ALTER_SEQUENCE
31729 | SyntaxKind::ALTER_SERVER
31730 | SyntaxKind::ALTER_STATISTICS
31731 | SyntaxKind::ALTER_SUBSCRIPTION
31732 | SyntaxKind::ALTER_SYSTEM
31733 | SyntaxKind::ALTER_TABLE
31734 | SyntaxKind::ALTER_TABLESPACE
31735 | SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION
31736 | SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY
31737 | SyntaxKind::ALTER_TEXT_SEARCH_PARSER
31738 | SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE
31739 | SyntaxKind::ALTER_TRIGGER
31740 | SyntaxKind::ALTER_TYPE
31741 | SyntaxKind::ALTER_USER
31742 | SyntaxKind::ALTER_USER_MAPPING
31743 | SyntaxKind::ALTER_VIEW
31744 | SyntaxKind::ANALYZE
31745 | SyntaxKind::BEGIN
31746 | SyntaxKind::CALL
31747 | SyntaxKind::CHECKPOINT
31748 | SyntaxKind::CLOSE
31749 | SyntaxKind::CLUSTER
31750 | SyntaxKind::COMMENT_ON
31751 | SyntaxKind::COMMIT
31752 | SyntaxKind::COPY
31753 | SyntaxKind::CREATE_ACCESS_METHOD
31754 | SyntaxKind::CREATE_AGGREGATE
31755 | SyntaxKind::CREATE_CAST
31756 | SyntaxKind::CREATE_COLLATION
31757 | SyntaxKind::CREATE_CONVERSION
31758 | SyntaxKind::CREATE_DATABASE
31759 | SyntaxKind::CREATE_DOMAIN
31760 | SyntaxKind::CREATE_EVENT_TRIGGER
31761 | SyntaxKind::CREATE_EXTENSION
31762 | SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER
31763 | SyntaxKind::CREATE_FOREIGN_TABLE
31764 | SyntaxKind::CREATE_FUNCTION
31765 | SyntaxKind::CREATE_GROUP
31766 | SyntaxKind::CREATE_INDEX
31767 | SyntaxKind::CREATE_LANGUAGE
31768 | SyntaxKind::CREATE_MATERIALIZED_VIEW
31769 | SyntaxKind::CREATE_OPERATOR
31770 | SyntaxKind::CREATE_OPERATOR_CLASS
31771 | SyntaxKind::CREATE_OPERATOR_FAMILY
31772 | SyntaxKind::CREATE_POLICY
31773 | SyntaxKind::CREATE_PROCEDURE
31774 | SyntaxKind::CREATE_PUBLICATION
31775 | SyntaxKind::CREATE_ROLE
31776 | SyntaxKind::CREATE_RULE
31777 | SyntaxKind::CREATE_SCHEMA
31778 | SyntaxKind::CREATE_SEQUENCE
31779 | SyntaxKind::CREATE_SERVER
31780 | SyntaxKind::CREATE_STATISTICS
31781 | SyntaxKind::CREATE_SUBSCRIPTION
31782 | SyntaxKind::CREATE_TABLE
31783 | SyntaxKind::CREATE_TABLE_AS
31784 | SyntaxKind::CREATE_TABLESPACE
31785 | SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION
31786 | SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY
31787 | SyntaxKind::CREATE_TEXT_SEARCH_PARSER
31788 | SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE
31789 | SyntaxKind::CREATE_TRANSFORM
31790 | SyntaxKind::CREATE_TRIGGER
31791 | SyntaxKind::CREATE_TYPE
31792 | SyntaxKind::CREATE_USER
31793 | SyntaxKind::CREATE_USER_MAPPING
31794 | SyntaxKind::CREATE_VIEW
31795 | SyntaxKind::DEALLOCATE
31796 | SyntaxKind::DECLARE
31797 | SyntaxKind::DELETE
31798 | SyntaxKind::DISCARD
31799 | SyntaxKind::DO
31800 | SyntaxKind::DROP_ACCESS_METHOD
31801 | SyntaxKind::DROP_AGGREGATE
31802 | SyntaxKind::DROP_CAST
31803 | SyntaxKind::DROP_COLLATION
31804 | SyntaxKind::DROP_CONVERSION
31805 | SyntaxKind::DROP_DATABASE
31806 | SyntaxKind::DROP_DOMAIN
31807 | SyntaxKind::DROP_EVENT_TRIGGER
31808 | SyntaxKind::DROP_EXTENSION
31809 | SyntaxKind::DROP_FOREIGN_DATA_WRAPPER
31810 | SyntaxKind::DROP_FOREIGN_TABLE
31811 | SyntaxKind::DROP_FUNCTION
31812 | SyntaxKind::DROP_GROUP
31813 | SyntaxKind::DROP_INDEX
31814 | SyntaxKind::DROP_LANGUAGE
31815 | SyntaxKind::DROP_MATERIALIZED_VIEW
31816 | SyntaxKind::DROP_OPERATOR
31817 | SyntaxKind::DROP_OPERATOR_CLASS
31818 | SyntaxKind::DROP_OPERATOR_FAMILY
31819 | SyntaxKind::DROP_OWNED
31820 | SyntaxKind::DROP_POLICY
31821 | SyntaxKind::DROP_PROCEDURE
31822 | SyntaxKind::DROP_PUBLICATION
31823 | SyntaxKind::DROP_ROLE
31824 | SyntaxKind::DROP_ROUTINE
31825 | SyntaxKind::DROP_RULE
31826 | SyntaxKind::DROP_SCHEMA
31827 | SyntaxKind::DROP_SEQUENCE
31828 | SyntaxKind::DROP_SERVER
31829 | SyntaxKind::DROP_STATISTICS
31830 | SyntaxKind::DROP_SUBSCRIPTION
31831 | SyntaxKind::DROP_TABLE
31832 | SyntaxKind::DROP_TABLESPACE
31833 | SyntaxKind::DROP_TEXT_SEARCH_CONFIG
31834 | SyntaxKind::DROP_TEXT_SEARCH_DICT
31835 | SyntaxKind::DROP_TEXT_SEARCH_PARSER
31836 | SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE
31837 | SyntaxKind::DROP_TRANSFORM
31838 | SyntaxKind::DROP_TRIGGER
31839 | SyntaxKind::DROP_TYPE
31840 | SyntaxKind::DROP_USER
31841 | SyntaxKind::DROP_USER_MAPPING
31842 | SyntaxKind::DROP_VIEW
31843 | SyntaxKind::EXECUTE
31844 | SyntaxKind::EXPLAIN
31845 | SyntaxKind::FETCH
31846 | SyntaxKind::GRANT
31847 | SyntaxKind::IMPORT_FOREIGN_SCHEMA
31848 | SyntaxKind::INSERT
31849 | SyntaxKind::LISTEN
31850 | SyntaxKind::LOAD
31851 | SyntaxKind::LOCK
31852 | SyntaxKind::MERGE
31853 | SyntaxKind::MOVE
31854 | SyntaxKind::NOTIFY
31855 | SyntaxKind::PAREN_SELECT
31856 | SyntaxKind::PREPARE
31857 | SyntaxKind::PREPARE_TRANSACTION
31858 | SyntaxKind::REASSIGN
31859 | SyntaxKind::REFRESH
31860 | SyntaxKind::REINDEX
31861 | SyntaxKind::RELEASE_SAVEPOINT
31862 | SyntaxKind::RESET
31863 | SyntaxKind::RESET_SESSION_AUTH
31864 | SyntaxKind::REVOKE
31865 | SyntaxKind::ROLLBACK
31866 | SyntaxKind::SAVEPOINT
31867 | SyntaxKind::SECURITY_LABEL
31868 | SyntaxKind::SELECT
31869 | SyntaxKind::SELECT_INTO
31870 | SyntaxKind::SET
31871 | SyntaxKind::SET_CONSTRAINTS
31872 | SyntaxKind::SET_ROLE
31873 | SyntaxKind::SET_SESSION_AUTH
31874 | SyntaxKind::SET_TRANSACTION
31875 | SyntaxKind::SHOW
31876 | SyntaxKind::TABLE
31877 | SyntaxKind::TRUNCATE
31878 | SyntaxKind::UNLISTEN
31879 | SyntaxKind::UPDATE
31880 | SyntaxKind::VACUUM
31881 | SyntaxKind::VALUES
31882 )
31883 }
31884 #[inline]
31885 fn cast(syntax: SyntaxNode) -> Option<Self> {
31886 let res = match syntax.kind() {
31887 SyntaxKind::ALTER_AGGREGATE => Stmt::AlterAggregate(AlterAggregate { syntax }),
31888 SyntaxKind::ALTER_COLLATION => Stmt::AlterCollation(AlterCollation { syntax }),
31889 SyntaxKind::ALTER_CONVERSION => Stmt::AlterConversion(AlterConversion { syntax }),
31890 SyntaxKind::ALTER_DATABASE => Stmt::AlterDatabase(AlterDatabase { syntax }),
31891 SyntaxKind::ALTER_DEFAULT_PRIVILEGES => {
31892 Stmt::AlterDefaultPrivileges(AlterDefaultPrivileges { syntax })
31893 }
31894 SyntaxKind::ALTER_DOMAIN => Stmt::AlterDomain(AlterDomain { syntax }),
31895 SyntaxKind::ALTER_EVENT_TRIGGER => {
31896 Stmt::AlterEventTrigger(AlterEventTrigger { syntax })
31897 }
31898 SyntaxKind::ALTER_EXTENSION => Stmt::AlterExtension(AlterExtension { syntax }),
31899 SyntaxKind::ALTER_FOREIGN_DATA_WRAPPER => {
31900 Stmt::AlterForeignDataWrapper(AlterForeignDataWrapper { syntax })
31901 }
31902 SyntaxKind::ALTER_FOREIGN_TABLE => {
31903 Stmt::AlterForeignTable(AlterForeignTable { syntax })
31904 }
31905 SyntaxKind::ALTER_FUNCTION => Stmt::AlterFunction(AlterFunction { syntax }),
31906 SyntaxKind::ALTER_GROUP => Stmt::AlterGroup(AlterGroup { syntax }),
31907 SyntaxKind::ALTER_INDEX => Stmt::AlterIndex(AlterIndex { syntax }),
31908 SyntaxKind::ALTER_LANGUAGE => Stmt::AlterLanguage(AlterLanguage { syntax }),
31909 SyntaxKind::ALTER_LARGE_OBJECT => Stmt::AlterLargeObject(AlterLargeObject { syntax }),
31910 SyntaxKind::ALTER_MATERIALIZED_VIEW => {
31911 Stmt::AlterMaterializedView(AlterMaterializedView { syntax })
31912 }
31913 SyntaxKind::ALTER_OPERATOR => Stmt::AlterOperator(AlterOperator { syntax }),
31914 SyntaxKind::ALTER_OPERATOR_CLASS => {
31915 Stmt::AlterOperatorClass(AlterOperatorClass { syntax })
31916 }
31917 SyntaxKind::ALTER_OPERATOR_FAMILY => {
31918 Stmt::AlterOperatorFamily(AlterOperatorFamily { syntax })
31919 }
31920 SyntaxKind::ALTER_POLICY => Stmt::AlterPolicy(AlterPolicy { syntax }),
31921 SyntaxKind::ALTER_PROCEDURE => Stmt::AlterProcedure(AlterProcedure { syntax }),
31922 SyntaxKind::ALTER_PUBLICATION => Stmt::AlterPublication(AlterPublication { syntax }),
31923 SyntaxKind::ALTER_ROLE => Stmt::AlterRole(AlterRole { syntax }),
31924 SyntaxKind::ALTER_ROUTINE => Stmt::AlterRoutine(AlterRoutine { syntax }),
31925 SyntaxKind::ALTER_RULE => Stmt::AlterRule(AlterRule { syntax }),
31926 SyntaxKind::ALTER_SCHEMA => Stmt::AlterSchema(AlterSchema { syntax }),
31927 SyntaxKind::ALTER_SEQUENCE => Stmt::AlterSequence(AlterSequence { syntax }),
31928 SyntaxKind::ALTER_SERVER => Stmt::AlterServer(AlterServer { syntax }),
31929 SyntaxKind::ALTER_STATISTICS => Stmt::AlterStatistics(AlterStatistics { syntax }),
31930 SyntaxKind::ALTER_SUBSCRIPTION => Stmt::AlterSubscription(AlterSubscription { syntax }),
31931 SyntaxKind::ALTER_SYSTEM => Stmt::AlterSystem(AlterSystem { syntax }),
31932 SyntaxKind::ALTER_TABLE => Stmt::AlterTable(AlterTable { syntax }),
31933 SyntaxKind::ALTER_TABLESPACE => Stmt::AlterTablespace(AlterTablespace { syntax }),
31934 SyntaxKind::ALTER_TEXT_SEARCH_CONFIGURATION => {
31935 Stmt::AlterTextSearchConfiguration(AlterTextSearchConfiguration { syntax })
31936 }
31937 SyntaxKind::ALTER_TEXT_SEARCH_DICTIONARY => {
31938 Stmt::AlterTextSearchDictionary(AlterTextSearchDictionary { syntax })
31939 }
31940 SyntaxKind::ALTER_TEXT_SEARCH_PARSER => {
31941 Stmt::AlterTextSearchParser(AlterTextSearchParser { syntax })
31942 }
31943 SyntaxKind::ALTER_TEXT_SEARCH_TEMPLATE => {
31944 Stmt::AlterTextSearchTemplate(AlterTextSearchTemplate { syntax })
31945 }
31946 SyntaxKind::ALTER_TRIGGER => Stmt::AlterTrigger(AlterTrigger { syntax }),
31947 SyntaxKind::ALTER_TYPE => Stmt::AlterType(AlterType { syntax }),
31948 SyntaxKind::ALTER_USER => Stmt::AlterUser(AlterUser { syntax }),
31949 SyntaxKind::ALTER_USER_MAPPING => Stmt::AlterUserMapping(AlterUserMapping { syntax }),
31950 SyntaxKind::ALTER_VIEW => Stmt::AlterView(AlterView { syntax }),
31951 SyntaxKind::ANALYZE => Stmt::Analyze(Analyze { syntax }),
31952 SyntaxKind::BEGIN => Stmt::Begin(Begin { syntax }),
31953 SyntaxKind::CALL => Stmt::Call(Call { syntax }),
31954 SyntaxKind::CHECKPOINT => Stmt::Checkpoint(Checkpoint { syntax }),
31955 SyntaxKind::CLOSE => Stmt::Close(Close { syntax }),
31956 SyntaxKind::CLUSTER => Stmt::Cluster(Cluster { syntax }),
31957 SyntaxKind::COMMENT_ON => Stmt::CommentOn(CommentOn { syntax }),
31958 SyntaxKind::COMMIT => Stmt::Commit(Commit { syntax }),
31959 SyntaxKind::COPY => Stmt::Copy(Copy { syntax }),
31960 SyntaxKind::CREATE_ACCESS_METHOD => {
31961 Stmt::CreateAccessMethod(CreateAccessMethod { syntax })
31962 }
31963 SyntaxKind::CREATE_AGGREGATE => Stmt::CreateAggregate(CreateAggregate { syntax }),
31964 SyntaxKind::CREATE_CAST => Stmt::CreateCast(CreateCast { syntax }),
31965 SyntaxKind::CREATE_COLLATION => Stmt::CreateCollation(CreateCollation { syntax }),
31966 SyntaxKind::CREATE_CONVERSION => Stmt::CreateConversion(CreateConversion { syntax }),
31967 SyntaxKind::CREATE_DATABASE => Stmt::CreateDatabase(CreateDatabase { syntax }),
31968 SyntaxKind::CREATE_DOMAIN => Stmt::CreateDomain(CreateDomain { syntax }),
31969 SyntaxKind::CREATE_EVENT_TRIGGER => {
31970 Stmt::CreateEventTrigger(CreateEventTrigger { syntax })
31971 }
31972 SyntaxKind::CREATE_EXTENSION => Stmt::CreateExtension(CreateExtension { syntax }),
31973 SyntaxKind::CREATE_FOREIGN_DATA_WRAPPER => {
31974 Stmt::CreateForeignDataWrapper(CreateForeignDataWrapper { syntax })
31975 }
31976 SyntaxKind::CREATE_FOREIGN_TABLE => {
31977 Stmt::CreateForeignTable(CreateForeignTable { syntax })
31978 }
31979 SyntaxKind::CREATE_FUNCTION => Stmt::CreateFunction(CreateFunction { syntax }),
31980 SyntaxKind::CREATE_GROUP => Stmt::CreateGroup(CreateGroup { syntax }),
31981 SyntaxKind::CREATE_INDEX => Stmt::CreateIndex(CreateIndex { syntax }),
31982 SyntaxKind::CREATE_LANGUAGE => Stmt::CreateLanguage(CreateLanguage { syntax }),
31983 SyntaxKind::CREATE_MATERIALIZED_VIEW => {
31984 Stmt::CreateMaterializedView(CreateMaterializedView { syntax })
31985 }
31986 SyntaxKind::CREATE_OPERATOR => Stmt::CreateOperator(CreateOperator { syntax }),
31987 SyntaxKind::CREATE_OPERATOR_CLASS => {
31988 Stmt::CreateOperatorClass(CreateOperatorClass { syntax })
31989 }
31990 SyntaxKind::CREATE_OPERATOR_FAMILY => {
31991 Stmt::CreateOperatorFamily(CreateOperatorFamily { syntax })
31992 }
31993 SyntaxKind::CREATE_POLICY => Stmt::CreatePolicy(CreatePolicy { syntax }),
31994 SyntaxKind::CREATE_PROCEDURE => Stmt::CreateProcedure(CreateProcedure { syntax }),
31995 SyntaxKind::CREATE_PUBLICATION => Stmt::CreatePublication(CreatePublication { syntax }),
31996 SyntaxKind::CREATE_ROLE => Stmt::CreateRole(CreateRole { syntax }),
31997 SyntaxKind::CREATE_RULE => Stmt::CreateRule(CreateRule { syntax }),
31998 SyntaxKind::CREATE_SCHEMA => Stmt::CreateSchema(CreateSchema { syntax }),
31999 SyntaxKind::CREATE_SEQUENCE => Stmt::CreateSequence(CreateSequence { syntax }),
32000 SyntaxKind::CREATE_SERVER => Stmt::CreateServer(CreateServer { syntax }),
32001 SyntaxKind::CREATE_STATISTICS => Stmt::CreateStatistics(CreateStatistics { syntax }),
32002 SyntaxKind::CREATE_SUBSCRIPTION => {
32003 Stmt::CreateSubscription(CreateSubscription { syntax })
32004 }
32005 SyntaxKind::CREATE_TABLE => Stmt::CreateTable(CreateTable { syntax }),
32006 SyntaxKind::CREATE_TABLE_AS => Stmt::CreateTableAs(CreateTableAs { syntax }),
32007 SyntaxKind::CREATE_TABLESPACE => Stmt::CreateTablespace(CreateTablespace { syntax }),
32008 SyntaxKind::CREATE_TEXT_SEARCH_CONFIGURATION => {
32009 Stmt::CreateTextSearchConfiguration(CreateTextSearchConfiguration { syntax })
32010 }
32011 SyntaxKind::CREATE_TEXT_SEARCH_DICTIONARY => {
32012 Stmt::CreateTextSearchDictionary(CreateTextSearchDictionary { syntax })
32013 }
32014 SyntaxKind::CREATE_TEXT_SEARCH_PARSER => {
32015 Stmt::CreateTextSearchParser(CreateTextSearchParser { syntax })
32016 }
32017 SyntaxKind::CREATE_TEXT_SEARCH_TEMPLATE => {
32018 Stmt::CreateTextSearchTemplate(CreateTextSearchTemplate { syntax })
32019 }
32020 SyntaxKind::CREATE_TRANSFORM => Stmt::CreateTransform(CreateTransform { syntax }),
32021 SyntaxKind::CREATE_TRIGGER => Stmt::CreateTrigger(CreateTrigger { syntax }),
32022 SyntaxKind::CREATE_TYPE => Stmt::CreateType(CreateType { syntax }),
32023 SyntaxKind::CREATE_USER => Stmt::CreateUser(CreateUser { syntax }),
32024 SyntaxKind::CREATE_USER_MAPPING => {
32025 Stmt::CreateUserMapping(CreateUserMapping { syntax })
32026 }
32027 SyntaxKind::CREATE_VIEW => Stmt::CreateView(CreateView { syntax }),
32028 SyntaxKind::DEALLOCATE => Stmt::Deallocate(Deallocate { syntax }),
32029 SyntaxKind::DECLARE => Stmt::Declare(Declare { syntax }),
32030 SyntaxKind::DELETE => Stmt::Delete(Delete { syntax }),
32031 SyntaxKind::DISCARD => Stmt::Discard(Discard { syntax }),
32032 SyntaxKind::DO => Stmt::Do(Do { syntax }),
32033 SyntaxKind::DROP_ACCESS_METHOD => Stmt::DropAccessMethod(DropAccessMethod { syntax }),
32034 SyntaxKind::DROP_AGGREGATE => Stmt::DropAggregate(DropAggregate { syntax }),
32035 SyntaxKind::DROP_CAST => Stmt::DropCast(DropCast { syntax }),
32036 SyntaxKind::DROP_COLLATION => Stmt::DropCollation(DropCollation { syntax }),
32037 SyntaxKind::DROP_CONVERSION => Stmt::DropConversion(DropConversion { syntax }),
32038 SyntaxKind::DROP_DATABASE => Stmt::DropDatabase(DropDatabase { syntax }),
32039 SyntaxKind::DROP_DOMAIN => Stmt::DropDomain(DropDomain { syntax }),
32040 SyntaxKind::DROP_EVENT_TRIGGER => Stmt::DropEventTrigger(DropEventTrigger { syntax }),
32041 SyntaxKind::DROP_EXTENSION => Stmt::DropExtension(DropExtension { syntax }),
32042 SyntaxKind::DROP_FOREIGN_DATA_WRAPPER => {
32043 Stmt::DropForeignDataWrapper(DropForeignDataWrapper { syntax })
32044 }
32045 SyntaxKind::DROP_FOREIGN_TABLE => Stmt::DropForeignTable(DropForeignTable { syntax }),
32046 SyntaxKind::DROP_FUNCTION => Stmt::DropFunction(DropFunction { syntax }),
32047 SyntaxKind::DROP_GROUP => Stmt::DropGroup(DropGroup { syntax }),
32048 SyntaxKind::DROP_INDEX => Stmt::DropIndex(DropIndex { syntax }),
32049 SyntaxKind::DROP_LANGUAGE => Stmt::DropLanguage(DropLanguage { syntax }),
32050 SyntaxKind::DROP_MATERIALIZED_VIEW => {
32051 Stmt::DropMaterializedView(DropMaterializedView { syntax })
32052 }
32053 SyntaxKind::DROP_OPERATOR => Stmt::DropOperator(DropOperator { syntax }),
32054 SyntaxKind::DROP_OPERATOR_CLASS => {
32055 Stmt::DropOperatorClass(DropOperatorClass { syntax })
32056 }
32057 SyntaxKind::DROP_OPERATOR_FAMILY => {
32058 Stmt::DropOperatorFamily(DropOperatorFamily { syntax })
32059 }
32060 SyntaxKind::DROP_OWNED => Stmt::DropOwned(DropOwned { syntax }),
32061 SyntaxKind::DROP_POLICY => Stmt::DropPolicy(DropPolicy { syntax }),
32062 SyntaxKind::DROP_PROCEDURE => Stmt::DropProcedure(DropProcedure { syntax }),
32063 SyntaxKind::DROP_PUBLICATION => Stmt::DropPublication(DropPublication { syntax }),
32064 SyntaxKind::DROP_ROLE => Stmt::DropRole(DropRole { syntax }),
32065 SyntaxKind::DROP_ROUTINE => Stmt::DropRoutine(DropRoutine { syntax }),
32066 SyntaxKind::DROP_RULE => Stmt::DropRule(DropRule { syntax }),
32067 SyntaxKind::DROP_SCHEMA => Stmt::DropSchema(DropSchema { syntax }),
32068 SyntaxKind::DROP_SEQUENCE => Stmt::DropSequence(DropSequence { syntax }),
32069 SyntaxKind::DROP_SERVER => Stmt::DropServer(DropServer { syntax }),
32070 SyntaxKind::DROP_STATISTICS => Stmt::DropStatistics(DropStatistics { syntax }),
32071 SyntaxKind::DROP_SUBSCRIPTION => Stmt::DropSubscription(DropSubscription { syntax }),
32072 SyntaxKind::DROP_TABLE => Stmt::DropTable(DropTable { syntax }),
32073 SyntaxKind::DROP_TABLESPACE => Stmt::DropTablespace(DropTablespace { syntax }),
32074 SyntaxKind::DROP_TEXT_SEARCH_CONFIG => {
32075 Stmt::DropTextSearchConfig(DropTextSearchConfig { syntax })
32076 }
32077 SyntaxKind::DROP_TEXT_SEARCH_DICT => {
32078 Stmt::DropTextSearchDict(DropTextSearchDict { syntax })
32079 }
32080 SyntaxKind::DROP_TEXT_SEARCH_PARSER => {
32081 Stmt::DropTextSearchParser(DropTextSearchParser { syntax })
32082 }
32083 SyntaxKind::DROP_TEXT_SEARCH_TEMPLATE => {
32084 Stmt::DropTextSearchTemplate(DropTextSearchTemplate { syntax })
32085 }
32086 SyntaxKind::DROP_TRANSFORM => Stmt::DropTransform(DropTransform { syntax }),
32087 SyntaxKind::DROP_TRIGGER => Stmt::DropTrigger(DropTrigger { syntax }),
32088 SyntaxKind::DROP_TYPE => Stmt::DropType(DropType { syntax }),
32089 SyntaxKind::DROP_USER => Stmt::DropUser(DropUser { syntax }),
32090 SyntaxKind::DROP_USER_MAPPING => Stmt::DropUserMapping(DropUserMapping { syntax }),
32091 SyntaxKind::DROP_VIEW => Stmt::DropView(DropView { syntax }),
32092 SyntaxKind::EXECUTE => Stmt::Execute(Execute { syntax }),
32093 SyntaxKind::EXPLAIN => Stmt::Explain(Explain { syntax }),
32094 SyntaxKind::FETCH => Stmt::Fetch(Fetch { syntax }),
32095 SyntaxKind::GRANT => Stmt::Grant(Grant { syntax }),
32096 SyntaxKind::IMPORT_FOREIGN_SCHEMA => {
32097 Stmt::ImportForeignSchema(ImportForeignSchema { syntax })
32098 }
32099 SyntaxKind::INSERT => Stmt::Insert(Insert { syntax }),
32100 SyntaxKind::LISTEN => Stmt::Listen(Listen { syntax }),
32101 SyntaxKind::LOAD => Stmt::Load(Load { syntax }),
32102 SyntaxKind::LOCK => Stmt::Lock(Lock { syntax }),
32103 SyntaxKind::MERGE => Stmt::Merge(Merge { syntax }),
32104 SyntaxKind::MOVE => Stmt::Move(Move { syntax }),
32105 SyntaxKind::NOTIFY => Stmt::Notify(Notify { syntax }),
32106 SyntaxKind::PAREN_SELECT => Stmt::ParenSelect(ParenSelect { syntax }),
32107 SyntaxKind::PREPARE => Stmt::Prepare(Prepare { syntax }),
32108 SyntaxKind::PREPARE_TRANSACTION => {
32109 Stmt::PrepareTransaction(PrepareTransaction { syntax })
32110 }
32111 SyntaxKind::REASSIGN => Stmt::Reassign(Reassign { syntax }),
32112 SyntaxKind::REFRESH => Stmt::Refresh(Refresh { syntax }),
32113 SyntaxKind::REINDEX => Stmt::Reindex(Reindex { syntax }),
32114 SyntaxKind::RELEASE_SAVEPOINT => Stmt::ReleaseSavepoint(ReleaseSavepoint { syntax }),
32115 SyntaxKind::RESET => Stmt::Reset(Reset { syntax }),
32116 SyntaxKind::RESET_SESSION_AUTH => Stmt::ResetSessionAuth(ResetSessionAuth { syntax }),
32117 SyntaxKind::REVOKE => Stmt::Revoke(Revoke { syntax }),
32118 SyntaxKind::ROLLBACK => Stmt::Rollback(Rollback { syntax }),
32119 SyntaxKind::SAVEPOINT => Stmt::Savepoint(Savepoint { syntax }),
32120 SyntaxKind::SECURITY_LABEL => Stmt::SecurityLabel(SecurityLabel { syntax }),
32121 SyntaxKind::SELECT => Stmt::Select(Select { syntax }),
32122 SyntaxKind::SELECT_INTO => Stmt::SelectInto(SelectInto { syntax }),
32123 SyntaxKind::SET => Stmt::Set(Set { syntax }),
32124 SyntaxKind::SET_CONSTRAINTS => Stmt::SetConstraints(SetConstraints { syntax }),
32125 SyntaxKind::SET_ROLE => Stmt::SetRole(SetRole { syntax }),
32126 SyntaxKind::SET_SESSION_AUTH => Stmt::SetSessionAuth(SetSessionAuth { syntax }),
32127 SyntaxKind::SET_TRANSACTION => Stmt::SetTransaction(SetTransaction { syntax }),
32128 SyntaxKind::SHOW => Stmt::Show(Show { syntax }),
32129 SyntaxKind::TABLE => Stmt::Table(Table { syntax }),
32130 SyntaxKind::TRUNCATE => Stmt::Truncate(Truncate { syntax }),
32131 SyntaxKind::UNLISTEN => Stmt::Unlisten(Unlisten { syntax }),
32132 SyntaxKind::UPDATE => Stmt::Update(Update { syntax }),
32133 SyntaxKind::VACUUM => Stmt::Vacuum(Vacuum { syntax }),
32134 SyntaxKind::VALUES => Stmt::Values(Values { syntax }),
32135 _ => {
32136 return None;
32137 }
32138 };
32139 Some(res)
32140 }
32141 #[inline]
32142 fn syntax(&self) -> &SyntaxNode {
32143 match self {
32144 Stmt::AlterAggregate(it) => &it.syntax,
32145 Stmt::AlterCollation(it) => &it.syntax,
32146 Stmt::AlterConversion(it) => &it.syntax,
32147 Stmt::AlterDatabase(it) => &it.syntax,
32148 Stmt::AlterDefaultPrivileges(it) => &it.syntax,
32149 Stmt::AlterDomain(it) => &it.syntax,
32150 Stmt::AlterEventTrigger(it) => &it.syntax,
32151 Stmt::AlterExtension(it) => &it.syntax,
32152 Stmt::AlterForeignDataWrapper(it) => &it.syntax,
32153 Stmt::AlterForeignTable(it) => &it.syntax,
32154 Stmt::AlterFunction(it) => &it.syntax,
32155 Stmt::AlterGroup(it) => &it.syntax,
32156 Stmt::AlterIndex(it) => &it.syntax,
32157 Stmt::AlterLanguage(it) => &it.syntax,
32158 Stmt::AlterLargeObject(it) => &it.syntax,
32159 Stmt::AlterMaterializedView(it) => &it.syntax,
32160 Stmt::AlterOperator(it) => &it.syntax,
32161 Stmt::AlterOperatorClass(it) => &it.syntax,
32162 Stmt::AlterOperatorFamily(it) => &it.syntax,
32163 Stmt::AlterPolicy(it) => &it.syntax,
32164 Stmt::AlterProcedure(it) => &it.syntax,
32165 Stmt::AlterPublication(it) => &it.syntax,
32166 Stmt::AlterRole(it) => &it.syntax,
32167 Stmt::AlterRoutine(it) => &it.syntax,
32168 Stmt::AlterRule(it) => &it.syntax,
32169 Stmt::AlterSchema(it) => &it.syntax,
32170 Stmt::AlterSequence(it) => &it.syntax,
32171 Stmt::AlterServer(it) => &it.syntax,
32172 Stmt::AlterStatistics(it) => &it.syntax,
32173 Stmt::AlterSubscription(it) => &it.syntax,
32174 Stmt::AlterSystem(it) => &it.syntax,
32175 Stmt::AlterTable(it) => &it.syntax,
32176 Stmt::AlterTablespace(it) => &it.syntax,
32177 Stmt::AlterTextSearchConfiguration(it) => &it.syntax,
32178 Stmt::AlterTextSearchDictionary(it) => &it.syntax,
32179 Stmt::AlterTextSearchParser(it) => &it.syntax,
32180 Stmt::AlterTextSearchTemplate(it) => &it.syntax,
32181 Stmt::AlterTrigger(it) => &it.syntax,
32182 Stmt::AlterType(it) => &it.syntax,
32183 Stmt::AlterUser(it) => &it.syntax,
32184 Stmt::AlterUserMapping(it) => &it.syntax,
32185 Stmt::AlterView(it) => &it.syntax,
32186 Stmt::Analyze(it) => &it.syntax,
32187 Stmt::Begin(it) => &it.syntax,
32188 Stmt::Call(it) => &it.syntax,
32189 Stmt::Checkpoint(it) => &it.syntax,
32190 Stmt::Close(it) => &it.syntax,
32191 Stmt::Cluster(it) => &it.syntax,
32192 Stmt::CommentOn(it) => &it.syntax,
32193 Stmt::Commit(it) => &it.syntax,
32194 Stmt::Copy(it) => &it.syntax,
32195 Stmt::CreateAccessMethod(it) => &it.syntax,
32196 Stmt::CreateAggregate(it) => &it.syntax,
32197 Stmt::CreateCast(it) => &it.syntax,
32198 Stmt::CreateCollation(it) => &it.syntax,
32199 Stmt::CreateConversion(it) => &it.syntax,
32200 Stmt::CreateDatabase(it) => &it.syntax,
32201 Stmt::CreateDomain(it) => &it.syntax,
32202 Stmt::CreateEventTrigger(it) => &it.syntax,
32203 Stmt::CreateExtension(it) => &it.syntax,
32204 Stmt::CreateForeignDataWrapper(it) => &it.syntax,
32205 Stmt::CreateForeignTable(it) => &it.syntax,
32206 Stmt::CreateFunction(it) => &it.syntax,
32207 Stmt::CreateGroup(it) => &it.syntax,
32208 Stmt::CreateIndex(it) => &it.syntax,
32209 Stmt::CreateLanguage(it) => &it.syntax,
32210 Stmt::CreateMaterializedView(it) => &it.syntax,
32211 Stmt::CreateOperator(it) => &it.syntax,
32212 Stmt::CreateOperatorClass(it) => &it.syntax,
32213 Stmt::CreateOperatorFamily(it) => &it.syntax,
32214 Stmt::CreatePolicy(it) => &it.syntax,
32215 Stmt::CreateProcedure(it) => &it.syntax,
32216 Stmt::CreatePublication(it) => &it.syntax,
32217 Stmt::CreateRole(it) => &it.syntax,
32218 Stmt::CreateRule(it) => &it.syntax,
32219 Stmt::CreateSchema(it) => &it.syntax,
32220 Stmt::CreateSequence(it) => &it.syntax,
32221 Stmt::CreateServer(it) => &it.syntax,
32222 Stmt::CreateStatistics(it) => &it.syntax,
32223 Stmt::CreateSubscription(it) => &it.syntax,
32224 Stmt::CreateTable(it) => &it.syntax,
32225 Stmt::CreateTableAs(it) => &it.syntax,
32226 Stmt::CreateTablespace(it) => &it.syntax,
32227 Stmt::CreateTextSearchConfiguration(it) => &it.syntax,
32228 Stmt::CreateTextSearchDictionary(it) => &it.syntax,
32229 Stmt::CreateTextSearchParser(it) => &it.syntax,
32230 Stmt::CreateTextSearchTemplate(it) => &it.syntax,
32231 Stmt::CreateTransform(it) => &it.syntax,
32232 Stmt::CreateTrigger(it) => &it.syntax,
32233 Stmt::CreateType(it) => &it.syntax,
32234 Stmt::CreateUser(it) => &it.syntax,
32235 Stmt::CreateUserMapping(it) => &it.syntax,
32236 Stmt::CreateView(it) => &it.syntax,
32237 Stmt::Deallocate(it) => &it.syntax,
32238 Stmt::Declare(it) => &it.syntax,
32239 Stmt::Delete(it) => &it.syntax,
32240 Stmt::Discard(it) => &it.syntax,
32241 Stmt::Do(it) => &it.syntax,
32242 Stmt::DropAccessMethod(it) => &it.syntax,
32243 Stmt::DropAggregate(it) => &it.syntax,
32244 Stmt::DropCast(it) => &it.syntax,
32245 Stmt::DropCollation(it) => &it.syntax,
32246 Stmt::DropConversion(it) => &it.syntax,
32247 Stmt::DropDatabase(it) => &it.syntax,
32248 Stmt::DropDomain(it) => &it.syntax,
32249 Stmt::DropEventTrigger(it) => &it.syntax,
32250 Stmt::DropExtension(it) => &it.syntax,
32251 Stmt::DropForeignDataWrapper(it) => &it.syntax,
32252 Stmt::DropForeignTable(it) => &it.syntax,
32253 Stmt::DropFunction(it) => &it.syntax,
32254 Stmt::DropGroup(it) => &it.syntax,
32255 Stmt::DropIndex(it) => &it.syntax,
32256 Stmt::DropLanguage(it) => &it.syntax,
32257 Stmt::DropMaterializedView(it) => &it.syntax,
32258 Stmt::DropOperator(it) => &it.syntax,
32259 Stmt::DropOperatorClass(it) => &it.syntax,
32260 Stmt::DropOperatorFamily(it) => &it.syntax,
32261 Stmt::DropOwned(it) => &it.syntax,
32262 Stmt::DropPolicy(it) => &it.syntax,
32263 Stmt::DropProcedure(it) => &it.syntax,
32264 Stmt::DropPublication(it) => &it.syntax,
32265 Stmt::DropRole(it) => &it.syntax,
32266 Stmt::DropRoutine(it) => &it.syntax,
32267 Stmt::DropRule(it) => &it.syntax,
32268 Stmt::DropSchema(it) => &it.syntax,
32269 Stmt::DropSequence(it) => &it.syntax,
32270 Stmt::DropServer(it) => &it.syntax,
32271 Stmt::DropStatistics(it) => &it.syntax,
32272 Stmt::DropSubscription(it) => &it.syntax,
32273 Stmt::DropTable(it) => &it.syntax,
32274 Stmt::DropTablespace(it) => &it.syntax,
32275 Stmt::DropTextSearchConfig(it) => &it.syntax,
32276 Stmt::DropTextSearchDict(it) => &it.syntax,
32277 Stmt::DropTextSearchParser(it) => &it.syntax,
32278 Stmt::DropTextSearchTemplate(it) => &it.syntax,
32279 Stmt::DropTransform(it) => &it.syntax,
32280 Stmt::DropTrigger(it) => &it.syntax,
32281 Stmt::DropType(it) => &it.syntax,
32282 Stmt::DropUser(it) => &it.syntax,
32283 Stmt::DropUserMapping(it) => &it.syntax,
32284 Stmt::DropView(it) => &it.syntax,
32285 Stmt::Execute(it) => &it.syntax,
32286 Stmt::Explain(it) => &it.syntax,
32287 Stmt::Fetch(it) => &it.syntax,
32288 Stmt::Grant(it) => &it.syntax,
32289 Stmt::ImportForeignSchema(it) => &it.syntax,
32290 Stmt::Insert(it) => &it.syntax,
32291 Stmt::Listen(it) => &it.syntax,
32292 Stmt::Load(it) => &it.syntax,
32293 Stmt::Lock(it) => &it.syntax,
32294 Stmt::Merge(it) => &it.syntax,
32295 Stmt::Move(it) => &it.syntax,
32296 Stmt::Notify(it) => &it.syntax,
32297 Stmt::ParenSelect(it) => &it.syntax,
32298 Stmt::Prepare(it) => &it.syntax,
32299 Stmt::PrepareTransaction(it) => &it.syntax,
32300 Stmt::Reassign(it) => &it.syntax,
32301 Stmt::Refresh(it) => &it.syntax,
32302 Stmt::Reindex(it) => &it.syntax,
32303 Stmt::ReleaseSavepoint(it) => &it.syntax,
32304 Stmt::Reset(it) => &it.syntax,
32305 Stmt::ResetSessionAuth(it) => &it.syntax,
32306 Stmt::Revoke(it) => &it.syntax,
32307 Stmt::Rollback(it) => &it.syntax,
32308 Stmt::Savepoint(it) => &it.syntax,
32309 Stmt::SecurityLabel(it) => &it.syntax,
32310 Stmt::Select(it) => &it.syntax,
32311 Stmt::SelectInto(it) => &it.syntax,
32312 Stmt::Set(it) => &it.syntax,
32313 Stmt::SetConstraints(it) => &it.syntax,
32314 Stmt::SetRole(it) => &it.syntax,
32315 Stmt::SetSessionAuth(it) => &it.syntax,
32316 Stmt::SetTransaction(it) => &it.syntax,
32317 Stmt::Show(it) => &it.syntax,
32318 Stmt::Table(it) => &it.syntax,
32319 Stmt::Truncate(it) => &it.syntax,
32320 Stmt::Unlisten(it) => &it.syntax,
32321 Stmt::Update(it) => &it.syntax,
32322 Stmt::Vacuum(it) => &it.syntax,
32323 Stmt::Values(it) => &it.syntax,
32324 }
32325 }
32326}
32327impl From<AlterAggregate> for Stmt {
32328 #[inline]
32329 fn from(node: AlterAggregate) -> Stmt {
32330 Stmt::AlterAggregate(node)
32331 }
32332}
32333impl From<AlterCollation> for Stmt {
32334 #[inline]
32335 fn from(node: AlterCollation) -> Stmt {
32336 Stmt::AlterCollation(node)
32337 }
32338}
32339impl From<AlterConversion> for Stmt {
32340 #[inline]
32341 fn from(node: AlterConversion) -> Stmt {
32342 Stmt::AlterConversion(node)
32343 }
32344}
32345impl From<AlterDatabase> for Stmt {
32346 #[inline]
32347 fn from(node: AlterDatabase) -> Stmt {
32348 Stmt::AlterDatabase(node)
32349 }
32350}
32351impl From<AlterDefaultPrivileges> for Stmt {
32352 #[inline]
32353 fn from(node: AlterDefaultPrivileges) -> Stmt {
32354 Stmt::AlterDefaultPrivileges(node)
32355 }
32356}
32357impl From<AlterDomain> for Stmt {
32358 #[inline]
32359 fn from(node: AlterDomain) -> Stmt {
32360 Stmt::AlterDomain(node)
32361 }
32362}
32363impl From<AlterEventTrigger> for Stmt {
32364 #[inline]
32365 fn from(node: AlterEventTrigger) -> Stmt {
32366 Stmt::AlterEventTrigger(node)
32367 }
32368}
32369impl From<AlterExtension> for Stmt {
32370 #[inline]
32371 fn from(node: AlterExtension) -> Stmt {
32372 Stmt::AlterExtension(node)
32373 }
32374}
32375impl From<AlterForeignDataWrapper> for Stmt {
32376 #[inline]
32377 fn from(node: AlterForeignDataWrapper) -> Stmt {
32378 Stmt::AlterForeignDataWrapper(node)
32379 }
32380}
32381impl From<AlterForeignTable> for Stmt {
32382 #[inline]
32383 fn from(node: AlterForeignTable) -> Stmt {
32384 Stmt::AlterForeignTable(node)
32385 }
32386}
32387impl From<AlterFunction> for Stmt {
32388 #[inline]
32389 fn from(node: AlterFunction) -> Stmt {
32390 Stmt::AlterFunction(node)
32391 }
32392}
32393impl From<AlterGroup> for Stmt {
32394 #[inline]
32395 fn from(node: AlterGroup) -> Stmt {
32396 Stmt::AlterGroup(node)
32397 }
32398}
32399impl From<AlterIndex> for Stmt {
32400 #[inline]
32401 fn from(node: AlterIndex) -> Stmt {
32402 Stmt::AlterIndex(node)
32403 }
32404}
32405impl From<AlterLanguage> for Stmt {
32406 #[inline]
32407 fn from(node: AlterLanguage) -> Stmt {
32408 Stmt::AlterLanguage(node)
32409 }
32410}
32411impl From<AlterLargeObject> for Stmt {
32412 #[inline]
32413 fn from(node: AlterLargeObject) -> Stmt {
32414 Stmt::AlterLargeObject(node)
32415 }
32416}
32417impl From<AlterMaterializedView> for Stmt {
32418 #[inline]
32419 fn from(node: AlterMaterializedView) -> Stmt {
32420 Stmt::AlterMaterializedView(node)
32421 }
32422}
32423impl From<AlterOperator> for Stmt {
32424 #[inline]
32425 fn from(node: AlterOperator) -> Stmt {
32426 Stmt::AlterOperator(node)
32427 }
32428}
32429impl From<AlterOperatorClass> for Stmt {
32430 #[inline]
32431 fn from(node: AlterOperatorClass) -> Stmt {
32432 Stmt::AlterOperatorClass(node)
32433 }
32434}
32435impl From<AlterOperatorFamily> for Stmt {
32436 #[inline]
32437 fn from(node: AlterOperatorFamily) -> Stmt {
32438 Stmt::AlterOperatorFamily(node)
32439 }
32440}
32441impl From<AlterPolicy> for Stmt {
32442 #[inline]
32443 fn from(node: AlterPolicy) -> Stmt {
32444 Stmt::AlterPolicy(node)
32445 }
32446}
32447impl From<AlterProcedure> for Stmt {
32448 #[inline]
32449 fn from(node: AlterProcedure) -> Stmt {
32450 Stmt::AlterProcedure(node)
32451 }
32452}
32453impl From<AlterPublication> for Stmt {
32454 #[inline]
32455 fn from(node: AlterPublication) -> Stmt {
32456 Stmt::AlterPublication(node)
32457 }
32458}
32459impl From<AlterRole> for Stmt {
32460 #[inline]
32461 fn from(node: AlterRole) -> Stmt {
32462 Stmt::AlterRole(node)
32463 }
32464}
32465impl From<AlterRoutine> for Stmt {
32466 #[inline]
32467 fn from(node: AlterRoutine) -> Stmt {
32468 Stmt::AlterRoutine(node)
32469 }
32470}
32471impl From<AlterRule> for Stmt {
32472 #[inline]
32473 fn from(node: AlterRule) -> Stmt {
32474 Stmt::AlterRule(node)
32475 }
32476}
32477impl From<AlterSchema> for Stmt {
32478 #[inline]
32479 fn from(node: AlterSchema) -> Stmt {
32480 Stmt::AlterSchema(node)
32481 }
32482}
32483impl From<AlterSequence> for Stmt {
32484 #[inline]
32485 fn from(node: AlterSequence) -> Stmt {
32486 Stmt::AlterSequence(node)
32487 }
32488}
32489impl From<AlterServer> for Stmt {
32490 #[inline]
32491 fn from(node: AlterServer) -> Stmt {
32492 Stmt::AlterServer(node)
32493 }
32494}
32495impl From<AlterStatistics> for Stmt {
32496 #[inline]
32497 fn from(node: AlterStatistics) -> Stmt {
32498 Stmt::AlterStatistics(node)
32499 }
32500}
32501impl From<AlterSubscription> for Stmt {
32502 #[inline]
32503 fn from(node: AlterSubscription) -> Stmt {
32504 Stmt::AlterSubscription(node)
32505 }
32506}
32507impl From<AlterSystem> for Stmt {
32508 #[inline]
32509 fn from(node: AlterSystem) -> Stmt {
32510 Stmt::AlterSystem(node)
32511 }
32512}
32513impl From<AlterTable> for Stmt {
32514 #[inline]
32515 fn from(node: AlterTable) -> Stmt {
32516 Stmt::AlterTable(node)
32517 }
32518}
32519impl From<AlterTablespace> for Stmt {
32520 #[inline]
32521 fn from(node: AlterTablespace) -> Stmt {
32522 Stmt::AlterTablespace(node)
32523 }
32524}
32525impl From<AlterTextSearchConfiguration> for Stmt {
32526 #[inline]
32527 fn from(node: AlterTextSearchConfiguration) -> Stmt {
32528 Stmt::AlterTextSearchConfiguration(node)
32529 }
32530}
32531impl From<AlterTextSearchDictionary> for Stmt {
32532 #[inline]
32533 fn from(node: AlterTextSearchDictionary) -> Stmt {
32534 Stmt::AlterTextSearchDictionary(node)
32535 }
32536}
32537impl From<AlterTextSearchParser> for Stmt {
32538 #[inline]
32539 fn from(node: AlterTextSearchParser) -> Stmt {
32540 Stmt::AlterTextSearchParser(node)
32541 }
32542}
32543impl From<AlterTextSearchTemplate> for Stmt {
32544 #[inline]
32545 fn from(node: AlterTextSearchTemplate) -> Stmt {
32546 Stmt::AlterTextSearchTemplate(node)
32547 }
32548}
32549impl From<AlterTrigger> for Stmt {
32550 #[inline]
32551 fn from(node: AlterTrigger) -> Stmt {
32552 Stmt::AlterTrigger(node)
32553 }
32554}
32555impl From<AlterType> for Stmt {
32556 #[inline]
32557 fn from(node: AlterType) -> Stmt {
32558 Stmt::AlterType(node)
32559 }
32560}
32561impl From<AlterUser> for Stmt {
32562 #[inline]
32563 fn from(node: AlterUser) -> Stmt {
32564 Stmt::AlterUser(node)
32565 }
32566}
32567impl From<AlterUserMapping> for Stmt {
32568 #[inline]
32569 fn from(node: AlterUserMapping) -> Stmt {
32570 Stmt::AlterUserMapping(node)
32571 }
32572}
32573impl From<AlterView> for Stmt {
32574 #[inline]
32575 fn from(node: AlterView) -> Stmt {
32576 Stmt::AlterView(node)
32577 }
32578}
32579impl From<Analyze> for Stmt {
32580 #[inline]
32581 fn from(node: Analyze) -> Stmt {
32582 Stmt::Analyze(node)
32583 }
32584}
32585impl From<Begin> for Stmt {
32586 #[inline]
32587 fn from(node: Begin) -> Stmt {
32588 Stmt::Begin(node)
32589 }
32590}
32591impl From<Call> for Stmt {
32592 #[inline]
32593 fn from(node: Call) -> Stmt {
32594 Stmt::Call(node)
32595 }
32596}
32597impl From<Checkpoint> for Stmt {
32598 #[inline]
32599 fn from(node: Checkpoint) -> Stmt {
32600 Stmt::Checkpoint(node)
32601 }
32602}
32603impl From<Close> for Stmt {
32604 #[inline]
32605 fn from(node: Close) -> Stmt {
32606 Stmt::Close(node)
32607 }
32608}
32609impl From<Cluster> for Stmt {
32610 #[inline]
32611 fn from(node: Cluster) -> Stmt {
32612 Stmt::Cluster(node)
32613 }
32614}
32615impl From<CommentOn> for Stmt {
32616 #[inline]
32617 fn from(node: CommentOn) -> Stmt {
32618 Stmt::CommentOn(node)
32619 }
32620}
32621impl From<Commit> for Stmt {
32622 #[inline]
32623 fn from(node: Commit) -> Stmt {
32624 Stmt::Commit(node)
32625 }
32626}
32627impl From<Copy> for Stmt {
32628 #[inline]
32629 fn from(node: Copy) -> Stmt {
32630 Stmt::Copy(node)
32631 }
32632}
32633impl From<CreateAccessMethod> for Stmt {
32634 #[inline]
32635 fn from(node: CreateAccessMethod) -> Stmt {
32636 Stmt::CreateAccessMethod(node)
32637 }
32638}
32639impl From<CreateAggregate> for Stmt {
32640 #[inline]
32641 fn from(node: CreateAggregate) -> Stmt {
32642 Stmt::CreateAggregate(node)
32643 }
32644}
32645impl From<CreateCast> for Stmt {
32646 #[inline]
32647 fn from(node: CreateCast) -> Stmt {
32648 Stmt::CreateCast(node)
32649 }
32650}
32651impl From<CreateCollation> for Stmt {
32652 #[inline]
32653 fn from(node: CreateCollation) -> Stmt {
32654 Stmt::CreateCollation(node)
32655 }
32656}
32657impl From<CreateConversion> for Stmt {
32658 #[inline]
32659 fn from(node: CreateConversion) -> Stmt {
32660 Stmt::CreateConversion(node)
32661 }
32662}
32663impl From<CreateDatabase> for Stmt {
32664 #[inline]
32665 fn from(node: CreateDatabase) -> Stmt {
32666 Stmt::CreateDatabase(node)
32667 }
32668}
32669impl From<CreateDomain> for Stmt {
32670 #[inline]
32671 fn from(node: CreateDomain) -> Stmt {
32672 Stmt::CreateDomain(node)
32673 }
32674}
32675impl From<CreateEventTrigger> for Stmt {
32676 #[inline]
32677 fn from(node: CreateEventTrigger) -> Stmt {
32678 Stmt::CreateEventTrigger(node)
32679 }
32680}
32681impl From<CreateExtension> for Stmt {
32682 #[inline]
32683 fn from(node: CreateExtension) -> Stmt {
32684 Stmt::CreateExtension(node)
32685 }
32686}
32687impl From<CreateForeignDataWrapper> for Stmt {
32688 #[inline]
32689 fn from(node: CreateForeignDataWrapper) -> Stmt {
32690 Stmt::CreateForeignDataWrapper(node)
32691 }
32692}
32693impl From<CreateForeignTable> for Stmt {
32694 #[inline]
32695 fn from(node: CreateForeignTable) -> Stmt {
32696 Stmt::CreateForeignTable(node)
32697 }
32698}
32699impl From<CreateFunction> for Stmt {
32700 #[inline]
32701 fn from(node: CreateFunction) -> Stmt {
32702 Stmt::CreateFunction(node)
32703 }
32704}
32705impl From<CreateGroup> for Stmt {
32706 #[inline]
32707 fn from(node: CreateGroup) -> Stmt {
32708 Stmt::CreateGroup(node)
32709 }
32710}
32711impl From<CreateIndex> for Stmt {
32712 #[inline]
32713 fn from(node: CreateIndex) -> Stmt {
32714 Stmt::CreateIndex(node)
32715 }
32716}
32717impl From<CreateLanguage> for Stmt {
32718 #[inline]
32719 fn from(node: CreateLanguage) -> Stmt {
32720 Stmt::CreateLanguage(node)
32721 }
32722}
32723impl From<CreateMaterializedView> for Stmt {
32724 #[inline]
32725 fn from(node: CreateMaterializedView) -> Stmt {
32726 Stmt::CreateMaterializedView(node)
32727 }
32728}
32729impl From<CreateOperator> for Stmt {
32730 #[inline]
32731 fn from(node: CreateOperator) -> Stmt {
32732 Stmt::CreateOperator(node)
32733 }
32734}
32735impl From<CreateOperatorClass> for Stmt {
32736 #[inline]
32737 fn from(node: CreateOperatorClass) -> Stmt {
32738 Stmt::CreateOperatorClass(node)
32739 }
32740}
32741impl From<CreateOperatorFamily> for Stmt {
32742 #[inline]
32743 fn from(node: CreateOperatorFamily) -> Stmt {
32744 Stmt::CreateOperatorFamily(node)
32745 }
32746}
32747impl From<CreatePolicy> for Stmt {
32748 #[inline]
32749 fn from(node: CreatePolicy) -> Stmt {
32750 Stmt::CreatePolicy(node)
32751 }
32752}
32753impl From<CreateProcedure> for Stmt {
32754 #[inline]
32755 fn from(node: CreateProcedure) -> Stmt {
32756 Stmt::CreateProcedure(node)
32757 }
32758}
32759impl From<CreatePublication> for Stmt {
32760 #[inline]
32761 fn from(node: CreatePublication) -> Stmt {
32762 Stmt::CreatePublication(node)
32763 }
32764}
32765impl From<CreateRole> for Stmt {
32766 #[inline]
32767 fn from(node: CreateRole) -> Stmt {
32768 Stmt::CreateRole(node)
32769 }
32770}
32771impl From<CreateRule> for Stmt {
32772 #[inline]
32773 fn from(node: CreateRule) -> Stmt {
32774 Stmt::CreateRule(node)
32775 }
32776}
32777impl From<CreateSchema> for Stmt {
32778 #[inline]
32779 fn from(node: CreateSchema) -> Stmt {
32780 Stmt::CreateSchema(node)
32781 }
32782}
32783impl From<CreateSequence> for Stmt {
32784 #[inline]
32785 fn from(node: CreateSequence) -> Stmt {
32786 Stmt::CreateSequence(node)
32787 }
32788}
32789impl From<CreateServer> for Stmt {
32790 #[inline]
32791 fn from(node: CreateServer) -> Stmt {
32792 Stmt::CreateServer(node)
32793 }
32794}
32795impl From<CreateStatistics> for Stmt {
32796 #[inline]
32797 fn from(node: CreateStatistics) -> Stmt {
32798 Stmt::CreateStatistics(node)
32799 }
32800}
32801impl From<CreateSubscription> for Stmt {
32802 #[inline]
32803 fn from(node: CreateSubscription) -> Stmt {
32804 Stmt::CreateSubscription(node)
32805 }
32806}
32807impl From<CreateTable> for Stmt {
32808 #[inline]
32809 fn from(node: CreateTable) -> Stmt {
32810 Stmt::CreateTable(node)
32811 }
32812}
32813impl From<CreateTableAs> for Stmt {
32814 #[inline]
32815 fn from(node: CreateTableAs) -> Stmt {
32816 Stmt::CreateTableAs(node)
32817 }
32818}
32819impl From<CreateTablespace> for Stmt {
32820 #[inline]
32821 fn from(node: CreateTablespace) -> Stmt {
32822 Stmt::CreateTablespace(node)
32823 }
32824}
32825impl From<CreateTextSearchConfiguration> for Stmt {
32826 #[inline]
32827 fn from(node: CreateTextSearchConfiguration) -> Stmt {
32828 Stmt::CreateTextSearchConfiguration(node)
32829 }
32830}
32831impl From<CreateTextSearchDictionary> for Stmt {
32832 #[inline]
32833 fn from(node: CreateTextSearchDictionary) -> Stmt {
32834 Stmt::CreateTextSearchDictionary(node)
32835 }
32836}
32837impl From<CreateTextSearchParser> for Stmt {
32838 #[inline]
32839 fn from(node: CreateTextSearchParser) -> Stmt {
32840 Stmt::CreateTextSearchParser(node)
32841 }
32842}
32843impl From<CreateTextSearchTemplate> for Stmt {
32844 #[inline]
32845 fn from(node: CreateTextSearchTemplate) -> Stmt {
32846 Stmt::CreateTextSearchTemplate(node)
32847 }
32848}
32849impl From<CreateTransform> for Stmt {
32850 #[inline]
32851 fn from(node: CreateTransform) -> Stmt {
32852 Stmt::CreateTransform(node)
32853 }
32854}
32855impl From<CreateTrigger> for Stmt {
32856 #[inline]
32857 fn from(node: CreateTrigger) -> Stmt {
32858 Stmt::CreateTrigger(node)
32859 }
32860}
32861impl From<CreateType> for Stmt {
32862 #[inline]
32863 fn from(node: CreateType) -> Stmt {
32864 Stmt::CreateType(node)
32865 }
32866}
32867impl From<CreateUser> for Stmt {
32868 #[inline]
32869 fn from(node: CreateUser) -> Stmt {
32870 Stmt::CreateUser(node)
32871 }
32872}
32873impl From<CreateUserMapping> for Stmt {
32874 #[inline]
32875 fn from(node: CreateUserMapping) -> Stmt {
32876 Stmt::CreateUserMapping(node)
32877 }
32878}
32879impl From<CreateView> for Stmt {
32880 #[inline]
32881 fn from(node: CreateView) -> Stmt {
32882 Stmt::CreateView(node)
32883 }
32884}
32885impl From<Deallocate> for Stmt {
32886 #[inline]
32887 fn from(node: Deallocate) -> Stmt {
32888 Stmt::Deallocate(node)
32889 }
32890}
32891impl From<Declare> for Stmt {
32892 #[inline]
32893 fn from(node: Declare) -> Stmt {
32894 Stmt::Declare(node)
32895 }
32896}
32897impl From<Delete> for Stmt {
32898 #[inline]
32899 fn from(node: Delete) -> Stmt {
32900 Stmt::Delete(node)
32901 }
32902}
32903impl From<Discard> for Stmt {
32904 #[inline]
32905 fn from(node: Discard) -> Stmt {
32906 Stmt::Discard(node)
32907 }
32908}
32909impl From<Do> for Stmt {
32910 #[inline]
32911 fn from(node: Do) -> Stmt {
32912 Stmt::Do(node)
32913 }
32914}
32915impl From<DropAccessMethod> for Stmt {
32916 #[inline]
32917 fn from(node: DropAccessMethod) -> Stmt {
32918 Stmt::DropAccessMethod(node)
32919 }
32920}
32921impl From<DropAggregate> for Stmt {
32922 #[inline]
32923 fn from(node: DropAggregate) -> Stmt {
32924 Stmt::DropAggregate(node)
32925 }
32926}
32927impl From<DropCast> for Stmt {
32928 #[inline]
32929 fn from(node: DropCast) -> Stmt {
32930 Stmt::DropCast(node)
32931 }
32932}
32933impl From<DropCollation> for Stmt {
32934 #[inline]
32935 fn from(node: DropCollation) -> Stmt {
32936 Stmt::DropCollation(node)
32937 }
32938}
32939impl From<DropConversion> for Stmt {
32940 #[inline]
32941 fn from(node: DropConversion) -> Stmt {
32942 Stmt::DropConversion(node)
32943 }
32944}
32945impl From<DropDatabase> for Stmt {
32946 #[inline]
32947 fn from(node: DropDatabase) -> Stmt {
32948 Stmt::DropDatabase(node)
32949 }
32950}
32951impl From<DropDomain> for Stmt {
32952 #[inline]
32953 fn from(node: DropDomain) -> Stmt {
32954 Stmt::DropDomain(node)
32955 }
32956}
32957impl From<DropEventTrigger> for Stmt {
32958 #[inline]
32959 fn from(node: DropEventTrigger) -> Stmt {
32960 Stmt::DropEventTrigger(node)
32961 }
32962}
32963impl From<DropExtension> for Stmt {
32964 #[inline]
32965 fn from(node: DropExtension) -> Stmt {
32966 Stmt::DropExtension(node)
32967 }
32968}
32969impl From<DropForeignDataWrapper> for Stmt {
32970 #[inline]
32971 fn from(node: DropForeignDataWrapper) -> Stmt {
32972 Stmt::DropForeignDataWrapper(node)
32973 }
32974}
32975impl From<DropForeignTable> for Stmt {
32976 #[inline]
32977 fn from(node: DropForeignTable) -> Stmt {
32978 Stmt::DropForeignTable(node)
32979 }
32980}
32981impl From<DropFunction> for Stmt {
32982 #[inline]
32983 fn from(node: DropFunction) -> Stmt {
32984 Stmt::DropFunction(node)
32985 }
32986}
32987impl From<DropGroup> for Stmt {
32988 #[inline]
32989 fn from(node: DropGroup) -> Stmt {
32990 Stmt::DropGroup(node)
32991 }
32992}
32993impl From<DropIndex> for Stmt {
32994 #[inline]
32995 fn from(node: DropIndex) -> Stmt {
32996 Stmt::DropIndex(node)
32997 }
32998}
32999impl From<DropLanguage> for Stmt {
33000 #[inline]
33001 fn from(node: DropLanguage) -> Stmt {
33002 Stmt::DropLanguage(node)
33003 }
33004}
33005impl From<DropMaterializedView> for Stmt {
33006 #[inline]
33007 fn from(node: DropMaterializedView) -> Stmt {
33008 Stmt::DropMaterializedView(node)
33009 }
33010}
33011impl From<DropOperator> for Stmt {
33012 #[inline]
33013 fn from(node: DropOperator) -> Stmt {
33014 Stmt::DropOperator(node)
33015 }
33016}
33017impl From<DropOperatorClass> for Stmt {
33018 #[inline]
33019 fn from(node: DropOperatorClass) -> Stmt {
33020 Stmt::DropOperatorClass(node)
33021 }
33022}
33023impl From<DropOperatorFamily> for Stmt {
33024 #[inline]
33025 fn from(node: DropOperatorFamily) -> Stmt {
33026 Stmt::DropOperatorFamily(node)
33027 }
33028}
33029impl From<DropOwned> for Stmt {
33030 #[inline]
33031 fn from(node: DropOwned) -> Stmt {
33032 Stmt::DropOwned(node)
33033 }
33034}
33035impl From<DropPolicy> for Stmt {
33036 #[inline]
33037 fn from(node: DropPolicy) -> Stmt {
33038 Stmt::DropPolicy(node)
33039 }
33040}
33041impl From<DropProcedure> for Stmt {
33042 #[inline]
33043 fn from(node: DropProcedure) -> Stmt {
33044 Stmt::DropProcedure(node)
33045 }
33046}
33047impl From<DropPublication> for Stmt {
33048 #[inline]
33049 fn from(node: DropPublication) -> Stmt {
33050 Stmt::DropPublication(node)
33051 }
33052}
33053impl From<DropRole> for Stmt {
33054 #[inline]
33055 fn from(node: DropRole) -> Stmt {
33056 Stmt::DropRole(node)
33057 }
33058}
33059impl From<DropRoutine> for Stmt {
33060 #[inline]
33061 fn from(node: DropRoutine) -> Stmt {
33062 Stmt::DropRoutine(node)
33063 }
33064}
33065impl From<DropRule> for Stmt {
33066 #[inline]
33067 fn from(node: DropRule) -> Stmt {
33068 Stmt::DropRule(node)
33069 }
33070}
33071impl From<DropSchema> for Stmt {
33072 #[inline]
33073 fn from(node: DropSchema) -> Stmt {
33074 Stmt::DropSchema(node)
33075 }
33076}
33077impl From<DropSequence> for Stmt {
33078 #[inline]
33079 fn from(node: DropSequence) -> Stmt {
33080 Stmt::DropSequence(node)
33081 }
33082}
33083impl From<DropServer> for Stmt {
33084 #[inline]
33085 fn from(node: DropServer) -> Stmt {
33086 Stmt::DropServer(node)
33087 }
33088}
33089impl From<DropStatistics> for Stmt {
33090 #[inline]
33091 fn from(node: DropStatistics) -> Stmt {
33092 Stmt::DropStatistics(node)
33093 }
33094}
33095impl From<DropSubscription> for Stmt {
33096 #[inline]
33097 fn from(node: DropSubscription) -> Stmt {
33098 Stmt::DropSubscription(node)
33099 }
33100}
33101impl From<DropTable> for Stmt {
33102 #[inline]
33103 fn from(node: DropTable) -> Stmt {
33104 Stmt::DropTable(node)
33105 }
33106}
33107impl From<DropTablespace> for Stmt {
33108 #[inline]
33109 fn from(node: DropTablespace) -> Stmt {
33110 Stmt::DropTablespace(node)
33111 }
33112}
33113impl From<DropTextSearchConfig> for Stmt {
33114 #[inline]
33115 fn from(node: DropTextSearchConfig) -> Stmt {
33116 Stmt::DropTextSearchConfig(node)
33117 }
33118}
33119impl From<DropTextSearchDict> for Stmt {
33120 #[inline]
33121 fn from(node: DropTextSearchDict) -> Stmt {
33122 Stmt::DropTextSearchDict(node)
33123 }
33124}
33125impl From<DropTextSearchParser> for Stmt {
33126 #[inline]
33127 fn from(node: DropTextSearchParser) -> Stmt {
33128 Stmt::DropTextSearchParser(node)
33129 }
33130}
33131impl From<DropTextSearchTemplate> for Stmt {
33132 #[inline]
33133 fn from(node: DropTextSearchTemplate) -> Stmt {
33134 Stmt::DropTextSearchTemplate(node)
33135 }
33136}
33137impl From<DropTransform> for Stmt {
33138 #[inline]
33139 fn from(node: DropTransform) -> Stmt {
33140 Stmt::DropTransform(node)
33141 }
33142}
33143impl From<DropTrigger> for Stmt {
33144 #[inline]
33145 fn from(node: DropTrigger) -> Stmt {
33146 Stmt::DropTrigger(node)
33147 }
33148}
33149impl From<DropType> for Stmt {
33150 #[inline]
33151 fn from(node: DropType) -> Stmt {
33152 Stmt::DropType(node)
33153 }
33154}
33155impl From<DropUser> for Stmt {
33156 #[inline]
33157 fn from(node: DropUser) -> Stmt {
33158 Stmt::DropUser(node)
33159 }
33160}
33161impl From<DropUserMapping> for Stmt {
33162 #[inline]
33163 fn from(node: DropUserMapping) -> Stmt {
33164 Stmt::DropUserMapping(node)
33165 }
33166}
33167impl From<DropView> for Stmt {
33168 #[inline]
33169 fn from(node: DropView) -> Stmt {
33170 Stmt::DropView(node)
33171 }
33172}
33173impl From<Execute> for Stmt {
33174 #[inline]
33175 fn from(node: Execute) -> Stmt {
33176 Stmt::Execute(node)
33177 }
33178}
33179impl From<Explain> for Stmt {
33180 #[inline]
33181 fn from(node: Explain) -> Stmt {
33182 Stmt::Explain(node)
33183 }
33184}
33185impl From<Fetch> for Stmt {
33186 #[inline]
33187 fn from(node: Fetch) -> Stmt {
33188 Stmt::Fetch(node)
33189 }
33190}
33191impl From<Grant> for Stmt {
33192 #[inline]
33193 fn from(node: Grant) -> Stmt {
33194 Stmt::Grant(node)
33195 }
33196}
33197impl From<ImportForeignSchema> for Stmt {
33198 #[inline]
33199 fn from(node: ImportForeignSchema) -> Stmt {
33200 Stmt::ImportForeignSchema(node)
33201 }
33202}
33203impl From<Insert> for Stmt {
33204 #[inline]
33205 fn from(node: Insert) -> Stmt {
33206 Stmt::Insert(node)
33207 }
33208}
33209impl From<Listen> for Stmt {
33210 #[inline]
33211 fn from(node: Listen) -> Stmt {
33212 Stmt::Listen(node)
33213 }
33214}
33215impl From<Load> for Stmt {
33216 #[inline]
33217 fn from(node: Load) -> Stmt {
33218 Stmt::Load(node)
33219 }
33220}
33221impl From<Lock> for Stmt {
33222 #[inline]
33223 fn from(node: Lock) -> Stmt {
33224 Stmt::Lock(node)
33225 }
33226}
33227impl From<Merge> for Stmt {
33228 #[inline]
33229 fn from(node: Merge) -> Stmt {
33230 Stmt::Merge(node)
33231 }
33232}
33233impl From<Move> for Stmt {
33234 #[inline]
33235 fn from(node: Move) -> Stmt {
33236 Stmt::Move(node)
33237 }
33238}
33239impl From<Notify> for Stmt {
33240 #[inline]
33241 fn from(node: Notify) -> Stmt {
33242 Stmt::Notify(node)
33243 }
33244}
33245impl From<ParenSelect> for Stmt {
33246 #[inline]
33247 fn from(node: ParenSelect) -> Stmt {
33248 Stmt::ParenSelect(node)
33249 }
33250}
33251impl From<Prepare> for Stmt {
33252 #[inline]
33253 fn from(node: Prepare) -> Stmt {
33254 Stmt::Prepare(node)
33255 }
33256}
33257impl From<PrepareTransaction> for Stmt {
33258 #[inline]
33259 fn from(node: PrepareTransaction) -> Stmt {
33260 Stmt::PrepareTransaction(node)
33261 }
33262}
33263impl From<Reassign> for Stmt {
33264 #[inline]
33265 fn from(node: Reassign) -> Stmt {
33266 Stmt::Reassign(node)
33267 }
33268}
33269impl From<Refresh> for Stmt {
33270 #[inline]
33271 fn from(node: Refresh) -> Stmt {
33272 Stmt::Refresh(node)
33273 }
33274}
33275impl From<Reindex> for Stmt {
33276 #[inline]
33277 fn from(node: Reindex) -> Stmt {
33278 Stmt::Reindex(node)
33279 }
33280}
33281impl From<ReleaseSavepoint> for Stmt {
33282 #[inline]
33283 fn from(node: ReleaseSavepoint) -> Stmt {
33284 Stmt::ReleaseSavepoint(node)
33285 }
33286}
33287impl From<Reset> for Stmt {
33288 #[inline]
33289 fn from(node: Reset) -> Stmt {
33290 Stmt::Reset(node)
33291 }
33292}
33293impl From<ResetSessionAuth> for Stmt {
33294 #[inline]
33295 fn from(node: ResetSessionAuth) -> Stmt {
33296 Stmt::ResetSessionAuth(node)
33297 }
33298}
33299impl From<Revoke> for Stmt {
33300 #[inline]
33301 fn from(node: Revoke) -> Stmt {
33302 Stmt::Revoke(node)
33303 }
33304}
33305impl From<Rollback> for Stmt {
33306 #[inline]
33307 fn from(node: Rollback) -> Stmt {
33308 Stmt::Rollback(node)
33309 }
33310}
33311impl From<Savepoint> for Stmt {
33312 #[inline]
33313 fn from(node: Savepoint) -> Stmt {
33314 Stmt::Savepoint(node)
33315 }
33316}
33317impl From<SecurityLabel> for Stmt {
33318 #[inline]
33319 fn from(node: SecurityLabel) -> Stmt {
33320 Stmt::SecurityLabel(node)
33321 }
33322}
33323impl From<Select> for Stmt {
33324 #[inline]
33325 fn from(node: Select) -> Stmt {
33326 Stmt::Select(node)
33327 }
33328}
33329impl From<SelectInto> for Stmt {
33330 #[inline]
33331 fn from(node: SelectInto) -> Stmt {
33332 Stmt::SelectInto(node)
33333 }
33334}
33335impl From<Set> for Stmt {
33336 #[inline]
33337 fn from(node: Set) -> Stmt {
33338 Stmt::Set(node)
33339 }
33340}
33341impl From<SetConstraints> for Stmt {
33342 #[inline]
33343 fn from(node: SetConstraints) -> Stmt {
33344 Stmt::SetConstraints(node)
33345 }
33346}
33347impl From<SetRole> for Stmt {
33348 #[inline]
33349 fn from(node: SetRole) -> Stmt {
33350 Stmt::SetRole(node)
33351 }
33352}
33353impl From<SetSessionAuth> for Stmt {
33354 #[inline]
33355 fn from(node: SetSessionAuth) -> Stmt {
33356 Stmt::SetSessionAuth(node)
33357 }
33358}
33359impl From<SetTransaction> for Stmt {
33360 #[inline]
33361 fn from(node: SetTransaction) -> Stmt {
33362 Stmt::SetTransaction(node)
33363 }
33364}
33365impl From<Show> for Stmt {
33366 #[inline]
33367 fn from(node: Show) -> Stmt {
33368 Stmt::Show(node)
33369 }
33370}
33371impl From<Table> for Stmt {
33372 #[inline]
33373 fn from(node: Table) -> Stmt {
33374 Stmt::Table(node)
33375 }
33376}
33377impl From<Truncate> for Stmt {
33378 #[inline]
33379 fn from(node: Truncate) -> Stmt {
33380 Stmt::Truncate(node)
33381 }
33382}
33383impl From<Unlisten> for Stmt {
33384 #[inline]
33385 fn from(node: Unlisten) -> Stmt {
33386 Stmt::Unlisten(node)
33387 }
33388}
33389impl From<Update> for Stmt {
33390 #[inline]
33391 fn from(node: Update) -> Stmt {
33392 Stmt::Update(node)
33393 }
33394}
33395impl From<Vacuum> for Stmt {
33396 #[inline]
33397 fn from(node: Vacuum) -> Stmt {
33398 Stmt::Vacuum(node)
33399 }
33400}
33401impl From<Values> for Stmt {
33402 #[inline]
33403 fn from(node: Values) -> Stmt {
33404 Stmt::Values(node)
33405 }
33406}
33407impl AstNode for TableArg {
33408 #[inline]
33409 fn can_cast(kind: SyntaxKind) -> bool {
33410 matches!(kind, SyntaxKind::COLUMN | SyntaxKind::LIKE_CLAUSE)
33411 }
33412 #[inline]
33413 fn cast(syntax: SyntaxNode) -> Option<Self> {
33414 let res = match syntax.kind() {
33415 SyntaxKind::COLUMN => TableArg::Column(Column { syntax }),
33416 SyntaxKind::LIKE_CLAUSE => TableArg::LikeClause(LikeClause { syntax }),
33417 _ => {
33418 if let Some(result) = TableConstraint::cast(syntax) {
33419 return Some(TableArg::TableConstraint(result));
33420 }
33421 return None;
33422 }
33423 };
33424 Some(res)
33425 }
33426 #[inline]
33427 fn syntax(&self) -> &SyntaxNode {
33428 match self {
33429 TableArg::Column(it) => &it.syntax,
33430 TableArg::LikeClause(it) => &it.syntax,
33431 TableArg::TableConstraint(it) => it.syntax(),
33432 }
33433 }
33434}
33435impl From<Column> for TableArg {
33436 #[inline]
33437 fn from(node: Column) -> TableArg {
33438 TableArg::Column(node)
33439 }
33440}
33441impl From<LikeClause> for TableArg {
33442 #[inline]
33443 fn from(node: LikeClause) -> TableArg {
33444 TableArg::LikeClause(node)
33445 }
33446}
33447impl AstNode for TableConstraint {
33448 #[inline]
33449 fn can_cast(kind: SyntaxKind) -> bool {
33450 matches!(
33451 kind,
33452 SyntaxKind::CHECK_CONSTRAINT
33453 | SyntaxKind::EXCLUDE_CONSTRAINT
33454 | SyntaxKind::FOREIGN_KEY_CONSTRAINT
33455 | SyntaxKind::PRIMARY_KEY_CONSTRAINT
33456 | SyntaxKind::UNIQUE_CONSTRAINT
33457 )
33458 }
33459 #[inline]
33460 fn cast(syntax: SyntaxNode) -> Option<Self> {
33461 let res = match syntax.kind() {
33462 SyntaxKind::CHECK_CONSTRAINT => {
33463 TableConstraint::CheckConstraint(CheckConstraint { syntax })
33464 }
33465 SyntaxKind::EXCLUDE_CONSTRAINT => {
33466 TableConstraint::ExcludeConstraint(ExcludeConstraint { syntax })
33467 }
33468 SyntaxKind::FOREIGN_KEY_CONSTRAINT => {
33469 TableConstraint::ForeignKeyConstraint(ForeignKeyConstraint { syntax })
33470 }
33471 SyntaxKind::PRIMARY_KEY_CONSTRAINT => {
33472 TableConstraint::PrimaryKeyConstraint(PrimaryKeyConstraint { syntax })
33473 }
33474 SyntaxKind::UNIQUE_CONSTRAINT => {
33475 TableConstraint::UniqueConstraint(UniqueConstraint { syntax })
33476 }
33477 _ => {
33478 return None;
33479 }
33480 };
33481 Some(res)
33482 }
33483 #[inline]
33484 fn syntax(&self) -> &SyntaxNode {
33485 match self {
33486 TableConstraint::CheckConstraint(it) => &it.syntax,
33487 TableConstraint::ExcludeConstraint(it) => &it.syntax,
33488 TableConstraint::ForeignKeyConstraint(it) => &it.syntax,
33489 TableConstraint::PrimaryKeyConstraint(it) => &it.syntax,
33490 TableConstraint::UniqueConstraint(it) => &it.syntax,
33491 }
33492 }
33493}
33494impl From<CheckConstraint> for TableConstraint {
33495 #[inline]
33496 fn from(node: CheckConstraint) -> TableConstraint {
33497 TableConstraint::CheckConstraint(node)
33498 }
33499}
33500impl From<ExcludeConstraint> for TableConstraint {
33501 #[inline]
33502 fn from(node: ExcludeConstraint) -> TableConstraint {
33503 TableConstraint::ExcludeConstraint(node)
33504 }
33505}
33506impl From<ForeignKeyConstraint> for TableConstraint {
33507 #[inline]
33508 fn from(node: ForeignKeyConstraint) -> TableConstraint {
33509 TableConstraint::ForeignKeyConstraint(node)
33510 }
33511}
33512impl From<PrimaryKeyConstraint> for TableConstraint {
33513 #[inline]
33514 fn from(node: PrimaryKeyConstraint) -> TableConstraint {
33515 TableConstraint::PrimaryKeyConstraint(node)
33516 }
33517}
33518impl From<UniqueConstraint> for TableConstraint {
33519 #[inline]
33520 fn from(node: UniqueConstraint) -> TableConstraint {
33521 TableConstraint::UniqueConstraint(node)
33522 }
33523}
33524impl AstNode for Timezone {
33525 #[inline]
33526 fn can_cast(kind: SyntaxKind) -> bool {
33527 matches!(
33528 kind,
33529 SyntaxKind::WITH_TIMEZONE | SyntaxKind::WITHOUT_TIMEZONE
33530 )
33531 }
33532 #[inline]
33533 fn cast(syntax: SyntaxNode) -> Option<Self> {
33534 let res = match syntax.kind() {
33535 SyntaxKind::WITH_TIMEZONE => Timezone::WithTimezone(WithTimezone { syntax }),
33536 SyntaxKind::WITHOUT_TIMEZONE => Timezone::WithoutTimezone(WithoutTimezone { syntax }),
33537 _ => {
33538 return None;
33539 }
33540 };
33541 Some(res)
33542 }
33543 #[inline]
33544 fn syntax(&self) -> &SyntaxNode {
33545 match self {
33546 Timezone::WithTimezone(it) => &it.syntax,
33547 Timezone::WithoutTimezone(it) => &it.syntax,
33548 }
33549 }
33550}
33551impl From<WithTimezone> for Timezone {
33552 #[inline]
33553 fn from(node: WithTimezone) -> Timezone {
33554 Timezone::WithTimezone(node)
33555 }
33556}
33557impl From<WithoutTimezone> for Timezone {
33558 #[inline]
33559 fn from(node: WithoutTimezone) -> Timezone {
33560 Timezone::WithoutTimezone(node)
33561 }
33562}
33563impl AstNode for TransactionMode {
33564 #[inline]
33565 fn can_cast(kind: SyntaxKind) -> bool {
33566 matches!(
33567 kind,
33568 SyntaxKind::DEFERRABLE
33569 | SyntaxKind::NOT_DEFERRABLE
33570 | SyntaxKind::READ_COMMITTED
33571 | SyntaxKind::READ_ONLY
33572 | SyntaxKind::READ_UNCOMMITTED
33573 | SyntaxKind::READ_WRITE
33574 | SyntaxKind::REPEATABLE_READ
33575 | SyntaxKind::SERIALIZABLE
33576 )
33577 }
33578 #[inline]
33579 fn cast(syntax: SyntaxNode) -> Option<Self> {
33580 let res = match syntax.kind() {
33581 SyntaxKind::DEFERRABLE => TransactionMode::Deferrable(Deferrable { syntax }),
33582 SyntaxKind::NOT_DEFERRABLE => TransactionMode::NotDeferrable(NotDeferrable { syntax }),
33583 SyntaxKind::READ_COMMITTED => TransactionMode::ReadCommitted(ReadCommitted { syntax }),
33584 SyntaxKind::READ_ONLY => TransactionMode::ReadOnly(ReadOnly { syntax }),
33585 SyntaxKind::READ_UNCOMMITTED => {
33586 TransactionMode::ReadUncommitted(ReadUncommitted { syntax })
33587 }
33588 SyntaxKind::READ_WRITE => TransactionMode::ReadWrite(ReadWrite { syntax }),
33589 SyntaxKind::REPEATABLE_READ => {
33590 TransactionMode::RepeatableRead(RepeatableRead { syntax })
33591 }
33592 SyntaxKind::SERIALIZABLE => TransactionMode::Serializable(Serializable { syntax }),
33593 _ => {
33594 return None;
33595 }
33596 };
33597 Some(res)
33598 }
33599 #[inline]
33600 fn syntax(&self) -> &SyntaxNode {
33601 match self {
33602 TransactionMode::Deferrable(it) => &it.syntax,
33603 TransactionMode::NotDeferrable(it) => &it.syntax,
33604 TransactionMode::ReadCommitted(it) => &it.syntax,
33605 TransactionMode::ReadOnly(it) => &it.syntax,
33606 TransactionMode::ReadUncommitted(it) => &it.syntax,
33607 TransactionMode::ReadWrite(it) => &it.syntax,
33608 TransactionMode::RepeatableRead(it) => &it.syntax,
33609 TransactionMode::Serializable(it) => &it.syntax,
33610 }
33611 }
33612}
33613impl From<Deferrable> for TransactionMode {
33614 #[inline]
33615 fn from(node: Deferrable) -> TransactionMode {
33616 TransactionMode::Deferrable(node)
33617 }
33618}
33619impl From<NotDeferrable> for TransactionMode {
33620 #[inline]
33621 fn from(node: NotDeferrable) -> TransactionMode {
33622 TransactionMode::NotDeferrable(node)
33623 }
33624}
33625impl From<ReadCommitted> for TransactionMode {
33626 #[inline]
33627 fn from(node: ReadCommitted) -> TransactionMode {
33628 TransactionMode::ReadCommitted(node)
33629 }
33630}
33631impl From<ReadOnly> for TransactionMode {
33632 #[inline]
33633 fn from(node: ReadOnly) -> TransactionMode {
33634 TransactionMode::ReadOnly(node)
33635 }
33636}
33637impl From<ReadUncommitted> for TransactionMode {
33638 #[inline]
33639 fn from(node: ReadUncommitted) -> TransactionMode {
33640 TransactionMode::ReadUncommitted(node)
33641 }
33642}
33643impl From<ReadWrite> for TransactionMode {
33644 #[inline]
33645 fn from(node: ReadWrite) -> TransactionMode {
33646 TransactionMode::ReadWrite(node)
33647 }
33648}
33649impl From<RepeatableRead> for TransactionMode {
33650 #[inline]
33651 fn from(node: RepeatableRead) -> TransactionMode {
33652 TransactionMode::RepeatableRead(node)
33653 }
33654}
33655impl From<Serializable> for TransactionMode {
33656 #[inline]
33657 fn from(node: Serializable) -> TransactionMode {
33658 TransactionMode::Serializable(node)
33659 }
33660}
33661impl AstNode for Type {
33662 #[inline]
33663 fn can_cast(kind: SyntaxKind) -> bool {
33664 matches!(
33665 kind,
33666 SyntaxKind::ARRAY_TYPE
33667 | SyntaxKind::BIT_TYPE
33668 | SyntaxKind::CHAR_TYPE
33669 | SyntaxKind::DOUBLE_TYPE
33670 | SyntaxKind::EXPR_TYPE
33671 | SyntaxKind::INTERVAL_TYPE
33672 | SyntaxKind::PATH_TYPE
33673 | SyntaxKind::PERCENT_TYPE
33674 | SyntaxKind::TIME_TYPE
33675 )
33676 }
33677 #[inline]
33678 fn cast(syntax: SyntaxNode) -> Option<Self> {
33679 let res = match syntax.kind() {
33680 SyntaxKind::ARRAY_TYPE => Type::ArrayType(ArrayType { syntax }),
33681 SyntaxKind::BIT_TYPE => Type::BitType(BitType { syntax }),
33682 SyntaxKind::CHAR_TYPE => Type::CharType(CharType { syntax }),
33683 SyntaxKind::DOUBLE_TYPE => Type::DoubleType(DoubleType { syntax }),
33684 SyntaxKind::EXPR_TYPE => Type::ExprType(ExprType { syntax }),
33685 SyntaxKind::INTERVAL_TYPE => Type::IntervalType(IntervalType { syntax }),
33686 SyntaxKind::PATH_TYPE => Type::PathType(PathType { syntax }),
33687 SyntaxKind::PERCENT_TYPE => Type::PercentType(PercentType { syntax }),
33688 SyntaxKind::TIME_TYPE => Type::TimeType(TimeType { syntax }),
33689 _ => {
33690 return None;
33691 }
33692 };
33693 Some(res)
33694 }
33695 #[inline]
33696 fn syntax(&self) -> &SyntaxNode {
33697 match self {
33698 Type::ArrayType(it) => &it.syntax,
33699 Type::BitType(it) => &it.syntax,
33700 Type::CharType(it) => &it.syntax,
33701 Type::DoubleType(it) => &it.syntax,
33702 Type::ExprType(it) => &it.syntax,
33703 Type::IntervalType(it) => &it.syntax,
33704 Type::PathType(it) => &it.syntax,
33705 Type::PercentType(it) => &it.syntax,
33706 Type::TimeType(it) => &it.syntax,
33707 }
33708 }
33709}
33710impl From<ArrayType> for Type {
33711 #[inline]
33712 fn from(node: ArrayType) -> Type {
33713 Type::ArrayType(node)
33714 }
33715}
33716impl From<BitType> for Type {
33717 #[inline]
33718 fn from(node: BitType) -> Type {
33719 Type::BitType(node)
33720 }
33721}
33722impl From<CharType> for Type {
33723 #[inline]
33724 fn from(node: CharType) -> Type {
33725 Type::CharType(node)
33726 }
33727}
33728impl From<DoubleType> for Type {
33729 #[inline]
33730 fn from(node: DoubleType) -> Type {
33731 Type::DoubleType(node)
33732 }
33733}
33734impl From<ExprType> for Type {
33735 #[inline]
33736 fn from(node: ExprType) -> Type {
33737 Type::ExprType(node)
33738 }
33739}
33740impl From<IntervalType> for Type {
33741 #[inline]
33742 fn from(node: IntervalType) -> Type {
33743 Type::IntervalType(node)
33744 }
33745}
33746impl From<PathType> for Type {
33747 #[inline]
33748 fn from(node: PathType) -> Type {
33749 Type::PathType(node)
33750 }
33751}
33752impl From<PercentType> for Type {
33753 #[inline]
33754 fn from(node: PercentType) -> Type {
33755 Type::PercentType(node)
33756 }
33757}
33758impl From<TimeType> for Type {
33759 #[inline]
33760 fn from(node: TimeType) -> Type {
33761 Type::TimeType(node)
33762 }
33763}
33764impl AstNode for WithQuery {
33765 #[inline]
33766 fn can_cast(kind: SyntaxKind) -> bool {
33767 matches!(
33768 kind,
33769 SyntaxKind::COMPOUND_SELECT
33770 | SyntaxKind::DELETE
33771 | SyntaxKind::INSERT
33772 | SyntaxKind::MERGE
33773 | SyntaxKind::PAREN_SELECT
33774 | SyntaxKind::SELECT
33775 | SyntaxKind::TABLE
33776 | SyntaxKind::UPDATE
33777 | SyntaxKind::VALUES
33778 )
33779 }
33780 #[inline]
33781 fn cast(syntax: SyntaxNode) -> Option<Self> {
33782 let res = match syntax.kind() {
33783 SyntaxKind::COMPOUND_SELECT => WithQuery::CompoundSelect(CompoundSelect { syntax }),
33784 SyntaxKind::DELETE => WithQuery::Delete(Delete { syntax }),
33785 SyntaxKind::INSERT => WithQuery::Insert(Insert { syntax }),
33786 SyntaxKind::MERGE => WithQuery::Merge(Merge { syntax }),
33787 SyntaxKind::PAREN_SELECT => WithQuery::ParenSelect(ParenSelect { syntax }),
33788 SyntaxKind::SELECT => WithQuery::Select(Select { syntax }),
33789 SyntaxKind::TABLE => WithQuery::Table(Table { syntax }),
33790 SyntaxKind::UPDATE => WithQuery::Update(Update { syntax }),
33791 SyntaxKind::VALUES => WithQuery::Values(Values { syntax }),
33792 _ => {
33793 return None;
33794 }
33795 };
33796 Some(res)
33797 }
33798 #[inline]
33799 fn syntax(&self) -> &SyntaxNode {
33800 match self {
33801 WithQuery::CompoundSelect(it) => &it.syntax,
33802 WithQuery::Delete(it) => &it.syntax,
33803 WithQuery::Insert(it) => &it.syntax,
33804 WithQuery::Merge(it) => &it.syntax,
33805 WithQuery::ParenSelect(it) => &it.syntax,
33806 WithQuery::Select(it) => &it.syntax,
33807 WithQuery::Table(it) => &it.syntax,
33808 WithQuery::Update(it) => &it.syntax,
33809 WithQuery::Values(it) => &it.syntax,
33810 }
33811 }
33812}
33813impl From<CompoundSelect> for WithQuery {
33814 #[inline]
33815 fn from(node: CompoundSelect) -> WithQuery {
33816 WithQuery::CompoundSelect(node)
33817 }
33818}
33819impl From<Delete> for WithQuery {
33820 #[inline]
33821 fn from(node: Delete) -> WithQuery {
33822 WithQuery::Delete(node)
33823 }
33824}
33825impl From<Insert> for WithQuery {
33826 #[inline]
33827 fn from(node: Insert) -> WithQuery {
33828 WithQuery::Insert(node)
33829 }
33830}
33831impl From<Merge> for WithQuery {
33832 #[inline]
33833 fn from(node: Merge) -> WithQuery {
33834 WithQuery::Merge(node)
33835 }
33836}
33837impl From<ParenSelect> for WithQuery {
33838 #[inline]
33839 fn from(node: ParenSelect) -> WithQuery {
33840 WithQuery::ParenSelect(node)
33841 }
33842}
33843impl From<Select> for WithQuery {
33844 #[inline]
33845 fn from(node: Select) -> WithQuery {
33846 WithQuery::Select(node)
33847 }
33848}
33849impl From<Table> for WithQuery {
33850 #[inline]
33851 fn from(node: Table) -> WithQuery {
33852 WithQuery::Table(node)
33853 }
33854}
33855impl From<Update> for WithQuery {
33856 #[inline]
33857 fn from(node: Update) -> WithQuery {
33858 WithQuery::Update(node)
33859 }
33860}
33861impl From<Values> for WithQuery {
33862 #[inline]
33863 fn from(node: Values) -> WithQuery {
33864 WithQuery::Values(node)
33865 }
33866}