@@ -331,6 +331,331 @@ pub enum SyntaxKind {
331
331
}
332
332
use self :: SyntaxKind :: * ;
333
333
impl SyntaxKind {
334
+ #[ allow( unreachable_patterns) ]
335
+ pub const fn text ( self ) -> & ' static str {
336
+ match self {
337
+ TOMBSTONE
338
+ | EOF
339
+ | __LAST
340
+ | BYTE
341
+ | BYTE_STRING
342
+ | CHAR
343
+ | C_STRING
344
+ | FLOAT_NUMBER
345
+ | INT_NUMBER
346
+ | RAW_BYTE_STRING
347
+ | RAW_C_STRING
348
+ | RAW_STRING
349
+ | STRING
350
+ | ABI
351
+ | ADT
352
+ | ARG_LIST
353
+ | ARRAY_EXPR
354
+ | ARRAY_TYPE
355
+ | ASM_CLOBBER_ABI
356
+ | ASM_CONST
357
+ | ASM_DIR_SPEC
358
+ | ASM_EXPR
359
+ | ASM_LABEL
360
+ | ASM_OPERAND
361
+ | ASM_OPERAND_EXPR
362
+ | ASM_OPERAND_NAMED
363
+ | ASM_OPTION
364
+ | ASM_OPTIONS
365
+ | ASM_PIECE
366
+ | ASM_REG_OPERAND
367
+ | ASM_REG_SPEC
368
+ | ASM_SYM
369
+ | ASSOC_ITEM
370
+ | ASSOC_ITEM_LIST
371
+ | ASSOC_TYPE_ARG
372
+ | ATTR
373
+ | AWAIT_EXPR
374
+ | BECOME_EXPR
375
+ | BIN_EXPR
376
+ | BLOCK_EXPR
377
+ | BOX_PAT
378
+ | BREAK_EXPR
379
+ | CALL_EXPR
380
+ | CAST_EXPR
381
+ | CLOSURE_BINDER
382
+ | CLOSURE_EXPR
383
+ | CONST
384
+ | CONST_ARG
385
+ | CONST_BLOCK_PAT
386
+ | CONST_PARAM
387
+ | CONTINUE_EXPR
388
+ | DYN_TRAIT_TYPE
389
+ | ENUM
390
+ | EXPR
391
+ | EXPR_STMT
392
+ | EXTERN_BLOCK
393
+ | EXTERN_CRATE
394
+ | EXTERN_ITEM
395
+ | EXTERN_ITEM_LIST
396
+ | FIELD_EXPR
397
+ | FIELD_LIST
398
+ | FN
399
+ | FN_PTR_TYPE
400
+ | FORMAT_ARGS_ARG
401
+ | FORMAT_ARGS_EXPR
402
+ | FOR_EXPR
403
+ | FOR_TYPE
404
+ | GENERIC_ARG
405
+ | GENERIC_ARG_LIST
406
+ | GENERIC_PARAM
407
+ | GENERIC_PARAM_LIST
408
+ | IDENT_PAT
409
+ | IF_EXPR
410
+ | IMPL
411
+ | IMPL_TRAIT_TYPE
412
+ | INDEX_EXPR
413
+ | INFER_TYPE
414
+ | ITEM
415
+ | ITEM_LIST
416
+ | LABEL
417
+ | LET_ELSE
418
+ | LET_EXPR
419
+ | LET_STMT
420
+ | LIFETIME
421
+ | LIFETIME_ARG
422
+ | LIFETIME_PARAM
423
+ | LITERAL
424
+ | LITERAL_PAT
425
+ | LOOP_EXPR
426
+ | MACRO_CALL
427
+ | MACRO_DEF
428
+ | MACRO_EXPR
429
+ | MACRO_ITEMS
430
+ | MACRO_PAT
431
+ | MACRO_RULES
432
+ | MACRO_STMTS
433
+ | MACRO_TYPE
434
+ | MATCH_ARM
435
+ | MATCH_ARM_LIST
436
+ | MATCH_EXPR
437
+ | MATCH_GUARD
438
+ | META
439
+ | METHOD_CALL_EXPR
440
+ | MODULE
441
+ | NAME
442
+ | NAME_REF
443
+ | NEVER_TYPE
444
+ | OFFSET_OF_EXPR
445
+ | OR_PAT
446
+ | PARAM
447
+ | PARAM_LIST
448
+ | PARENTHESIZED_ARG_LIST
449
+ | PAREN_EXPR
450
+ | PAREN_PAT
451
+ | PAREN_TYPE
452
+ | PAT
453
+ | PATH
454
+ | PATH_EXPR
455
+ | PATH_PAT
456
+ | PATH_SEGMENT
457
+ | PATH_TYPE
458
+ | PREFIX_EXPR
459
+ | PTR_TYPE
460
+ | RANGE_EXPR
461
+ | RANGE_PAT
462
+ | RECORD_EXPR
463
+ | RECORD_EXPR_FIELD
464
+ | RECORD_EXPR_FIELD_LIST
465
+ | RECORD_FIELD
466
+ | RECORD_FIELD_LIST
467
+ | RECORD_PAT
468
+ | RECORD_PAT_FIELD
469
+ | RECORD_PAT_FIELD_LIST
470
+ | REF_EXPR
471
+ | REF_PAT
472
+ | REF_TYPE
473
+ | RENAME
474
+ | REST_PAT
475
+ | RETURN_EXPR
476
+ | RETURN_TYPE_SYNTAX
477
+ | RET_TYPE
478
+ | SELF_PARAM
479
+ | SLICE_PAT
480
+ | SLICE_TYPE
481
+ | SOURCE_FILE
482
+ | STATIC
483
+ | STMT
484
+ | STMT_LIST
485
+ | STRUCT
486
+ | TOKEN_TREE
487
+ | TRAIT
488
+ | TRAIT_ALIAS
489
+ | TRY_EXPR
490
+ | TUPLE_EXPR
491
+ | TUPLE_FIELD
492
+ | TUPLE_FIELD_LIST
493
+ | TUPLE_PAT
494
+ | TUPLE_STRUCT_PAT
495
+ | TUPLE_TYPE
496
+ | TYPE
497
+ | TYPE_ALIAS
498
+ | TYPE_ARG
499
+ | TYPE_BOUND
500
+ | TYPE_BOUND_LIST
501
+ | TYPE_PARAM
502
+ | UNDERSCORE_EXPR
503
+ | UNION
504
+ | USE
505
+ | USE_BOUND_GENERIC_ARG
506
+ | USE_BOUND_GENERIC_ARGS
507
+ | USE_TREE
508
+ | USE_TREE_LIST
509
+ | VARIANT
510
+ | VARIANT_LIST
511
+ | VISIBILITY
512
+ | WHERE_CLAUSE
513
+ | WHERE_PRED
514
+ | WHILE_EXPR
515
+ | WILDCARD_PAT
516
+ | YEET_EXPR
517
+ | YIELD_EXPR
518
+ | COMMENT
519
+ | ERROR
520
+ | IDENT
521
+ | LIFETIME_IDENT
522
+ | NEWLINE
523
+ | SHEBANG
524
+ | WHITESPACE => panic ! ( "no text for these `SyntaxKind`s" ) ,
525
+ DOLLAR => "$" ,
526
+ SEMICOLON => ";" ,
527
+ COMMA => "," ,
528
+ L_PAREN => "(" ,
529
+ R_PAREN => ")" ,
530
+ L_CURLY => "{" ,
531
+ R_CURLY => "}" ,
532
+ L_BRACK => "[" ,
533
+ R_BRACK => "]" ,
534
+ L_ANGLE => "<" ,
535
+ R_ANGLE => ">" ,
536
+ AT => "@" ,
537
+ POUND => "#" ,
538
+ TILDE => "~" ,
539
+ QUESTION => "?" ,
540
+ AMP => "&" ,
541
+ PIPE => "|" ,
542
+ PLUS => "+" ,
543
+ STAR => "*" ,
544
+ SLASH => "/" ,
545
+ CARET => "^" ,
546
+ PERCENT => "%" ,
547
+ UNDERSCORE => "_" ,
548
+ DOT => "." ,
549
+ DOT2 => ".." ,
550
+ DOT3 => "..." ,
551
+ DOT2EQ => "..=" ,
552
+ COLON => ":" ,
553
+ COLON2 => "::" ,
554
+ EQ => "=" ,
555
+ EQ2 => "==" ,
556
+ FAT_ARROW => "=>" ,
557
+ BANG => "!" ,
558
+ NEQ => "!=" ,
559
+ MINUS => "-" ,
560
+ THIN_ARROW => "->" ,
561
+ LTEQ => "<=" ,
562
+ GTEQ => ">=" ,
563
+ PLUSEQ => "+=" ,
564
+ MINUSEQ => "-=" ,
565
+ PIPEEQ => "|=" ,
566
+ AMPEQ => "&=" ,
567
+ CARETEQ => "^=" ,
568
+ SLASHEQ => "/=" ,
569
+ STAREQ => "*=" ,
570
+ PERCENTEQ => "%=" ,
571
+ AMP2 => "&&" ,
572
+ PIPE2 => "||" ,
573
+ SHL => "<<" ,
574
+ SHR => ">>" ,
575
+ SHLEQ => "<<=" ,
576
+ SHREQ => ">>=" ,
577
+ SELF_TYPE_KW => "Self" ,
578
+ ABSTRACT_KW => "abstract" ,
579
+ AS_KW => "as" ,
580
+ BECOME_KW => "become" ,
581
+ BOX_KW => "box" ,
582
+ BREAK_KW => "break" ,
583
+ CONST_KW => "const" ,
584
+ CONTINUE_KW => "continue" ,
585
+ CRATE_KW => "crate" ,
586
+ DO_KW => "do" ,
587
+ ELSE_KW => "else" ,
588
+ ENUM_KW => "enum" ,
589
+ EXTERN_KW => "extern" ,
590
+ FALSE_KW => "false" ,
591
+ FINAL_KW => "final" ,
592
+ FN_KW => "fn" ,
593
+ FOR_KW => "for" ,
594
+ IF_KW => "if" ,
595
+ IMPL_KW => "impl" ,
596
+ IN_KW => "in" ,
597
+ LET_KW => "let" ,
598
+ LOOP_KW => "loop" ,
599
+ MACRO_KW => "macro" ,
600
+ MATCH_KW => "match" ,
601
+ MOD_KW => "mod" ,
602
+ MOVE_KW => "move" ,
603
+ MUT_KW => "mut" ,
604
+ OVERRIDE_KW => "override" ,
605
+ PRIV_KW => "priv" ,
606
+ PUB_KW => "pub" ,
607
+ REF_KW => "ref" ,
608
+ RETURN_KW => "return" ,
609
+ SELF_KW => "self" ,
610
+ STATIC_KW => "static" ,
611
+ STRUCT_KW => "struct" ,
612
+ SUPER_KW => "super" ,
613
+ TRAIT_KW => "trait" ,
614
+ TRUE_KW => "true" ,
615
+ TYPE_KW => "type" ,
616
+ TYPEOF_KW => "typeof" ,
617
+ UNSAFE_KW => "unsafe" ,
618
+ UNSIZED_KW => "unsized" ,
619
+ USE_KW => "use" ,
620
+ VIRTUAL_KW => "virtual" ,
621
+ WHERE_KW => "where" ,
622
+ WHILE_KW => "while" ,
623
+ YIELD_KW => "yield" ,
624
+ ASM_KW => "asm" ,
625
+ ATT_SYNTAX_KW => "att_syntax" ,
626
+ AUTO_KW => "auto" ,
627
+ BUILTIN_KW => "builtin" ,
628
+ CLOBBER_ABI_KW => "clobber_abi" ,
629
+ DEFAULT_KW => "default" ,
630
+ DYN_KW => "dyn" ,
631
+ FORMAT_ARGS_KW => "format_args" ,
632
+ INLATEOUT_KW => "inlateout" ,
633
+ INOUT_KW => "inout" ,
634
+ LABEL_KW => "label" ,
635
+ LATEOUT_KW => "lateout" ,
636
+ MACRO_RULES_KW => "macro_rules" ,
637
+ MAY_UNWIND_KW => "may_unwind" ,
638
+ NOMEM_KW => "nomem" ,
639
+ NORETURN_KW => "noreturn" ,
640
+ NOSTACK_KW => "nostack" ,
641
+ OFFSET_OF_KW => "offset_of" ,
642
+ OPTIONS_KW => "options" ,
643
+ OUT_KW => "out" ,
644
+ PRESERVES_FLAGS_KW => "preserves_flags" ,
645
+ PURE_KW => "pure" ,
646
+ RAW_KW => "raw" ,
647
+ READONLY_KW => "readonly" ,
648
+ SAFE_KW => "safe" ,
649
+ SYM_KW => "sym" ,
650
+ UNION_KW => "union" ,
651
+ YEET_KW => "yeet" ,
652
+ ASYNC_KW => "async" ,
653
+ AWAIT_KW => "await" ,
654
+ DYN_KW => "dyn" ,
655
+ GEN_KW => "gen" ,
656
+ TRY_KW => "try" ,
657
+ }
658
+ }
334
659
#[ doc = r" Checks whether this syntax kind is a strict keyword for the given edition." ]
335
660
#[ doc = r" Strict keywords are identifiers that are always considered keywords." ]
336
661
pub fn is_strict_keyword ( self , edition : Edition ) -> bool {
0 commit comments