1#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
11#[repr(u16)]
12#[allow(non_camel_case_types)]
13pub enum SyntaxKind {
14 WHITESPACE = 0,
18 LINE_COMMENT,
19 BLOCK_COMMENT,
20
21 IDENT, INTEGER, DECIMAL, STRING, L_BRACE, R_BRACE, L_BRACKET, R_BRACKET, L_PAREN, R_PAREN, SEMICOLON, COLON, COLON_COLON, COLON_GT, COLON_GT_GT, COLON_COLON_GT, DOT, DOT_DOT, COMMA, EQ, EQ_EQ, EQ_EQ_EQ, BANG_EQ, BANG_EQ_EQ, LT, GT, LT_EQ, GT_EQ, ARROW, FAT_ARROW, AT, AT_AT, HASH, STAR, STAR_STAR, PLUS, MINUS, SLASH, PERCENT, CARET, TILDE, QUESTION, QUESTION_QUESTION, BANG, PIPE, AMP, AMP_AMP, PIPE_PIPE, COLON_EQ, DOLLAR, PACKAGE_KW,
84 LIBRARY_KW,
85 STANDARD_KW,
86
87 IMPORT_KW,
89 ALIAS_KW,
90 ALL_KW,
91 FILTER_KW,
92 PRIVATE_KW,
93 PROTECTED_KW,
94 PUBLIC_KW,
95
96 DEF_KW,
98 ABSTRACT_KW,
99 COMPOSITE_KW,
100 PORTION_KW,
101 VARIATION_KW,
102 VARIANT_KW,
103
104 PART_KW,
106 ATTRIBUTE_KW,
107 ENUMERATION_KW,
108 ENUM_KW,
109 ITEM_KW,
110 OCCURRENCE_KW,
111 INDIVIDUAL_KW,
112
113 PORT_KW,
115 CONNECTION_KW,
116 INTERFACE_KW,
117 BINDING_KW,
118 FLOW_KW,
119 ALLOCATION_KW,
120 ALLOCATE_KW,
121
122 ACTION_KW,
124 STATE_KW,
125 TRANSITION_KW,
126 ENTRY_KW,
127 EXIT_KW,
128 DO_KW,
129 ACCEPT_KW,
130 SEND_KW,
131 PERFORM_KW,
132 EXHIBIT_KW,
133
134 MESSAGE_KW,
136 SNAPSHOT_KW,
137 TIMESLICE_KW,
138 FRAME_KW,
139 EVENT_KW,
140
141 IF_KW,
143 ELSE_KW,
144 THEN_KW,
145 LOOP_KW,
146 WHILE_KW,
147 UNTIL_KW,
148 FOR_KW,
149 FORK_KW,
150 JOIN_KW,
151 MERGE_KW,
152 DECIDE_KW,
153 FIRST_KW,
154 DONE_KW,
155 START_KW,
156 TERMINATE_KW,
157 PARALLEL_KW,
158 ASSIGN_KW,
159 CONNECT_KW,
160
161 BIND_KW,
163 NEW_KW,
164 AFTER_KW,
165 AT_KW,
166 WHEN_KW,
167 VIA_KW,
168 THIS_KW,
169
170 CALC_KW,
172 CONSTRAINT_KW,
173 ASSERT_KW,
174 ASSUME_KW,
175 REQUIRE_KW,
176
177 REQUIREMENT_KW,
179 SUBJECT_KW,
180 OBJECTIVE_KW,
181 STAKEHOLDER_KW,
182 ACTOR_KW,
183 CONCERN_KW,
184 SATISFY_KW,
185 VERIFY_KW,
186
187 CASE_KW,
189 ANALYSIS_KW,
190 VERIFICATION_KW,
191 USE_KW,
192 INCLUDE_KW,
193
194 VIEW_KW,
196 VIEWPOINT_KW,
197 RENDERING_KW,
198 RENDER_KW,
199 EXPOSE_KW,
200
201 METACLASS_KW,
203 METADATA_KW,
204 ABOUT_KW,
205
206 DOC_KW,
208 COMMENT_KW,
209 LANGUAGE_KW,
210 LOCALE_KW,
211 REP_KW,
212
213 SPECIALIZES_KW,
215 SUBSETS_KW,
216 REDEFINES_KW,
217 REFERENCES_KW,
218 TYPED_KW,
219 DEFINED_KW,
220 BY_KW,
221 INTERSECTS_KW,
222 UNIONS_KW,
223 DISJOINT_KW,
224 DISJOINING_KW,
225 CONJUGATES_KW,
226 CONJUGATE_KW,
227 DIFFERS_KW,
228 CROSSES_KW,
229 INVERSE_KW,
230 CHAINS_KW,
231 DIFFERENCES_KW,
232 FEATURED_KW,
233 FEATURING_KW,
234 INVERTING_KW,
235 OF_KW,
236
237 SPECIALIZATION_KW,
239 SUBCLASSIFIER_KW,
240 REDEFINITION_KW,
241 SUBSET_KW,
242 SUBTYPE_KW,
243 TYPING_KW,
244 CONJUGATION_KW,
245 MULTIPLICITY_KW,
246 NAMESPACE_KW,
247
248 REF_KW,
250 READONLY_KW,
251 DERIVED_KW,
252 END_KW,
253 ORDERED_KW,
254 NONUNIQUE_KW,
255 DEFAULT_KW,
256 VAR_KW,
257 CONST_KW,
258 MEMBER_KW,
259 RETURN_KW,
260
261 IN_KW,
263 OUT_KW,
264 INOUT_KW,
265
266 DEPENDENCY_KW,
268 FROM_KW,
269 TO_KW,
270
271 SUCCESSION_KW,
273 FIRST_KW_2, TRUE_KW,
277 FALSE_KW,
278 NULL_KW,
279
280 AND_KW,
282 OR_KW,
283 NOT_KW,
284 XOR_KW,
285 IMPLIES_KW,
286
287 HASTYPE_KW,
289 ISTYPE_KW,
290 AS_KW,
291 META_KW,
292
293 TYPE_KW,
297 CLASSIFIER_KW,
298 CLASS_KW,
299 STRUCT_KW,
300 DATATYPE_KW,
301 ASSOC_KW,
302 BEHAVIOR_KW,
303 FUNCTION_KW,
304 PREDICATE_KW,
305 INTERACTION_KW,
306 FEATURE_KW,
307 STEP_KW,
308 EXPR_KW,
309 CONNECTOR_KW,
310 INV_KW,
311
312 SOURCE_FILE,
317
318 PACKAGE,
320 LIBRARY_PACKAGE,
321 NAMESPACE_BODY,
322
323 PACKAGE_MEMBER,
325 ELEMENT_FILTER_MEMBER,
326 RELATIONSHIP_MEMBER,
327
328 COMMENT_ELEMENT,
330 DOCUMENTATION,
331 TEXTUAL_REP,
332 METADATA_USAGE,
333 PREFIX_METADATA,
334
335 IMPORT,
337 MEMBERSHIP_IMPORT,
338 NAMESPACE_IMPORT,
339 FILTER_PACKAGE,
340
341 ALIAS_MEMBER,
343
344 DEPENDENCY,
346
347 NAME,
349 SHORT_NAME,
350 QUALIFIED_NAME,
351 FEATURE_CHAIN,
352
353 DEFINITION,
355 DEFINITION_BODY,
356 DEFINITION_PREFIX,
357
358 PART_DEFINITION,
360 ATTRIBUTE_DEFINITION,
361 ENUMERATION_DEFINITION,
362 ITEM_DEFINITION,
363 OCCURRENCE_DEFINITION,
364 PORT_DEFINITION,
365 CONNECTION_DEFINITION,
366 INTERFACE_DEFINITION,
367 ALLOCATION_DEFINITION,
368 FLOW_DEFINITION,
369 ACTION_DEFINITION,
370 STATE_DEFINITION,
371 CALC_DEFINITION,
372 CONSTRAINT_DEFINITION,
373 REQUIREMENT_DEFINITION,
374 CASE_DEFINITION,
375 ANALYSIS_CASE_DEFINITION,
376 VERIFICATION_CASE_DEFINITION,
377 USE_CASE_DEFINITION,
378 VIEW_DEFINITION,
379 VIEWPOINT_DEFINITION,
380 RENDERING_DEFINITION,
381 METADATA_DEFINITION,
382
383 USAGE,
385 USAGE_BODY,
386 USAGE_PREFIX,
387
388 PART_USAGE,
390 ATTRIBUTE_USAGE,
391 ENUM_USAGE,
392 ITEM_USAGE,
393 OCCURRENCE_USAGE,
394 PORT_USAGE,
395 CONNECTION_USAGE,
396 INTERFACE_USAGE,
397 ALLOCATION_USAGE,
398 FLOW_USAGE,
399 ACTION_USAGE,
400 STATE_USAGE,
401 CALC_USAGE,
402 CONSTRAINT_USAGE,
403 REQUIREMENT_USAGE,
404 CASE_USAGE,
405 ANALYSIS_CASE_USAGE,
406 VERIFICATION_CASE_USAGE,
407 USE_CASE_USAGE,
408 VIEW_USAGE,
409 VIEWPOINT_USAGE,
410 RENDERING_USAGE,
411
412 SPECIALIZATION,
414 SUBSETTING,
415 REDEFINITION,
416 TYPING,
417 FEATURING,
418 CONJUGATION,
419
420 MULTIPLICITY,
422 MULTIPLICITY_RANGE,
423
424 EXPRESSION,
426 LITERAL_EXPR,
427 FEATURE_REF_EXPR,
428 INVOCATION_EXPR,
429 SEQUENCE_EXPR,
430 CONDITIONAL_EXPR,
431 BINARY_EXPR,
432 UNARY_EXPR,
433 BRACKET_EXPR,
434 ARGUMENT_LIST,
435
436 BODY_ITEM,
438 MEMBER,
439
440 ACCEPT_ACTION_USAGE,
442 ACTOR_USAGE,
443 BINDING_CONNECTOR,
444 CONNECTION_END,
445 CONNECTOR,
446 CONNECTOR_END,
447 CONNECTOR_END_REFERENCE,
448 CONNECTOR_PART,
449 CONNECT_USAGE,
450 CONSTRAINT_BODY,
451 CONTROL_NODE,
452 FOR_LOOP_ACTION_USAGE,
453 IF_ACTION_USAGE,
454 OBJECTIVE_USAGE,
455 PERFORM_ACTION_USAGE,
456 RELATIONSHIP,
457 REQUIREMENT_CONSTRAINT,
458 REQUIREMENT_VERIFICATION,
459 SEND_ACTION_USAGE,
460 STAKEHOLDER_USAGE,
461 STATE_SUBACTION,
462 SUBJECT_USAGE,
463 SUCCESSION,
464 SUCCESSION_ITEM,
465 TEXTUAL_REPRESENTATION,
466 TRANSITION_USAGE,
467 WHILE_LOOP_ACTION_USAGE,
468 CONSTANT_KW,
469
470 FROM_TO_CLAUSE,
472 FROM_TO_SOURCE,
473 FROM_TO_TARGET,
474
475 ERROR,
477 TOMBSTONE, #[doc(hidden)]
480 __LAST,
481}
482
483impl SyntaxKind {
484 pub fn is_trivia(self) -> bool {
486 matches!(
487 self,
488 Self::WHITESPACE | Self::LINE_COMMENT | Self::BLOCK_COMMENT
489 )
490 }
491
492 pub fn is_keyword(self) -> bool {
494 (self as u16) >= (Self::PACKAGE_KW as u16) && (self as u16) <= (Self::INV_KW as u16)
495 }
496
497 pub fn is_punct(self) -> bool {
499 (self as u16) >= (Self::L_BRACE as u16) && (self as u16) <= (Self::PIPE_PIPE as u16)
500 }
501
502 pub fn is_literal(self) -> bool {
504 matches!(
505 self,
506 Self::IDENT | Self::INTEGER | Self::DECIMAL | Self::STRING
507 )
508 }
509
510 pub fn display_name(self) -> &'static str {
512 match self {
513 Self::WHITESPACE => "whitespace",
515 Self::LINE_COMMENT => "comment",
516 Self::BLOCK_COMMENT => "comment",
517
518 Self::IDENT => "identifier",
520 Self::INTEGER => "integer",
521 Self::DECIMAL => "number",
522 Self::STRING => "string",
523 Self::ERROR => "error",
524
525 Self::SEMICOLON => "';'",
527 Self::COLON => "':'",
528 Self::COLON_COLON => "'::'",
529 Self::COLON_GT => "':>'",
530 Self::COLON_GT_GT => "':>>'",
531 Self::COLON_COLON_GT => "'::>'",
532 Self::COMMA => "','",
533 Self::DOT => "'.'",
534 Self::DOT_DOT => "'..'",
535 Self::L_PAREN => "'('",
536 Self::R_PAREN => "')'",
537 Self::L_BRACE => "'{'",
538 Self::R_BRACE => "'}'",
539 Self::L_BRACKET => "'['",
540 Self::R_BRACKET => "']'",
541 Self::LT => "'<'",
542 Self::GT => "'>'",
543 Self::LT_EQ => "'<='",
544 Self::GT_EQ => "'>='",
545 Self::EQ => "'='",
546 Self::EQ_EQ => "'=='",
547 Self::EQ_EQ_EQ => "'==='",
548 Self::BANG_EQ => "'!='",
549 Self::BANG_EQ_EQ => "'!=='",
550 Self::COLON_EQ => "':='",
551 Self::PLUS => "'+'",
552 Self::MINUS => "'-'",
553 Self::STAR => "'*'",
554 Self::STAR_STAR => "'**'",
555 Self::SLASH => "'/'",
556 Self::PERCENT => "'%'",
557 Self::CARET => "'^'",
558 Self::TILDE => "'~'",
559 Self::AMP => "'&'",
560 Self::AMP_AMP => "'&&'",
561 Self::PIPE => "'|'",
562 Self::PIPE_PIPE => "'||'",
563 Self::AT => "'@'",
564 Self::AT_AT => "'@@'",
565 Self::HASH => "'#'",
566 Self::QUESTION => "'?'",
567 Self::QUESTION_QUESTION => "'??'",
568 Self::BANG => "'!'",
569 Self::ARROW => "'->'",
570 Self::FAT_ARROW => "'=>'",
571 Self::DOLLAR => "'$'",
572
573 Self::PACKAGE_KW => "'package'",
575 Self::LIBRARY_KW => "'library'",
576 Self::STANDARD_KW => "'standard'",
577 Self::NAMESPACE_KW => "'namespace'",
578 Self::IMPORT_KW => "'import'",
579 Self::ALIAS_KW => "'alias'",
580 Self::ALL_KW => "'all'",
581 Self::FILTER_KW => "'filter'",
582 Self::PRIVATE_KW => "'private'",
583 Self::PROTECTED_KW => "'protected'",
584 Self::PUBLIC_KW => "'public'",
585 Self::DEF_KW => "'def'",
586 Self::ABSTRACT_KW => "'abstract'",
587 Self::COMPOSITE_KW => "'composite'",
588 Self::PORTION_KW => "'portion'",
589 Self::VARIATION_KW => "'variation'",
590 Self::VARIANT_KW => "'variant'",
591 Self::PART_KW => "'part'",
592 Self::ATTRIBUTE_KW => "'attribute'",
593 Self::ENUMERATION_KW => "'enumeration'",
594 Self::ENUM_KW => "'enum'",
595 Self::ITEM_KW => "'item'",
596 Self::OCCURRENCE_KW => "'occurrence'",
597 Self::INDIVIDUAL_KW => "'individual'",
598 Self::PORT_KW => "'port'",
599 Self::CONNECTION_KW => "'connection'",
600 Self::INTERFACE_KW => "'interface'",
601 Self::BINDING_KW => "'binding'",
602 Self::FLOW_KW => "'flow'",
603 Self::ALLOCATION_KW => "'allocation'",
604 Self::ALLOCATE_KW => "'allocate'",
605 Self::ACTION_KW => "'action'",
606 Self::STATE_KW => "'state'",
607 Self::TRANSITION_KW => "'transition'",
608 Self::ENTRY_KW => "'entry'",
609 Self::EXIT_KW => "'exit'",
610 Self::DO_KW => "'do'",
611 Self::ACCEPT_KW => "'accept'",
612 Self::SEND_KW => "'send'",
613 Self::PERFORM_KW => "'perform'",
614 Self::EXHIBIT_KW => "'exhibit'",
615 Self::MESSAGE_KW => "'message'",
616 Self::SNAPSHOT_KW => "'snapshot'",
617 Self::TIMESLICE_KW => "'timeslice'",
618 Self::FRAME_KW => "'frame'",
619 Self::EVENT_KW => "'event'",
620 Self::IF_KW => "'if'",
621 Self::ELSE_KW => "'else'",
622 Self::THEN_KW => "'then'",
623 Self::LOOP_KW => "'loop'",
624 Self::WHILE_KW => "'while'",
625 Self::UNTIL_KW => "'until'",
626 Self::FOR_KW => "'for'",
627 Self::FORK_KW => "'fork'",
628 Self::JOIN_KW => "'join'",
629 Self::MERGE_KW => "'merge'",
630 Self::DECIDE_KW => "'decide'",
631 Self::FIRST_KW => "'first'",
632 Self::DONE_KW => "'done'",
633 Self::START_KW => "'start'",
634 Self::TERMINATE_KW => "'terminate'",
635 Self::PARALLEL_KW => "'parallel'",
636 Self::ASSIGN_KW => "'assign'",
637 Self::CONNECT_KW => "'connect'",
638 Self::BIND_KW => "'bind'",
639 Self::NEW_KW => "'new'",
640 Self::AFTER_KW => "'after'",
641 Self::AT_KW => "'at'",
642 Self::WHEN_KW => "'when'",
643 Self::VIA_KW => "'via'",
644 Self::THIS_KW => "'this'",
645 Self::CALC_KW => "'calc'",
646 Self::CONSTRAINT_KW => "'constraint'",
647 Self::ASSERT_KW => "'assert'",
648 Self::ASSUME_KW => "'assume'",
649 Self::REQUIRE_KW => "'require'",
650 Self::REQUIREMENT_KW => "'requirement'",
651 Self::SUBJECT_KW => "'subject'",
652 Self::OBJECTIVE_KW => "'objective'",
653 Self::STAKEHOLDER_KW => "'stakeholder'",
654 Self::ACTOR_KW => "'actor'",
655 Self::CONCERN_KW => "'concern'",
656 Self::SATISFY_KW => "'satisfy'",
657 Self::VERIFY_KW => "'verify'",
658 Self::CASE_KW => "'case'",
659 Self::ANALYSIS_KW => "'analysis'",
660 Self::VERIFICATION_KW => "'verification'",
661 Self::USE_KW => "'use'",
662 Self::INCLUDE_KW => "'include'",
663 Self::VIEW_KW => "'view'",
664 Self::VIEWPOINT_KW => "'viewpoint'",
665 Self::RENDERING_KW => "'rendering'",
666 Self::RENDER_KW => "'render'",
667 Self::EXPOSE_KW => "'expose'",
668 Self::METACLASS_KW => "'metaclass'",
669 Self::METADATA_KW => "'metadata'",
670 Self::ABOUT_KW => "'about'",
671 Self::DOC_KW => "'doc'",
672 Self::COMMENT_KW => "'comment'",
673 Self::LANGUAGE_KW => "'language'",
674 Self::LOCALE_KW => "'locale'",
675 Self::REP_KW => "'rep'",
676 Self::SPECIALIZES_KW => "'specializes'",
677 Self::SUBSETS_KW => "'subsets'",
678 Self::REDEFINES_KW => "'redefines'",
679 Self::REFERENCES_KW => "'references'",
680 Self::TYPED_KW => "'typed'",
681 Self::DEFINED_KW => "'defined'",
682 Self::BY_KW => "'by'",
683 Self::INTERSECTS_KW => "'intersects'",
684 Self::UNIONS_KW => "'unions'",
685 Self::DISJOINT_KW => "'disjoint'",
686 Self::DISJOINING_KW => "'disjoining'",
687 Self::CONJUGATES_KW => "'conjugates'",
688 Self::CONJUGATE_KW => "'conjugate'",
689 Self::DIFFERS_KW => "'differs'",
690 Self::CROSSES_KW => "'crosses'",
691 Self::INVERSE_KW => "'inverse'",
692 Self::CHAINS_KW => "'chains'",
693 Self::DIFFERENCES_KW => "'differences'",
694 Self::FEATURED_KW => "'featured'",
695 Self::FEATURING_KW => "'featuring'",
696 Self::INVERTING_KW => "'inverting'",
697 Self::OF_KW => "'of'",
698 Self::SPECIALIZATION_KW => "'specialization'",
699 Self::SUBCLASSIFIER_KW => "'subclassifier'",
700 Self::REDEFINITION_KW => "'redefinition'",
701 Self::SUBSET_KW => "'subset'",
702 Self::SUBTYPE_KW => "'subtype'",
703 Self::TYPING_KW => "'typing'",
704 Self::CONJUGATION_KW => "'conjugation'",
705 Self::MULTIPLICITY_KW => "'multiplicity'",
706 Self::REF_KW => "'ref'",
707 Self::READONLY_KW => "'readonly'",
708 Self::DERIVED_KW => "'derived'",
709 Self::END_KW => "'end'",
710 Self::ORDERED_KW => "'ordered'",
711 Self::NONUNIQUE_KW => "'nonunique'",
712 Self::DEFAULT_KW => "'default'",
713 Self::VAR_KW => "'var'",
714 Self::CONST_KW => "'const'",
715 Self::CONSTANT_KW => "'constant'",
716 Self::MEMBER_KW => "'member'",
717 Self::RETURN_KW => "'return'",
718 Self::IN_KW => "'in'",
719 Self::OUT_KW => "'out'",
720 Self::INOUT_KW => "'inout'",
721 Self::DEPENDENCY_KW => "'dependency'",
722 Self::FROM_KW => "'from'",
723 Self::TO_KW => "'to'",
724 Self::SUCCESSION_KW => "'succession'",
725 Self::FIRST_KW_2 => "'first'",
726 Self::TRUE_KW => "'true'",
727 Self::FALSE_KW => "'false'",
728 Self::NULL_KW => "'null'",
729 Self::AND_KW => "'and'",
730 Self::OR_KW => "'or'",
731 Self::NOT_KW => "'not'",
732 Self::XOR_KW => "'xor'",
733 Self::IMPLIES_KW => "'implies'",
734 Self::HASTYPE_KW => "'hastype'",
735 Self::ISTYPE_KW => "'istype'",
736 Self::AS_KW => "'as'",
737 Self::META_KW => "'meta'",
738
739 Self::TYPE_KW => "'type'",
741 Self::CLASSIFIER_KW => "'classifier'",
742 Self::CLASS_KW => "'class'",
743 Self::STRUCT_KW => "'struct'",
744 Self::DATATYPE_KW => "'datatype'",
745 Self::ASSOC_KW => "'assoc'",
746 Self::BEHAVIOR_KW => "'behavior'",
747 Self::FUNCTION_KW => "'function'",
748 Self::PREDICATE_KW => "'predicate'",
749 Self::INTERACTION_KW => "'interaction'",
750 Self::FEATURE_KW => "'feature'",
751 Self::STEP_KW => "'step'",
752 Self::EXPR_KW => "'expr'",
753 Self::CONNECTOR_KW => "'connector'",
754 Self::INV_KW => "'inv'",
755
756 Self::SOURCE_FILE => "source file",
758 Self::PACKAGE => "package",
759 Self::LIBRARY_PACKAGE => "library package",
760 Self::NAMESPACE_BODY => "namespace body",
761 Self::IMPORT => "import",
762 Self::ALIAS_MEMBER => "alias",
763 Self::DEFINITION => "definition",
764 Self::USAGE => "usage",
765 Self::EXPRESSION => "expression",
766 Self::QUALIFIED_NAME => "qualified name",
767 Self::NAME => "name",
768 Self::MULTIPLICITY => "multiplicity",
769 Self::MULTIPLICITY_RANGE => "multiplicity range",
770
771 _ => "token",
773 }
774 }
775}
776
777impl From<SyntaxKind> for rowan::SyntaxKind {
778 fn from(kind: SyntaxKind) -> Self {
779 Self(kind as u16)
780 }
781}
782
783impl From<rowan::SyntaxKind> for SyntaxKind {
784 fn from(raw: rowan::SyntaxKind) -> Self {
785 assert!(raw.0 < SyntaxKind::__LAST as u16);
786 unsafe { std::mem::transmute::<u16, SyntaxKind>(raw.0) }
788 }
789}
790
791#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
793pub enum SysMLLanguage {}
794
795impl rowan::Language for SysMLLanguage {
796 type Kind = SyntaxKind;
797
798 fn kind_from_raw(raw: rowan::SyntaxKind) -> Self::Kind {
799 raw.into()
800 }
801
802 fn kind_to_raw(kind: Self::Kind) -> rowan::SyntaxKind {
803 kind.into()
804 }
805}
806
807pub type SyntaxNode = rowan::SyntaxNode<SysMLLanguage>;
809pub type SyntaxToken = rowan::SyntaxToken<SysMLLanguage>;
810pub type SyntaxElement = rowan::SyntaxElement<SysMLLanguage>;
811#[allow(dead_code)]
812pub type SyntaxNodeChildren = rowan::SyntaxNodeChildren<SysMLLanguage>;