aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksey Kladov <[email protected]>2018-08-13 16:27:26 +0100
committerAleksey Kladov <[email protected]>2018-08-13 16:27:26 +0100
commitc1a7b72fb7c9b69779e490e1d692ddfccec8b57a (patch)
tree362f9ac863989fbea465b9cb3bdb9bc40497f8f4
parent9149fd2c0ca3d23719082852a2cddd8ba5804ce6 (diff)
renames
-rw-r--r--crates/libanalysis/src/symbol_index.rs2
-rw-r--r--crates/libeditor/tests/test.rs12
-rw-r--r--crates/libsyntax2/src/ast/generated.rs14
-rw-r--r--crates/libsyntax2/src/grammar.ron14
-rw-r--r--crates/libsyntax2/src/grammar/items/mod.rs14
-rw-r--r--crates/libsyntax2/src/syntax_kinds/generated.rs28
-rw-r--r--crates/libsyntax2/tests/data/parser/err/0000_struct_field_missing_comma.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/err/0001_item_recovery_in_file.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/err/0003_C++_semicolon.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/err/0005_attribute_recover.txt4
-rw-r--r--crates/libsyntax2/tests/data/parser/err/0006_named_field_recovery.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/err/0007_stray_curly_in_file.txt4
-rw-r--r--crates/libsyntax2/tests/data/parser/err/0008_item_block_recovery.txt4
-rw-r--r--crates/libsyntax2/tests/data/parser/err/0009_broken_struct_type_parameter.txt4
-rw-r--r--crates/libsyntax2/tests/data/parser/err/0010_unsafe_lambda_block.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/err/0011_extern_struct.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/err/0012_broken_lambda.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/err/0013_invalid_type.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/err/0014_where_no_bounds.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0001_const_unsafe_fn.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0002_const_fn.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0004_extern_fn.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0007_unsafe_trait.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0009_unsafe_auto_trait.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0011_unsafe_fn.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0012_unsafe_extern_fn.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0013_unsafe_block_in_mod.txt4
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0014_type_item_type_params.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0015_type_item.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0016_type_item_where_clause.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0017_paren_type.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0018_unit_type.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0019_singleton_tuple_type.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0020_never_type.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0021_pointer_type_no_mutability.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0022_pointer_type_mut.txt4
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0023_array_type_missing_semi.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0024_array_type.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0025_slice_type.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0026_reference_type;.txt6
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0027_placeholder_type.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0028_fn_pointer_type.txt6
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0029_fn_pointer_type_missing_fn.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0030_fn_pointer_type_with_ret.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0031_for_type.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0032_path_type.txt8
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0034_bind_pat.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0035_ref_pat.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0036_placeholder_pat.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0037_crate_visibility.txt8
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0038_function_ret_type.txt4
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0039_path_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0040_expr_literals.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0041_type_param_bounds.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0042_type_param_default.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0043_call_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0044_ref_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0045_block.txt8
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0050_let_stmt;.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0051_method_call_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0052_field_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0053_block_items.txt4
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0054_impl_item_items.txt8
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0055_self_param.txt8
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0056_trait_item.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0057_auto_trait.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0058_type_arg.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0059_function_where_clause.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0060_function_type_params.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0061_struct_lit.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0063_impl_trait_type.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0063_lambda_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0064_param_list.txt8
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0065_if_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0066_lambda_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0067_block_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0068_pub_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0068_return_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0069_match_arm.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0070_match_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0071_tuple_pat_fields.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0072_path_part.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0073_struct_pat_fields.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0074_unary_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0075_try_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0076_cond.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0077_while_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0078_mod_contents.txt4
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0079_cast_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0080_tuple_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0081_index_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0082_tuple_pat.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0083_postfix_range.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0084_loop_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0085_for_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0085_match_arms_commas.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0086_array_expr.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0086_no_semi_after_block.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0087_stmt_postfix_expr_ambiguity.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0088_stmt_bin_expr_ambiguity.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0089_slice_pat.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0090_trait_item_items.txt8
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0091_fn_decl.txt4
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0092_literal_pattern.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0093_path_fn_trait_args.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0094_range_pat.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0095_path_type_with_bounds.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0096_value_parameters_no_patterns.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0097_param_list_opt_patterns.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0098_where_clause.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/inline/0099_crate_keyword_vis.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0001_struct_item.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0002_struct_item_field.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0005_fn_item.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0008_mod_item.txt4
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0011_outer_attribute.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0012_visibility.txt10
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0016_struct_flavors.txt10
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0017_attr_trailing_comma.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0018_struct_type_params.txt30
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0019_enums.txt10
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0020_type_param_bounds.txt18
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0021_extern_fn.txt6
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0023_static_items.txt4
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0024_const_item.txt4
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0025_extern_fn_in_block.txt4
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0026_const_fn_in_block.txt4
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0027_unsafe_fn_in_block.txt4
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0028_operator_binding_power.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0029_range_forms.txt2
-rw-r--r--crates/libsyntax2/tests/data/parser/ok/0030_traits.txt4
-rw-r--r--crates/server/src/conv.rs14
132 files changed, 252 insertions, 252 deletions
diff --git a/crates/libanalysis/src/symbol_index.rs b/crates/libanalysis/src/symbol_index.rs
index a7ae197e0..35141cfdc 100644
--- a/crates/libanalysis/src/symbol_index.rs
+++ b/crates/libanalysis/src/symbol_index.rs
@@ -68,7 +68,7 @@ impl Query {
68 ) -> Vec<&'a FileSymbol> { 68 ) -> Vec<&'a FileSymbol> {
69 fn is_type(kind: SyntaxKind) -> bool { 69 fn is_type(kind: SyntaxKind) -> bool {
70 match kind { 70 match kind {
71 STRUCT | ENUM | TRAIT | TYPE_ITEM => true, 71 STRUCT_DEF | ENUM_DEF | TRAIT_DEF | TYPE_DEF => true,
72 _ => false, 72 _ => false,
73 } 73 }
74 } 74 }
diff --git a/crates/libeditor/tests/test.rs b/crates/libeditor/tests/test.rs
index 369854fed..fab2e4ad3 100644
--- a/crates/libeditor/tests/test.rs
+++ b/crates/libeditor/tests/test.rs
@@ -83,13 +83,13 @@ const C: i32 = 92;
83"#); 83"#);
84 let symbols = file_symbols(&file); 84 let symbols = file_symbols(&file);
85 dbg_eq( 85 dbg_eq(
86 r#"[FileSymbol { parent: None, name: "Foo", name_range: [8; 11), node_range: [1; 26), kind: STRUCT }, 86 r#"[FileSymbol { parent: None, name: "Foo", name_range: [8; 11), node_range: [1; 26), kind: STRUCT_DEF },
87 FileSymbol { parent: None, name: "m", name_range: [32; 33), node_range: [28; 53), kind: MODULE }, 87 FileSymbol { parent: None, name: "m", name_range: [32; 33), node_range: [28; 53), kind: MODULE },
88 FileSymbol { parent: Some(1), name: "bar", name_range: [43; 46), node_range: [40; 51), kind: FUNCTION }, 88 FileSymbol { parent: Some(1), name: "bar", name_range: [43; 46), node_range: [40; 51), kind: FN_DEF },
89 FileSymbol { parent: None, name: "E", name_range: [60; 61), node_range: [55; 75), kind: ENUM }, 89 FileSymbol { parent: None, name: "E", name_range: [60; 61), node_range: [55; 75), kind: ENUM_DEF },
90 FileSymbol { parent: None, name: "T", name_range: [81; 82), node_range: [76; 88), kind: TYPE_ITEM }, 90 FileSymbol { parent: None, name: "T", name_range: [81; 82), node_range: [76; 88), kind: TYPE_DEF },
91 FileSymbol { parent: None, name: "S", name_range: [96; 97), node_range: [89; 108), kind: STATIC_ITEM }, 91 FileSymbol { parent: None, name: "S", name_range: [96; 97), node_range: [89; 108), kind: STATIC_DEF },
92 FileSymbol { parent: None, name: "C", name_range: [115; 116), node_range: [109; 127), kind: CONST_ITEM }]"#, 92 FileSymbol { parent: None, name: "C", name_range: [115; 116), node_range: [109; 127), kind: CONST_DEF }]"#,
93 &symbols, 93 &symbols,
94 ) 94 )
95} 95}
diff --git a/crates/libsyntax2/src/ast/generated.rs b/crates/libsyntax2/src/ast/generated.rs
index b1fd0a8ad..a557e6d73 100644
--- a/crates/libsyntax2/src/ast/generated.rs
+++ b/crates/libsyntax2/src/ast/generated.rs
@@ -14,7 +14,7 @@ pub struct ConstItem<R: TreeRoot = Arc<SyntaxRoot>> {
14impl<R: TreeRoot> AstNode<R> for ConstItem<R> { 14impl<R: TreeRoot> AstNode<R> for ConstItem<R> {
15 fn cast(syntax: SyntaxNode<R>) -> Option<Self> { 15 fn cast(syntax: SyntaxNode<R>) -> Option<Self> {
16 match syntax.kind() { 16 match syntax.kind() {
17 CONST_ITEM => Some(ConstItem { syntax }), 17 CONST_DEF => Some(ConstItem { syntax }),
18 _ => None, 18 _ => None,
19 } 19 }
20 } 20 }
@@ -33,7 +33,7 @@ pub struct Enum<R: TreeRoot = Arc<SyntaxRoot>> {
33impl<R: TreeRoot> AstNode<R> for Enum<R> { 33impl<R: TreeRoot> AstNode<R> for Enum<R> {
34 fn cast(syntax: SyntaxNode<R>) -> Option<Self> { 34 fn cast(syntax: SyntaxNode<R>) -> Option<Self> {
35 match syntax.kind() { 35 match syntax.kind() {
36 ENUM => Some(Enum { syntax }), 36 ENUM_DEF => Some(Enum { syntax }),
37 _ => None, 37 _ => None,
38 } 38 }
39 } 39 }
@@ -76,7 +76,7 @@ pub struct Function<R: TreeRoot = Arc<SyntaxRoot>> {
76impl<R: TreeRoot> AstNode<R> for Function<R> { 76impl<R: TreeRoot> AstNode<R> for Function<R> {
77 fn cast(syntax: SyntaxNode<R>) -> Option<Self> { 77 fn cast(syntax: SyntaxNode<R>) -> Option<Self> {
78 match syntax.kind() { 78 match syntax.kind() {
79 FUNCTION => Some(Function { syntax }), 79 FN_DEF => Some(Function { syntax }),
80 _ => None, 80 _ => None,
81 } 81 }
82 } 82 }
@@ -150,7 +150,7 @@ pub struct StaticItem<R: TreeRoot = Arc<SyntaxRoot>> {
150impl<R: TreeRoot> AstNode<R> for StaticItem<R> { 150impl<R: TreeRoot> AstNode<R> for StaticItem<R> {
151 fn cast(syntax: SyntaxNode<R>) -> Option<Self> { 151 fn cast(syntax: SyntaxNode<R>) -> Option<Self> {
152 match syntax.kind() { 152 match syntax.kind() {
153 STATIC_ITEM => Some(StaticItem { syntax }), 153 STATIC_DEF => Some(StaticItem { syntax }),
154 _ => None, 154 _ => None,
155 } 155 }
156 } 156 }
@@ -169,7 +169,7 @@ pub struct Struct<R: TreeRoot = Arc<SyntaxRoot>> {
169impl<R: TreeRoot> AstNode<R> for Struct<R> { 169impl<R: TreeRoot> AstNode<R> for Struct<R> {
170 fn cast(syntax: SyntaxNode<R>) -> Option<Self> { 170 fn cast(syntax: SyntaxNode<R>) -> Option<Self> {
171 match syntax.kind() { 171 match syntax.kind() {
172 STRUCT => Some(Struct { syntax }), 172 STRUCT_DEF => Some(Struct { syntax }),
173 _ => None, 173 _ => None,
174 } 174 }
175 } 175 }
@@ -188,7 +188,7 @@ pub struct Trait<R: TreeRoot = Arc<SyntaxRoot>> {
188impl<R: TreeRoot> AstNode<R> for Trait<R> { 188impl<R: TreeRoot> AstNode<R> for Trait<R> {
189 fn cast(syntax: SyntaxNode<R>) -> Option<Self> { 189 fn cast(syntax: SyntaxNode<R>) -> Option<Self> {
190 match syntax.kind() { 190 match syntax.kind() {
191 TRAIT => Some(Trait { syntax }), 191 TRAIT_DEF => Some(Trait { syntax }),
192 _ => None, 192 _ => None,
193 } 193 }
194 } 194 }
@@ -207,7 +207,7 @@ pub struct TypeItem<R: TreeRoot = Arc<SyntaxRoot>> {
207impl<R: TreeRoot> AstNode<R> for TypeItem<R> { 207impl<R: TreeRoot> AstNode<R> for TypeItem<R> {
208 fn cast(syntax: SyntaxNode<R>) -> Option<Self> { 208 fn cast(syntax: SyntaxNode<R>) -> Option<Self> {
209 match syntax.kind() { 209 match syntax.kind() {
210 TYPE_ITEM => Some(TypeItem { syntax }), 210 TYPE_DEF => Some(TypeItem { syntax }),
211 _ => None, 211 _ => None,
212 } 212 }
213 } 213 }
diff --git a/crates/libsyntax2/src/grammar.ron b/crates/libsyntax2/src/grammar.ron
index c07ed4203..16300af41 100644
--- a/crates/libsyntax2/src/grammar.ron
+++ b/crates/libsyntax2/src/grammar.ron
@@ -109,17 +109,17 @@ Grammar(
109 nodes: [ 109 nodes: [
110 "FILE", 110 "FILE",
111 111
112 "STRUCT", 112 "STRUCT_DEF",
113 "ENUM", 113 "ENUM_DEF",
114 "FUNCTION", 114 "FN_DEF",
115 "EXTERN_CRATE_ITEM", 115 "EXTERN_CRATE_ITEM",
116 "MODULE", 116 "MODULE",
117 "USE_ITEM", 117 "USE_ITEM",
118 "STATIC_ITEM", 118 "STATIC_DEF",
119 "CONST_ITEM", 119 "CONST_DEF",
120 "TRAIT", 120 "TRAIT_DEF",
121 "IMPL_ITEM", 121 "IMPL_ITEM",
122 "TYPE_ITEM", 122 "TYPE_DEF",
123 "MACRO_CALL", 123 "MACRO_CALL",
124 "TOKEN_TREE", 124 "TOKEN_TREE",
125 125
diff --git a/crates/libsyntax2/src/grammar/items/mod.rs b/crates/libsyntax2/src/grammar/items/mod.rs
index 6f401ea1b..c3893937a 100644
--- a/crates/libsyntax2/src/grammar/items/mod.rs
+++ b/crates/libsyntax2/src/grammar/items/mod.rs
@@ -108,7 +108,7 @@ pub(super) fn maybe_item(p: &mut Parser) -> MaybeItem {
108 // unsafe fn foo() {} 108 // unsafe fn foo() {}
109 FN_KW => { 109 FN_KW => {
110 function(p); 110 function(p);
111 FUNCTION 111 FN_DEF
112 } 112 }
113 113
114 // test unsafe_trait 114 // test unsafe_trait
@@ -121,7 +121,7 @@ pub(super) fn maybe_item(p: &mut Parser) -> MaybeItem {
121 // unsafe auto trait T {} 121 // unsafe auto trait T {}
122 TRAIT_KW => { 122 TRAIT_KW => {
123 traits::trait_item(p); 123 traits::trait_item(p);
124 TRAIT 124 TRAIT_DEF
125 } 125 }
126 126
127 // test unsafe_impl 127 // test unsafe_impl
@@ -157,7 +157,7 @@ fn items_without_modifiers(p: &mut Parser) -> Option<SyntaxKind> {
157 } 157 }
158 TYPE_KW => { 158 TYPE_KW => {
159 type_item(p); 159 type_item(p);
160 TYPE_ITEM 160 TYPE_DEF
161 } 161 }
162 MOD_KW => { 162 MOD_KW => {
163 mod_item(p); 163 mod_item(p);
@@ -171,11 +171,11 @@ fn items_without_modifiers(p: &mut Parser) -> Option<SyntaxKind> {
171 consider removing this semicolon" 171 consider removing this semicolon"
172 ); 172 );
173 } 173 }
174 STRUCT 174 STRUCT_DEF
175 } 175 }
176 ENUM_KW => { 176 ENUM_KW => {
177 structs::enum_item(p); 177 structs::enum_item(p);
178 ENUM 178 ENUM_DEF
179 } 179 }
180 USE_KW => { 180 USE_KW => {
181 use_item::use_item(p); 181 use_item::use_item(p);
@@ -183,11 +183,11 @@ fn items_without_modifiers(p: &mut Parser) -> Option<SyntaxKind> {
183 } 183 }
184 CONST_KW if (la == IDENT || la == MUT_KW) => { 184 CONST_KW if (la == IDENT || la == MUT_KW) => {
185 consts::const_item(p); 185 consts::const_item(p);
186 CONST_ITEM 186 CONST_DEF
187 } 187 }
188 STATIC_KW => { 188 STATIC_KW => {
189 consts::static_item(p); 189 consts::static_item(p);
190 STATIC_ITEM 190 STATIC_DEF
191 } 191 }
192 // test extern_block 192 // test extern_block
193 // extern {} 193 // extern {}
diff --git a/crates/libsyntax2/src/syntax_kinds/generated.rs b/crates/libsyntax2/src/syntax_kinds/generated.rs
index f5f8fe1ef..b04dfe55c 100644
--- a/crates/libsyntax2/src/syntax_kinds/generated.rs
+++ b/crates/libsyntax2/src/syntax_kinds/generated.rs
@@ -109,17 +109,17 @@ pub enum SyntaxKind {
109 DOC_COMMENT, 109 DOC_COMMENT,
110 SHEBANG, 110 SHEBANG,
111 FILE, 111 FILE,
112 STRUCT, 112 STRUCT_DEF,
113 ENUM, 113 ENUM_DEF,
114 FUNCTION, 114 FN_DEF,
115 EXTERN_CRATE_ITEM, 115 EXTERN_CRATE_ITEM,
116 MODULE, 116 MODULE,
117 USE_ITEM, 117 USE_ITEM,
118 STATIC_ITEM, 118 STATIC_DEF,
119 CONST_ITEM, 119 CONST_DEF,
120 TRAIT, 120 TRAIT_DEF,
121 IMPL_ITEM, 121 IMPL_ITEM,
122 TYPE_ITEM, 122 TYPE_DEF,
123 MACRO_CALL, 123 MACRO_CALL,
124 TOKEN_TREE, 124 TOKEN_TREE,
125 PAREN_TYPE, 125 PAREN_TYPE,
@@ -347,17 +347,17 @@ impl SyntaxKind {
347 DOC_COMMENT => &SyntaxInfo { name: "DOC_COMMENT" }, 347 DOC_COMMENT => &SyntaxInfo { name: "DOC_COMMENT" },
348 SHEBANG => &SyntaxInfo { name: "SHEBANG" }, 348 SHEBANG => &SyntaxInfo { name: "SHEBANG" },
349 FILE => &SyntaxInfo { name: "FILE" }, 349 FILE => &SyntaxInfo { name: "FILE" },
350 STRUCT => &SyntaxInfo { name: "STRUCT" }, 350 STRUCT_DEF => &SyntaxInfo { name: "STRUCT_DEF" },
351 ENUM => &SyntaxInfo { name: "ENUM" }, 351 ENUM_DEF => &SyntaxInfo { name: "ENUM_DEF" },
352 FUNCTION => &SyntaxInfo { name: "FUNCTION" }, 352 FN_DEF => &SyntaxInfo { name: "FN_DEF" },
353 EXTERN_CRATE_ITEM => &SyntaxInfo { name: "EXTERN_CRATE_ITEM" }, 353 EXTERN_CRATE_ITEM => &SyntaxInfo { name: "EXTERN_CRATE_ITEM" },
354 MODULE => &SyntaxInfo { name: "MODULE" }, 354 MODULE => &SyntaxInfo { name: "MODULE" },
355 USE_ITEM => &SyntaxInfo { name: "USE_ITEM" }, 355 USE_ITEM => &SyntaxInfo { name: "USE_ITEM" },
356 STATIC_ITEM => &SyntaxInfo { name: "STATIC_ITEM" }, 356 STATIC_DEF => &SyntaxInfo { name: "STATIC_DEF" },
357 CONST_ITEM => &SyntaxInfo { name: "CONST_ITEM" }, 357 CONST_DEF => &SyntaxInfo { name: "CONST_DEF" },
358 TRAIT => &SyntaxInfo { name: "TRAIT" }, 358 TRAIT_DEF => &SyntaxInfo { name: "TRAIT_DEF" },
359 IMPL_ITEM => &SyntaxInfo { name: "IMPL_ITEM" }, 359 IMPL_ITEM => &SyntaxInfo { name: "IMPL_ITEM" },
360 TYPE_ITEM => &SyntaxInfo { name: "TYPE_ITEM" }, 360 TYPE_DEF => &SyntaxInfo { name: "TYPE_DEF" },
361 MACRO_CALL => &SyntaxInfo { name: "MACRO_CALL" }, 361 MACRO_CALL => &SyntaxInfo { name: "MACRO_CALL" },
362 TOKEN_TREE => &SyntaxInfo { name: "TOKEN_TREE" }, 362 TOKEN_TREE => &SyntaxInfo { name: "TOKEN_TREE" },
363 PAREN_TYPE => &SyntaxInfo { name: "PAREN_TYPE" }, 363 PAREN_TYPE => &SyntaxInfo { name: "PAREN_TYPE" },
diff --git a/crates/libsyntax2/tests/data/parser/err/0000_struct_field_missing_comma.txt b/crates/libsyntax2/tests/data/parser/err/0000_struct_field_missing_comma.txt
index 4394f4011..cd9cf54c6 100644
--- a/crates/libsyntax2/tests/data/parser/err/0000_struct_field_missing_comma.txt
+++ b/crates/libsyntax2/tests/data/parser/err/0000_struct_field_missing_comma.txt
@@ -1,5 +1,5 @@
1FILE@[0; 34) 1FILE@[0; 34)
2 STRUCT@[0; 34) 2 STRUCT_DEF@[0; 34)
3 STRUCT_KW@[0; 6) 3 STRUCT_KW@[0; 6)
4 WHITESPACE@[6; 7) 4 WHITESPACE@[6; 7)
5 NAME@[7; 8) 5 NAME@[7; 8)
diff --git a/crates/libsyntax2/tests/data/parser/err/0001_item_recovery_in_file.txt b/crates/libsyntax2/tests/data/parser/err/0001_item_recovery_in_file.txt
index efae193e2..e974b6e8c 100644
--- a/crates/libsyntax2/tests/data/parser/err/0001_item_recovery_in_file.txt
+++ b/crates/libsyntax2/tests/data/parser/err/0001_item_recovery_in_file.txt
@@ -7,7 +7,7 @@ FILE@[0; 21)
7 ERROR@[3; 8) 7 ERROR@[3; 8)
8 MATCH_KW@[3; 8) 8 MATCH_KW@[3; 8)
9 WHITESPACE@[8; 10) 9 WHITESPACE@[8; 10)
10 STRUCT@[10; 21) 10 STRUCT_DEF@[10; 21)
11 STRUCT_KW@[10; 16) 11 STRUCT_KW@[10; 16)
12 WHITESPACE@[16; 17) 12 WHITESPACE@[16; 17)
13 NAME@[17; 18) 13 NAME@[17; 18)
diff --git a/crates/libsyntax2/tests/data/parser/err/0003_C++_semicolon.txt b/crates/libsyntax2/tests/data/parser/err/0003_C++_semicolon.txt
index 88f3f81f1..01d12a646 100644
--- a/crates/libsyntax2/tests/data/parser/err/0003_C++_semicolon.txt
+++ b/crates/libsyntax2/tests/data/parser/err/0003_C++_semicolon.txt
@@ -1,5 +1,5 @@
1FILE@[0; 40) 1FILE@[0; 40)
2 STRUCT@[0; 40) 2 STRUCT_DEF@[0; 40)
3 STRUCT_KW@[0; 6) 3 STRUCT_KW@[0; 6)
4 WHITESPACE@[6; 7) 4 WHITESPACE@[6; 7)
5 NAME@[7; 8) 5 NAME@[7; 8)
diff --git a/crates/libsyntax2/tests/data/parser/err/0005_attribute_recover.txt b/crates/libsyntax2/tests/data/parser/err/0005_attribute_recover.txt
index 079b0d1f6..219352859 100644
--- a/crates/libsyntax2/tests/data/parser/err/0005_attribute_recover.txt
+++ b/crates/libsyntax2/tests/data/parser/err/0005_attribute_recover.txt
@@ -1,5 +1,5 @@
1FILE@[0; 54) 1FILE@[0; 54)
2 FUNCTION@[0; 31) 2 FN_DEF@[0; 31)
3 ATTR@[0; 18) 3 ATTR@[0; 18)
4 POUND@[0; 1) 4 POUND@[0; 1)
5 L_BRACK@[1; 2) 5 L_BRACK@[1; 2)
@@ -35,7 +35,7 @@ FILE@[0; 54)
35 WHITESPACE@[29; 30) 35 WHITESPACE@[29; 30)
36 R_CURLY@[30; 31) 36 R_CURLY@[30; 31)
37 WHITESPACE@[31; 34) 37 WHITESPACE@[31; 34)
38 FUNCTION@[34; 53) 38 FN_DEF@[34; 53)
39 ATTR@[34; 40) 39 ATTR@[34; 40)
40 POUND@[34; 35) 40 POUND@[34; 35)
41 L_BRACK@[35; 36) 41 L_BRACK@[35; 36)
diff --git a/crates/libsyntax2/tests/data/parser/err/0006_named_field_recovery.txt b/crates/libsyntax2/tests/data/parser/err/0006_named_field_recovery.txt
index a9af71e25..0b6fa65df 100644
--- a/crates/libsyntax2/tests/data/parser/err/0006_named_field_recovery.txt
+++ b/crates/libsyntax2/tests/data/parser/err/0006_named_field_recovery.txt
@@ -1,5 +1,5 @@
1FILE@[0; 74) 1FILE@[0; 74)
2 STRUCT@[0; 73) 2 STRUCT_DEF@[0; 73)
3 STRUCT_KW@[0; 6) 3 STRUCT_KW@[0; 6)
4 WHITESPACE@[6; 7) 4 WHITESPACE@[6; 7)
5 NAME@[7; 8) 5 NAME@[7; 8)
diff --git a/crates/libsyntax2/tests/data/parser/err/0007_stray_curly_in_file.txt b/crates/libsyntax2/tests/data/parser/err/0007_stray_curly_in_file.txt
index 271299bb1..cff8353d4 100644
--- a/crates/libsyntax2/tests/data/parser/err/0007_stray_curly_in_file.txt
+++ b/crates/libsyntax2/tests/data/parser/err/0007_stray_curly_in_file.txt
@@ -3,7 +3,7 @@ FILE@[0; 31)
3 R_CURLY@[0; 1) 3 R_CURLY@[0; 1)
4 err: `expected an item` 4 err: `expected an item`
5 WHITESPACE@[1; 3) 5 WHITESPACE@[1; 3)
6 STRUCT@[3; 12) 6 STRUCT_DEF@[3; 12)
7 STRUCT_KW@[3; 9) 7 STRUCT_KW@[3; 9)
8 WHITESPACE@[9; 10) 8 WHITESPACE@[9; 10)
9 NAME@[10; 11) 9 NAME@[10; 11)
@@ -14,7 +14,7 @@ FILE@[0; 31)
14 ERROR@[14; 15) 14 ERROR@[14; 15)
15 R_CURLY@[14; 15) 15 R_CURLY@[14; 15)
16 WHITESPACE@[15; 17) 16 WHITESPACE@[15; 17)
17 FUNCTION@[17; 27) 17 FN_DEF@[17; 27)
18 FN_KW@[17; 19) 18 FN_KW@[17; 19)
19 WHITESPACE@[19; 20) 19 WHITESPACE@[19; 20)
20 NAME@[20; 23) 20 NAME@[20; 23)
diff --git a/crates/libsyntax2/tests/data/parser/err/0008_item_block_recovery.txt b/crates/libsyntax2/tests/data/parser/err/0008_item_block_recovery.txt
index f2a503cec..5b46be079 100644
--- a/crates/libsyntax2/tests/data/parser/err/0008_item_block_recovery.txt
+++ b/crates/libsyntax2/tests/data/parser/err/0008_item_block_recovery.txt
@@ -1,5 +1,5 @@
1FILE@[0; 95) 1FILE@[0; 95)
2 FUNCTION@[0; 12) 2 FN_DEF@[0; 12)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
@@ -51,7 +51,7 @@ FILE@[0; 95)
51 WHITESPACE@[78; 79) 51 WHITESPACE@[78; 79)
52 R_CURLY@[79; 80) 52 R_CURLY@[79; 80)
53 WHITESPACE@[80; 82) 53 WHITESPACE@[80; 82)
54 FUNCTION@[82; 94) 54 FN_DEF@[82; 94)
55 FN_KW@[82; 84) 55 FN_KW@[82; 84)
56 WHITESPACE@[84; 85) 56 WHITESPACE@[84; 85)
57 NAME@[85; 88) 57 NAME@[85; 88)
diff --git a/crates/libsyntax2/tests/data/parser/err/0009_broken_struct_type_parameter.txt b/crates/libsyntax2/tests/data/parser/err/0009_broken_struct_type_parameter.txt
index 33409bc82..0c5b57ee5 100644
--- a/crates/libsyntax2/tests/data/parser/err/0009_broken_struct_type_parameter.txt
+++ b/crates/libsyntax2/tests/data/parser/err/0009_broken_struct_type_parameter.txt
@@ -1,5 +1,5 @@
1FILE@[0; 43) 1FILE@[0; 43)
2 STRUCT@[0; 11) 2 STRUCT_DEF@[0; 11)
3 STRUCT_KW@[0; 6) 3 STRUCT_KW@[0; 6)
4 WHITESPACE@[6; 7) 4 WHITESPACE@[6; 7)
5 NAME@[7; 8) 5 NAME@[7; 8)
@@ -35,7 +35,7 @@ FILE@[0; 43)
35 WHITESPACE@[29; 30) 35 WHITESPACE@[29; 30)
36 R_CURLY@[30; 31) 36 R_CURLY@[30; 31)
37 WHITESPACE@[31; 33) 37 WHITESPACE@[31; 33)
38 STRUCT@[33; 42) 38 STRUCT_DEF@[33; 42)
39 STRUCT_KW@[33; 39) 39 STRUCT_KW@[33; 39)
40 WHITESPACE@[39; 40) 40 WHITESPACE@[39; 40)
41 NAME@[40; 41) 41 NAME@[40; 41)
diff --git a/crates/libsyntax2/tests/data/parser/err/0010_unsafe_lambda_block.txt b/crates/libsyntax2/tests/data/parser/err/0010_unsafe_lambda_block.txt
index 95d4af424..b18de3a9c 100644
--- a/crates/libsyntax2/tests/data/parser/err/0010_unsafe_lambda_block.txt
+++ b/crates/libsyntax2/tests/data/parser/err/0010_unsafe_lambda_block.txt
@@ -1,5 +1,5 @@
1FILE@[0; 42) 1FILE@[0; 42)
2 FUNCTION@[0; 41) 2 FN_DEF@[0; 41)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 7) 5 NAME@[3; 7)
diff --git a/crates/libsyntax2/tests/data/parser/err/0011_extern_struct.txt b/crates/libsyntax2/tests/data/parser/err/0011_extern_struct.txt
index 42aef82da..be63741ae 100644
--- a/crates/libsyntax2/tests/data/parser/err/0011_extern_struct.txt
+++ b/crates/libsyntax2/tests/data/parser/err/0011_extern_struct.txt
@@ -4,7 +4,7 @@ FILE@[0; 19)
4 EXTERN_KW@[0; 6) 4 EXTERN_KW@[0; 6)
5 err: `expected fn, trait or impl` 5 err: `expected fn, trait or impl`
6 WHITESPACE@[6; 7) 6 WHITESPACE@[6; 7)
7 STRUCT@[7; 18) 7 STRUCT_DEF@[7; 18)
8 STRUCT_KW@[7; 13) 8 STRUCT_KW@[7; 13)
9 WHITESPACE@[13; 14) 9 WHITESPACE@[13; 14)
10 NAME@[14; 17) 10 NAME@[14; 17)
diff --git a/crates/libsyntax2/tests/data/parser/err/0012_broken_lambda.txt b/crates/libsyntax2/tests/data/parser/err/0012_broken_lambda.txt
index cf6e68a78..f1827d3dc 100644
--- a/crates/libsyntax2/tests/data/parser/err/0012_broken_lambda.txt
+++ b/crates/libsyntax2/tests/data/parser/err/0012_broken_lambda.txt
@@ -1,5 +1,5 @@
1FILE@[0; 389) 1FILE@[0; 389)
2 FUNCTION@[0; 389) 2 FN_DEF@[0; 389)
3 VISIBILITY@[0; 10) 3 VISIBILITY@[0; 10)
4 PUB_KW@[0; 3) 4 PUB_KW@[0; 3)
5 L_PAREN@[3; 4) 5 L_PAREN@[3; 4)
diff --git a/crates/libsyntax2/tests/data/parser/err/0013_invalid_type.txt b/crates/libsyntax2/tests/data/parser/err/0013_invalid_type.txt
index 8b56f699f..3ec4be9fa 100644
--- a/crates/libsyntax2/tests/data/parser/err/0013_invalid_type.txt
+++ b/crates/libsyntax2/tests/data/parser/err/0013_invalid_type.txt
@@ -1,5 +1,5 @@
1FILE@[0; 86) 1FILE@[0; 86)
2 STRUCT@[0; 84) 2 STRUCT_DEF@[0; 84)
3 VISIBILITY@[0; 3) 3 VISIBILITY@[0; 3)
4 PUB_KW@[0; 3) 4 PUB_KW@[0; 3)
5 WHITESPACE@[3; 4) 5 WHITESPACE@[3; 4)
diff --git a/crates/libsyntax2/tests/data/parser/err/0014_where_no_bounds.txt b/crates/libsyntax2/tests/data/parser/err/0014_where_no_bounds.txt
index 61444a88d..37b16a566 100644
--- a/crates/libsyntax2/tests/data/parser/err/0014_where_no_bounds.txt
+++ b/crates/libsyntax2/tests/data/parser/err/0014_where_no_bounds.txt
@@ -1,5 +1,5 @@
1FILE@[0; 23) 1FILE@[0; 23)
2 FUNCTION@[0; 22) 2 FN_DEF@[0; 22)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0001_const_unsafe_fn.txt b/crates/libsyntax2/tests/data/parser/inline/0001_const_unsafe_fn.txt
index 3932d033c..234c3c748 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0001_const_unsafe_fn.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0001_const_unsafe_fn.txt
@@ -1,5 +1,5 @@
1FILE@[0; 25) 1FILE@[0; 25)
2 FUNCTION@[0; 24) 2 FN_DEF@[0; 24)
3 CONST_KW@[0; 5) 3 CONST_KW@[0; 5)
4 WHITESPACE@[5; 6) 4 WHITESPACE@[5; 6)
5 UNSAFE_KW@[6; 12) 5 UNSAFE_KW@[6; 12)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0002_const_fn.txt b/crates/libsyntax2/tests/data/parser/inline/0002_const_fn.txt
index bc72ab235..c7d66b2e1 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0002_const_fn.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0002_const_fn.txt
@@ -1,5 +1,5 @@
1FILE@[0; 18) 1FILE@[0; 18)
2 FUNCTION@[0; 17) 2 FN_DEF@[0; 17)
3 CONST_KW@[0; 5) 3 CONST_KW@[0; 5)
4 WHITESPACE@[5; 6) 4 WHITESPACE@[5; 6)
5 FN_KW@[6; 8) 5 FN_KW@[6; 8)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0004_extern_fn.txt b/crates/libsyntax2/tests/data/parser/inline/0004_extern_fn.txt
index e7787d4ab..161af9c7d 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0004_extern_fn.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0004_extern_fn.txt
@@ -1,5 +1,5 @@
1FILE@[0; 19) 1FILE@[0; 19)
2 FUNCTION@[0; 18) 2 FN_DEF@[0; 18)
3 ABI@[0; 6) 3 ABI@[0; 6)
4 EXTERN_KW@[0; 6) 4 EXTERN_KW@[0; 6)
5 WHITESPACE@[6; 7) 5 WHITESPACE@[6; 7)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0007_unsafe_trait.txt b/crates/libsyntax2/tests/data/parser/inline/0007_unsafe_trait.txt
index a98c05c77..e75f18802 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0007_unsafe_trait.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0007_unsafe_trait.txt
@@ -1,5 +1,5 @@
1FILE@[0; 18) 1FILE@[0; 18)
2 TRAIT@[0; 17) 2 TRAIT_DEF@[0; 17)
3 UNSAFE_KW@[0; 6) 3 UNSAFE_KW@[0; 6)
4 WHITESPACE@[6; 7) 4 WHITESPACE@[6; 7)
5 TRAIT_KW@[7; 12) 5 TRAIT_KW@[7; 12)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0009_unsafe_auto_trait.txt b/crates/libsyntax2/tests/data/parser/inline/0009_unsafe_auto_trait.txt
index dac09a654..78d0331d0 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0009_unsafe_auto_trait.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0009_unsafe_auto_trait.txt
@@ -1,5 +1,5 @@
1FILE@[0; 23) 1FILE@[0; 23)
2 TRAIT@[0; 22) 2 TRAIT_DEF@[0; 22)
3 UNSAFE_KW@[0; 6) 3 UNSAFE_KW@[0; 6)
4 WHITESPACE@[6; 7) 4 WHITESPACE@[6; 7)
5 AUTO_KW@[7; 11) 5 AUTO_KW@[7; 11)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0011_unsafe_fn.txt b/crates/libsyntax2/tests/data/parser/inline/0011_unsafe_fn.txt
index 9e5dcafa6..3f9672f54 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0011_unsafe_fn.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0011_unsafe_fn.txt
@@ -1,5 +1,5 @@
1FILE@[0; 19) 1FILE@[0; 19)
2 FUNCTION@[0; 18) 2 FN_DEF@[0; 18)
3 UNSAFE_KW@[0; 6) 3 UNSAFE_KW@[0; 6)
4 WHITESPACE@[6; 7) 4 WHITESPACE@[6; 7)
5 FN_KW@[7; 9) 5 FN_KW@[7; 9)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0012_unsafe_extern_fn.txt b/crates/libsyntax2/tests/data/parser/inline/0012_unsafe_extern_fn.txt
index 7ed4d42c1..27c807aea 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0012_unsafe_extern_fn.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0012_unsafe_extern_fn.txt
@@ -1,5 +1,5 @@
1FILE@[0; 30) 1FILE@[0; 30)
2 FUNCTION@[0; 29) 2 FN_DEF@[0; 29)
3 UNSAFE_KW@[0; 6) 3 UNSAFE_KW@[0; 6)
4 WHITESPACE@[6; 7) 4 WHITESPACE@[6; 7)
5 ABI@[7; 17) 5 ABI@[7; 17)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0013_unsafe_block_in_mod.txt b/crates/libsyntax2/tests/data/parser/inline/0013_unsafe_block_in_mod.txt
index d1bcffe77..4cd9b579c 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0013_unsafe_block_in_mod.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0013_unsafe_block_in_mod.txt
@@ -1,5 +1,5 @@
1FILE@[0; 33) 1FILE@[0; 33)
2 FUNCTION@[0; 10) 2 FN_DEF@[0; 10)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
@@ -21,7 +21,7 @@ FILE@[0; 33)
21 WHITESPACE@[19; 20) 21 WHITESPACE@[19; 20)
22 R_CURLY@[20; 21) 22 R_CURLY@[20; 21)
23 WHITESPACE@[21; 22) 23 WHITESPACE@[21; 22)
24 FUNCTION@[22; 32) 24 FN_DEF@[22; 32)
25 FN_KW@[22; 24) 25 FN_KW@[22; 24)
26 WHITESPACE@[24; 25) 26 WHITESPACE@[24; 25)
27 NAME@[25; 28) 27 NAME@[25; 28)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0014_type_item_type_params.txt b/crates/libsyntax2/tests/data/parser/inline/0014_type_item_type_params.txt
index e39e57889..be4f7d17d 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0014_type_item_type_params.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0014_type_item_type_params.txt
@@ -1,5 +1,5 @@
1FILE@[0; 21) 1FILE@[0; 21)
2 TYPE_ITEM@[0; 20) 2 TYPE_DEF@[0; 20)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 11) 5 NAME@[5; 11)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0015_type_item.txt b/crates/libsyntax2/tests/data/parser/inline/0015_type_item.txt
index 964071aa1..a6c63b030 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0015_type_item.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0015_type_item.txt
@@ -1,5 +1,5 @@
1FILE@[0; 16) 1FILE@[0; 16)
2 TYPE_ITEM@[0; 15) 2 TYPE_DEF@[0; 15)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 8) 5 NAME@[5; 8)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0016_type_item_where_clause.txt b/crates/libsyntax2/tests/data/parser/inline/0016_type_item_where_clause.txt
index 2f3c52960..6df40a6e4 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0016_type_item_where_clause.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0016_type_item_where_clause.txt
@@ -1,5 +1,5 @@
1FILE@[0; 31) 1FILE@[0; 31)
2 TYPE_ITEM@[0; 30) 2 TYPE_DEF@[0; 30)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 8) 5 NAME@[5; 8)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0017_paren_type.txt b/crates/libsyntax2/tests/data/parser/inline/0017_paren_type.txt
index 1194fb02c..9858ff955 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0017_paren_type.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0017_paren_type.txt
@@ -1,5 +1,5 @@
1FILE@[0; 16) 1FILE@[0; 16)
2 TYPE_ITEM@[0; 15) 2 TYPE_DEF@[0; 15)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0018_unit_type.txt b/crates/libsyntax2/tests/data/parser/inline/0018_unit_type.txt
index e52af7b1e..83e06de45 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0018_unit_type.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0018_unit_type.txt
@@ -1,5 +1,5 @@
1FILE@[0; 13) 1FILE@[0; 13)
2 TYPE_ITEM@[0; 12) 2 TYPE_DEF@[0; 12)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0019_singleton_tuple_type.txt b/crates/libsyntax2/tests/data/parser/inline/0019_singleton_tuple_type.txt
index 7b8e06c25..662fa4fd8 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0019_singleton_tuple_type.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0019_singleton_tuple_type.txt
@@ -1,5 +1,5 @@
1FILE@[0; 17) 1FILE@[0; 17)
2 TYPE_ITEM@[0; 16) 2 TYPE_DEF@[0; 16)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0020_never_type.txt b/crates/libsyntax2/tests/data/parser/inline/0020_never_type.txt
index 89f8a9eea..3ce4f08a9 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0020_never_type.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0020_never_type.txt
@@ -1,5 +1,5 @@
1FILE@[0; 16) 1FILE@[0; 16)
2 TYPE_ITEM@[0; 15) 2 TYPE_DEF@[0; 15)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 10) 5 NAME@[5; 10)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0021_pointer_type_no_mutability.txt b/crates/libsyntax2/tests/data/parser/inline/0021_pointer_type_no_mutability.txt
index d86fc6388..7bbb18a7f 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0021_pointer_type_no_mutability.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0021_pointer_type_no_mutability.txt
@@ -1,5 +1,5 @@
1FILE@[0; 14) 1FILE@[0; 14)
2 TYPE_ITEM@[0; 13) 2 TYPE_DEF@[0; 13)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0022_pointer_type_mut.txt b/crates/libsyntax2/tests/data/parser/inline/0022_pointer_type_mut.txt
index fbeba506e..169e2b922 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0022_pointer_type_mut.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0022_pointer_type_mut.txt
@@ -1,5 +1,5 @@
1FILE@[0; 36) 1FILE@[0; 36)
2 TYPE_ITEM@[0; 17) 2 TYPE_DEF@[0; 17)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
@@ -16,7 +16,7 @@ FILE@[0; 36)
16 R_PAREN@[15; 16) 16 R_PAREN@[15; 16)
17 SEMI@[16; 17) 17 SEMI@[16; 17)
18 WHITESPACE@[17; 18) 18 WHITESPACE@[17; 18)
19 TYPE_ITEM@[18; 35) 19 TYPE_DEF@[18; 35)
20 TYPE_KW@[18; 22) 20 TYPE_KW@[18; 22)
21 WHITESPACE@[22; 23) 21 WHITESPACE@[22; 23)
22 NAME@[23; 24) 22 NAME@[23; 24)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0023_array_type_missing_semi.txt b/crates/libsyntax2/tests/data/parser/inline/0023_array_type_missing_semi.txt
index 4d90d52c7..140ff1320 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0023_array_type_missing_semi.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0023_array_type_missing_semi.txt
@@ -1,5 +1,5 @@
1FILE@[0; 18) 1FILE@[0; 18)
2 TYPE_ITEM@[0; 12) 2 TYPE_DEF@[0; 12)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0024_array_type.txt b/crates/libsyntax2/tests/data/parser/inline/0024_array_type.txt
index 5a6b76904..835a0dba8 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0024_array_type.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0024_array_type.txt
@@ -1,5 +1,5 @@
1FILE@[0; 19) 1FILE@[0; 19)
2 TYPE_ITEM@[0; 18) 2 TYPE_DEF@[0; 18)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0025_slice_type.txt b/crates/libsyntax2/tests/data/parser/inline/0025_slice_type.txt
index 52508cda4..83cf530c3 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0025_slice_type.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0025_slice_type.txt
@@ -1,5 +1,5 @@
1FILE@[0; 15) 1FILE@[0; 15)
2 TYPE_ITEM@[0; 14) 2 TYPE_DEF@[0; 14)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0026_reference_type;.txt b/crates/libsyntax2/tests/data/parser/inline/0026_reference_type;.txt
index b6bd6a48c..02c5aa26c 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0026_reference_type;.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0026_reference_type;.txt
@@ -1,5 +1,5 @@
1FILE@[0; 54) 1FILE@[0; 54)
2 TYPE_ITEM@[0; 13) 2 TYPE_DEF@[0; 13)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
@@ -14,7 +14,7 @@ FILE@[0; 54)
14 R_PAREN@[11; 12) 14 R_PAREN@[11; 12)
15 SEMI@[12; 13) 15 SEMI@[12; 13)
16 WHITESPACE@[13; 14) 16 WHITESPACE@[13; 14)
17 TYPE_ITEM@[14; 35) 17 TYPE_DEF@[14; 35)
18 TYPE_KW@[14; 18) 18 TYPE_KW@[14; 18)
19 WHITESPACE@[18; 19) 19 WHITESPACE@[18; 19)
20 NAME@[19; 20) 20 NAME@[19; 20)
@@ -31,7 +31,7 @@ FILE@[0; 54)
31 R_PAREN@[33; 34) 31 R_PAREN@[33; 34)
32 SEMI@[34; 35) 32 SEMI@[34; 35)
33 WHITESPACE@[35; 36) 33 WHITESPACE@[35; 36)
34 TYPE_ITEM@[36; 53) 34 TYPE_DEF@[36; 53)
35 TYPE_KW@[36; 40) 35 TYPE_KW@[36; 40)
36 WHITESPACE@[40; 41) 36 WHITESPACE@[40; 41)
37 NAME@[41; 42) 37 NAME@[41; 42)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0027_placeholder_type.txt b/crates/libsyntax2/tests/data/parser/inline/0027_placeholder_type.txt
index 5e6e6c397..9583c94b6 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0027_placeholder_type.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0027_placeholder_type.txt
@@ -1,5 +1,5 @@
1FILE@[0; 22) 1FILE@[0; 22)
2 TYPE_ITEM@[0; 21) 2 TYPE_DEF@[0; 21)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 16) 5 NAME@[5; 16)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0028_fn_pointer_type.txt b/crates/libsyntax2/tests/data/parser/inline/0028_fn_pointer_type.txt
index 31818365a..1e0526531 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0028_fn_pointer_type.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0028_fn_pointer_type.txt
@@ -1,5 +1,5 @@
1FILE@[0; 70) 1FILE@[0; 70)
2 TYPE_ITEM@[0; 14) 2 TYPE_DEF@[0; 14)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
@@ -14,7 +14,7 @@ FILE@[0; 70)
14 R_PAREN@[12; 13) 14 R_PAREN@[12; 13)
15 SEMI@[13; 14) 15 SEMI@[13; 14)
16 WHITESPACE@[14; 15) 16 WHITESPACE@[14; 15)
17 TYPE_ITEM@[15; 36) 17 TYPE_DEF@[15; 36)
18 TYPE_KW@[15; 19) 18 TYPE_KW@[15; 19)
19 WHITESPACE@[19; 20) 19 WHITESPACE@[19; 20)
20 NAME@[20; 21) 20 NAME@[20; 21)
@@ -31,7 +31,7 @@ FILE@[0; 70)
31 R_PAREN@[34; 35) 31 R_PAREN@[34; 35)
32 SEMI@[35; 36) 32 SEMI@[35; 36)
33 WHITESPACE@[36; 37) 33 WHITESPACE@[36; 37)
34 TYPE_ITEM@[37; 69) 34 TYPE_DEF@[37; 69)
35 TYPE_KW@[37; 41) 35 TYPE_KW@[37; 41)
36 WHITESPACE@[41; 42) 36 WHITESPACE@[41; 42)
37 NAME@[42; 43) 37 NAME@[42; 43)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0029_fn_pointer_type_missing_fn.txt b/crates/libsyntax2/tests/data/parser/inline/0029_fn_pointer_type_missing_fn.txt
index ddec1b866..5c83654cc 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0029_fn_pointer_type_missing_fn.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0029_fn_pointer_type_missing_fn.txt
@@ -1,5 +1,5 @@
1FILE@[0; 20) 1FILE@[0; 20)
2 TYPE_ITEM@[0; 15) 2 TYPE_DEF@[0; 15)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0030_fn_pointer_type_with_ret.txt b/crates/libsyntax2/tests/data/parser/inline/0030_fn_pointer_type_with_ret.txt
index 447b1ed3f..5ac307fd0 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0030_fn_pointer_type_with_ret.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0030_fn_pointer_type_with_ret.txt
@@ -1,5 +1,5 @@
1FILE@[0; 21) 1FILE@[0; 21)
2 TYPE_ITEM@[0; 20) 2 TYPE_DEF@[0; 20)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0031_for_type.txt b/crates/libsyntax2/tests/data/parser/inline/0031_for_type.txt
index 65753a702..a46356777 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0031_for_type.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0031_for_type.txt
@@ -1,5 +1,5 @@
1FILE@[0; 29) 1FILE@[0; 29)
2 TYPE_ITEM@[0; 28) 2 TYPE_DEF@[0; 28)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0032_path_type.txt b/crates/libsyntax2/tests/data/parser/inline/0032_path_type.txt
index d9085118a..b07bea075 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0032_path_type.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0032_path_type.txt
@@ -1,5 +1,5 @@
1FILE@[0; 71) 1FILE@[0; 71)
2 TYPE_ITEM@[0; 13) 2 TYPE_DEF@[0; 13)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
@@ -14,7 +14,7 @@ FILE@[0; 71)
14 IDENT@[9; 12) "Foo" 14 IDENT@[9; 12) "Foo"
15 SEMI@[12; 13) 15 SEMI@[12; 13)
16 WHITESPACE@[13; 14) 16 WHITESPACE@[13; 14)
17 TYPE_ITEM@[14; 29) 17 TYPE_DEF@[14; 29)
18 TYPE_KW@[14; 18) 18 TYPE_KW@[14; 18)
19 WHITESPACE@[18; 19) 19 WHITESPACE@[18; 19)
20 NAME@[19; 20) 20 NAME@[19; 20)
@@ -30,7 +30,7 @@ FILE@[0; 71)
30 IDENT@[25; 28) "Foo" 30 IDENT@[25; 28) "Foo"
31 SEMI@[28; 29) 31 SEMI@[28; 29)
32 WHITESPACE@[29; 30) 32 WHITESPACE@[29; 30)
33 TYPE_ITEM@[30; 49) 33 TYPE_DEF@[30; 49)
34 TYPE_KW@[30; 34) 34 TYPE_KW@[30; 34)
35 WHITESPACE@[34; 35) 35 WHITESPACE@[34; 35)
36 NAME@[35; 36) 36 NAME@[35; 36)
@@ -49,7 +49,7 @@ FILE@[0; 71)
49 IDENT@[45; 48) "Foo" 49 IDENT@[45; 48) "Foo"
50 SEMI@[48; 49) 50 SEMI@[48; 49)
51 WHITESPACE@[49; 50) 51 WHITESPACE@[49; 50)
52 TYPE_ITEM@[50; 70) 52 TYPE_DEF@[50; 70)
53 TYPE_KW@[50; 54) 53 TYPE_KW@[50; 54)
54 WHITESPACE@[54; 55) 54 WHITESPACE@[54; 55)
55 NAME@[55; 56) 55 NAME@[55; 56)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0034_bind_pat.txt b/crates/libsyntax2/tests/data/parser/inline/0034_bind_pat.txt
index e8e4e4c2b..54396c247 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0034_bind_pat.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0034_bind_pat.txt
@@ -1,5 +1,5 @@
1FILE@[0; 146) 1FILE@[0; 146)
2 FUNCTION@[0; 145) 2 FN_DEF@[0; 145)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 7) 5 NAME@[3; 7)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0035_ref_pat.txt b/crates/libsyntax2/tests/data/parser/inline/0035_ref_pat.txt
index 6fbffd8b7..ef2e2e748 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0035_ref_pat.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0035_ref_pat.txt
@@ -1,5 +1,5 @@
1FILE@[0; 52) 1FILE@[0; 52)
2 FUNCTION@[0; 51) 2 FN_DEF@[0; 51)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 7) 5 NAME@[3; 7)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0036_placeholder_pat.txt b/crates/libsyntax2/tests/data/parser/inline/0036_placeholder_pat.txt
index 8c63cdfae..7cf2b43a7 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0036_placeholder_pat.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0036_placeholder_pat.txt
@@ -1,5 +1,5 @@
1FILE@[0; 26) 1FILE@[0; 26)
2 FUNCTION@[0; 25) 2 FN_DEF@[0; 25)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 7) 5 NAME@[3; 7)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0037_crate_visibility.txt b/crates/libsyntax2/tests/data/parser/inline/0037_crate_visibility.txt
index 835832620..fb6c2d7cf 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0037_crate_visibility.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0037_crate_visibility.txt
@@ -1,5 +1,5 @@
1FILE@[0; 81) 1FILE@[0; 81)
2 STRUCT@[0; 20) 2 STRUCT_DEF@[0; 20)
3 VISIBILITY@[0; 10) 3 VISIBILITY@[0; 10)
4 PUB_KW@[0; 3) 4 PUB_KW@[0; 3)
5 L_PAREN@[3; 4) 5 L_PAREN@[3; 4)
@@ -12,7 +12,7 @@ FILE@[0; 81)
12 IDENT@[18; 19) "S" 12 IDENT@[18; 19) "S"
13 SEMI@[19; 20) 13 SEMI@[19; 20)
14 WHITESPACE@[20; 21) 14 WHITESPACE@[20; 21)
15 STRUCT@[21; 40) 15 STRUCT_DEF@[21; 40)
16 VISIBILITY@[21; 30) 16 VISIBILITY@[21; 30)
17 PUB_KW@[21; 24) 17 PUB_KW@[21; 24)
18 L_PAREN@[24; 25) 18 L_PAREN@[24; 25)
@@ -25,7 +25,7 @@ FILE@[0; 81)
25 IDENT@[38; 39) "S" 25 IDENT@[38; 39) "S"
26 SEMI@[39; 40) 26 SEMI@[39; 40)
27 WHITESPACE@[40; 41) 27 WHITESPACE@[40; 41)
28 STRUCT@[41; 60) 28 STRUCT_DEF@[41; 60)
29 VISIBILITY@[41; 50) 29 VISIBILITY@[41; 50)
30 PUB_KW@[41; 44) 30 PUB_KW@[41; 44)
31 L_PAREN@[44; 45) 31 L_PAREN@[44; 45)
@@ -38,7 +38,7 @@ FILE@[0; 81)
38 IDENT@[58; 59) "S" 38 IDENT@[58; 59) "S"
39 SEMI@[59; 60) 39 SEMI@[59; 60)
40 WHITESPACE@[60; 61) 40 WHITESPACE@[60; 61)
41 STRUCT@[61; 80) 41 STRUCT_DEF@[61; 80)
42 VISIBILITY@[61; 70) 42 VISIBILITY@[61; 70)
43 PUB_KW@[61; 64) 43 PUB_KW@[61; 64)
44 L_PAREN@[64; 65) 44 L_PAREN@[64; 65)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0038_function_ret_type.txt b/crates/libsyntax2/tests/data/parser/inline/0038_function_ret_type.txt
index 58583eefe..66e3e1bba 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0038_function_ret_type.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0038_function_ret_type.txt
@@ -1,5 +1,5 @@
1FILE@[0; 30) 1FILE@[0; 30)
2 FUNCTION@[0; 11) 2 FN_DEF@[0; 11)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
@@ -12,7 +12,7 @@ FILE@[0; 30)
12 L_CURLY@[9; 10) 12 L_CURLY@[9; 10)
13 R_CURLY@[10; 11) 13 R_CURLY@[10; 11)
14 WHITESPACE@[11; 12) 14 WHITESPACE@[11; 12)
15 FUNCTION@[12; 29) 15 FN_DEF@[12; 29)
16 FN_KW@[12; 14) 16 FN_KW@[12; 14)
17 WHITESPACE@[14; 15) 17 WHITESPACE@[14; 15)
18 NAME@[15; 18) 18 NAME@[15; 18)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0039_path_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0039_path_expr.txt
index 8b505774f..876dd068c 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0039_path_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0039_path_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 91) 1FILE@[0; 91)
2 FUNCTION@[0; 90) 2 FN_DEF@[0; 90)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0040_expr_literals.txt b/crates/libsyntax2/tests/data/parser/inline/0040_expr_literals.txt
index 192b62211..78cd614a7 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0040_expr_literals.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0040_expr_literals.txt
@@ -1,5 +1,5 @@
1FILE@[0; 189) 1FILE@[0; 189)
2 FUNCTION@[0; 188) 2 FN_DEF@[0; 188)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0041_type_param_bounds.txt b/crates/libsyntax2/tests/data/parser/inline/0041_type_param_bounds.txt
index a7ac4567c..ea05ad0a6 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0041_type_param_bounds.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0041_type_param_bounds.txt
@@ -1,5 +1,5 @@
1FILE@[0; 35) 1FILE@[0; 35)
2 STRUCT@[0; 34) 2 STRUCT_DEF@[0; 34)
3 STRUCT_KW@[0; 6) 3 STRUCT_KW@[0; 6)
4 WHITESPACE@[6; 7) 4 WHITESPACE@[6; 7)
5 NAME@[7; 8) 5 NAME@[7; 8)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0042_type_param_default.txt b/crates/libsyntax2/tests/data/parser/inline/0042_type_param_default.txt
index d6d9f8712..0792dbfc0 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0042_type_param_default.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0042_type_param_default.txt
@@ -1,5 +1,5 @@
1FILE@[0; 19) 1FILE@[0; 19)
2 STRUCT@[0; 18) 2 STRUCT_DEF@[0; 18)
3 STRUCT_KW@[0; 6) 3 STRUCT_KW@[0; 6)
4 WHITESPACE@[6; 7) 4 WHITESPACE@[6; 7)
5 NAME@[7; 8) 5 NAME@[7; 8)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0043_call_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0043_call_expr.txt
index f4789d2d9..59b920560 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0043_call_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0043_call_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 57) 1FILE@[0; 57)
2 FUNCTION@[0; 56) 2 FN_DEF@[0; 56)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0044_ref_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0044_ref_expr.txt
index 05f6c015a..f9e0260d0 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0044_ref_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0044_ref_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 52) 1FILE@[0; 52)
2 FUNCTION@[0; 51) 2 FN_DEF@[0; 51)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0045_block.txt b/crates/libsyntax2/tests/data/parser/inline/0045_block.txt
index 8519101c3..14e43f481 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0045_block.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0045_block.txt
@@ -1,5 +1,5 @@
1FILE@[0; 65) 1FILE@[0; 65)
2 FUNCTION@[0; 9) 2 FN_DEF@[0; 9)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 4) 5 NAME@[3; 4)
@@ -12,7 +12,7 @@ FILE@[0; 65)
12 L_CURLY@[7; 8) 12 L_CURLY@[7; 8)
13 R_CURLY@[8; 9) 13 R_CURLY@[8; 9)
14 WHITESPACE@[9; 10) 14 WHITESPACE@[9; 10)
15 FUNCTION@[10; 31) 15 FN_DEF@[10; 31)
16 FN_KW@[10; 12) 16 FN_KW@[10; 12)
17 WHITESPACE@[12; 13) 17 WHITESPACE@[12; 13)
18 NAME@[13; 14) 18 NAME@[13; 14)
@@ -38,7 +38,7 @@ FILE@[0; 65)
38 WHITESPACE@[29; 30) 38 WHITESPACE@[29; 30)
39 R_CURLY@[30; 31) 39 R_CURLY@[30; 31)
40 WHITESPACE@[31; 32) 40 WHITESPACE@[31; 32)
41 FUNCTION@[32; 48) 41 FN_DEF@[32; 48)
42 FN_KW@[32; 34) 42 FN_KW@[32; 34)
43 WHITESPACE@[34; 35) 43 WHITESPACE@[34; 35)
44 NAME@[35; 36) 44 NAME@[35; 36)
@@ -62,7 +62,7 @@ FILE@[0; 65)
62 WHITESPACE@[46; 47) 62 WHITESPACE@[46; 47)
63 R_CURLY@[47; 48) 63 R_CURLY@[47; 48)
64 WHITESPACE@[48; 49) 64 WHITESPACE@[48; 49)
65 FUNCTION@[49; 64) 65 FN_DEF@[49; 64)
66 FN_KW@[49; 51) 66 FN_KW@[49; 51)
67 WHITESPACE@[51; 52) 67 WHITESPACE@[51; 52)
68 NAME@[52; 53) 68 NAME@[52; 53)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0050_let_stmt;.txt b/crates/libsyntax2/tests/data/parser/inline/0050_let_stmt;.txt
index 44e357092..fa7709151 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0050_let_stmt;.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0050_let_stmt;.txt
@@ -1,5 +1,5 @@
1FILE@[0; 77) 1FILE@[0; 77)
2 FUNCTION@[0; 76) 2 FN_DEF@[0; 76)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0051_method_call_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0051_method_call_expr.txt
index aafb2d5f1..9edfabc64 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0051_method_call_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0051_method_call_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 49) 1FILE@[0; 49)
2 FUNCTION@[0; 48) 2 FN_DEF@[0; 48)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0052_field_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0052_field_expr.txt
index 213884f90..465f7abba 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0052_field_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0052_field_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 37) 1FILE@[0; 37)
2 FUNCTION@[0; 36) 2 FN_DEF@[0; 36)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0053_block_items.txt b/crates/libsyntax2/tests/data/parser/inline/0053_block_items.txt
index c5498532b..add5eab89 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0053_block_items.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0053_block_items.txt
@@ -1,5 +1,5 @@
1FILE@[0; 21) 1FILE@[0; 21)
2 FUNCTION@[0; 20) 2 FN_DEF@[0; 20)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 4) 5 NAME@[3; 4)
@@ -11,7 +11,7 @@ FILE@[0; 21)
11 BLOCK_EXPR@[7; 20) 11 BLOCK_EXPR@[7; 20)
12 L_CURLY@[7; 8) 12 L_CURLY@[7; 8)
13 WHITESPACE@[8; 9) 13 WHITESPACE@[8; 9)
14 FUNCTION@[9; 18) 14 FN_DEF@[9; 18)
15 FN_KW@[9; 11) 15 FN_KW@[9; 11)
16 WHITESPACE@[11; 12) 16 WHITESPACE@[11; 12)
17 NAME@[12; 13) 17 NAME@[12; 13)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0054_impl_item_items.txt b/crates/libsyntax2/tests/data/parser/inline/0054_impl_item_items.txt
index 739ecbbcd..0b75f6466 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0054_impl_item_items.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0054_impl_item_items.txt
@@ -10,7 +10,7 @@ FILE@[0; 89)
10 WHITESPACE@[6; 7) 10 WHITESPACE@[6; 7)
11 L_CURLY@[7; 8) 11 L_CURLY@[7; 8)
12 WHITESPACE@[8; 13) 12 WHITESPACE@[8; 13)
13 TYPE_ITEM@[13; 26) 13 TYPE_DEF@[13; 26)
14 TYPE_KW@[13; 17) 14 TYPE_KW@[13; 17)
15 WHITESPACE@[17; 18) 15 WHITESPACE@[17; 18)
16 NAME@[18; 19) 16 NAME@[18; 19)
@@ -25,7 +25,7 @@ FILE@[0; 89)
25 IDENT@[22; 25) "i32" 25 IDENT@[22; 25) "i32"
26 SEMI@[25; 26) 26 SEMI@[25; 26)
27 WHITESPACE@[26; 31) 27 WHITESPACE@[26; 31)
28 CONST_ITEM@[31; 49) 28 CONST_DEF@[31; 49)
29 CONST_KW@[31; 36) 29 CONST_KW@[31; 36)
30 WHITESPACE@[36; 37) 30 WHITESPACE@[36; 37)
31 NAME@[37; 38) 31 NAME@[37; 38)
@@ -44,7 +44,7 @@ FILE@[0; 89)
44 INT_NUMBER@[46; 48) "92" 44 INT_NUMBER@[46; 48) "92"
45 SEMI@[48; 49) 45 SEMI@[48; 49)
46 WHITESPACE@[49; 54) 46 WHITESPACE@[49; 54)
47 FUNCTION@[54; 65) 47 FN_DEF@[54; 65)
48 FN_KW@[54; 56) 48 FN_KW@[54; 56)
49 WHITESPACE@[56; 57) 49 WHITESPACE@[56; 57)
50 NAME@[57; 60) 50 NAME@[57; 60)
@@ -57,7 +57,7 @@ FILE@[0; 89)
57 L_CURLY@[63; 64) 57 L_CURLY@[63; 64)
58 R_CURLY@[64; 65) 58 R_CURLY@[64; 65)
59 WHITESPACE@[65; 70) 59 WHITESPACE@[65; 70)
60 FUNCTION@[70; 86) 60 FN_DEF@[70; 86)
61 FN_KW@[70; 72) 61 FN_KW@[70; 72)
62 WHITESPACE@[72; 73) 62 WHITESPACE@[72; 73)
63 NAME@[73; 76) 63 NAME@[73; 76)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0055_self_param.txt b/crates/libsyntax2/tests/data/parser/inline/0055_self_param.txt
index 1275fb8b1..8b420909f 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0055_self_param.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0055_self_param.txt
@@ -10,7 +10,7 @@ FILE@[0; 106)
10 WHITESPACE@[6; 7) 10 WHITESPACE@[6; 7)
11 L_CURLY@[7; 8) 11 L_CURLY@[7; 8)
12 WHITESPACE@[8; 13) 12 WHITESPACE@[8; 13)
13 FUNCTION@[13; 26) 13 FN_DEF@[13; 26)
14 FN_KW@[13; 15) 14 FN_KW@[13; 15)
15 WHITESPACE@[15; 16) 15 WHITESPACE@[15; 16)
16 NAME@[16; 17) 16 NAME@[16; 17)
@@ -25,7 +25,7 @@ FILE@[0; 106)
25 L_CURLY@[24; 25) 25 L_CURLY@[24; 25)
26 R_CURLY@[25; 26) 26 R_CURLY@[25; 26)
27 WHITESPACE@[26; 31) 27 WHITESPACE@[26; 31)
28 FUNCTION@[31; 46) 28 FN_DEF@[31; 46)
29 FN_KW@[31; 33) 29 FN_KW@[31; 33)
30 WHITESPACE@[33; 34) 30 WHITESPACE@[33; 34)
31 NAME@[34; 35) 31 NAME@[34; 35)
@@ -42,7 +42,7 @@ FILE@[0; 106)
42 L_CURLY@[44; 45) 42 L_CURLY@[44; 45)
43 R_CURLY@[45; 46) 43 R_CURLY@[45; 46)
44 WHITESPACE@[46; 51) 44 WHITESPACE@[46; 51)
45 FUNCTION@[51; 69) 45 FN_DEF@[51; 69)
46 FN_KW@[51; 53) 46 FN_KW@[51; 53)
47 WHITESPACE@[53; 54) 47 WHITESPACE@[53; 54)
48 NAME@[54; 55) 48 NAME@[54; 55)
@@ -61,7 +61,7 @@ FILE@[0; 106)
61 L_CURLY@[67; 68) 61 L_CURLY@[67; 68)
62 R_CURLY@[68; 69) 62 R_CURLY@[68; 69)
63 WHITESPACE@[69; 74) 63 WHITESPACE@[69; 74)
64 FUNCTION@[74; 103) 64 FN_DEF@[74; 103)
65 FN_KW@[74; 76) 65 FN_KW@[74; 76)
66 WHITESPACE@[76; 77) 66 WHITESPACE@[76; 77)
67 NAME@[77; 78) 67 NAME@[77; 78)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0056_trait_item.txt b/crates/libsyntax2/tests/data/parser/inline/0056_trait_item.txt
index b9dc6a0fd..40749d12a 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0056_trait_item.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0056_trait_item.txt
@@ -1,5 +1,5 @@
1FILE@[0; 42) 1FILE@[0; 42)
2 TRAIT@[0; 41) 2 TRAIT_DEF@[0; 41)
3 TRAIT_KW@[0; 5) 3 TRAIT_KW@[0; 5)
4 WHITESPACE@[5; 6) 4 WHITESPACE@[5; 6)
5 NAME@[6; 7) 5 NAME@[6; 7)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0057_auto_trait.txt b/crates/libsyntax2/tests/data/parser/inline/0057_auto_trait.txt
index c7679b643..738661e3c 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0057_auto_trait.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0057_auto_trait.txt
@@ -1,5 +1,5 @@
1FILE@[0; 16) 1FILE@[0; 16)
2 TRAIT@[0; 15) 2 TRAIT_DEF@[0; 15)
3 AUTO_KW@[0; 4) 3 AUTO_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 TRAIT_KW@[5; 10) 5 TRAIT_KW@[5; 10)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0058_type_arg.txt b/crates/libsyntax2/tests/data/parser/inline/0058_type_arg.txt
index f69ce4738..297456ec4 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0058_type_arg.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0058_type_arg.txt
@@ -1,5 +1,5 @@
1FILE@[0; 35) 1FILE@[0; 35)
2 TYPE_ITEM@[0; 34) 2 TYPE_DEF@[0; 34)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0059_function_where_clause.txt b/crates/libsyntax2/tests/data/parser/inline/0059_function_where_clause.txt
index 065b0fd21..36822ac05 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0059_function_where_clause.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0059_function_where_clause.txt
@@ -1,5 +1,5 @@
1FILE@[0; 29) 1FILE@[0; 29)
2 FUNCTION@[0; 28) 2 FN_DEF@[0; 28)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0060_function_type_params.txt b/crates/libsyntax2/tests/data/parser/inline/0060_function_type_params.txt
index 8809ebc04..c03553c0d 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0060_function_type_params.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0060_function_type_params.txt
@@ -1,5 +1,5 @@
1FILE@[0; 28) 1FILE@[0; 28)
2 FUNCTION@[0; 27) 2 FN_DEF@[0; 27)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0061_struct_lit.txt b/crates/libsyntax2/tests/data/parser/inline/0061_struct_lit.txt
index 1d048c5ba..2eb04a3c7 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0061_struct_lit.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0061_struct_lit.txt
@@ -1,5 +1,5 @@
1FILE@[0; 86) 1FILE@[0; 86)
2 FUNCTION@[0; 85) 2 FN_DEF@[0; 85)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0063_impl_trait_type.txt b/crates/libsyntax2/tests/data/parser/inline/0063_impl_trait_type.txt
index bbebf1086..aa9981ba6 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0063_impl_trait_type.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0063_impl_trait_type.txt
@@ -1,5 +1,5 @@
1FILE@[0; 43) 1FILE@[0; 43)
2 TYPE_ITEM@[0; 42) 2 TYPE_DEF@[0; 42)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0063_lambda_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0063_lambda_expr.txt
index 122a99e52..98db37cb6 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0063_lambda_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0063_lambda_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 74) 1FILE@[0; 74)
2 FUNCTION@[0; 74) 2 FN_DEF@[0; 74)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 NAME@[2; 6) 4 NAME@[2; 6)
5 WHITESPACE@[2; 3) 5 WHITESPACE@[2; 3)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0064_param_list.txt b/crates/libsyntax2/tests/data/parser/inline/0064_param_list.txt
index 14db495b9..daad3dc73 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0064_param_list.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0064_param_list.txt
@@ -1,5 +1,5 @@
1FILE@[0; 67) 1FILE@[0; 67)
2 FUNCTION@[0; 9) 2 FN_DEF@[0; 9)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 4) 5 NAME@[3; 4)
@@ -12,7 +12,7 @@ FILE@[0; 67)
12 L_CURLY@[7; 8) 12 L_CURLY@[7; 8)
13 R_CURLY@[8; 9) 13 R_CURLY@[8; 9)
14 WHITESPACE@[9; 10) 14 WHITESPACE@[9; 10)
15 FUNCTION@[10; 25) 15 FN_DEF@[10; 25)
16 FN_KW@[10; 12) 16 FN_KW@[10; 12)
17 WHITESPACE@[12; 13) 17 WHITESPACE@[12; 13)
18 NAME@[13; 14) 18 NAME@[13; 14)
@@ -36,7 +36,7 @@ FILE@[0; 67)
36 L_CURLY@[23; 24) 36 L_CURLY@[23; 24)
37 R_CURLY@[24; 25) 37 R_CURLY@[24; 25)
38 WHITESPACE@[25; 26) 38 WHITESPACE@[25; 26)
39 FUNCTION@[26; 43) 39 FN_DEF@[26; 43)
40 FN_KW@[26; 28) 40 FN_KW@[26; 28)
41 WHITESPACE@[28; 29) 41 WHITESPACE@[28; 29)
42 NAME@[29; 30) 42 NAME@[29; 30)
@@ -62,7 +62,7 @@ FILE@[0; 67)
62 L_CURLY@[41; 42) 62 L_CURLY@[41; 42)
63 R_CURLY@[42; 43) 63 R_CURLY@[42; 43)
64 WHITESPACE@[43; 44) 64 WHITESPACE@[43; 44)
65 FUNCTION@[44; 66) 65 FN_DEF@[44; 66)
66 FN_KW@[44; 46) 66 FN_KW@[44; 46)
67 WHITESPACE@[46; 47) 67 WHITESPACE@[46; 47)
68 NAME@[47; 48) 68 NAME@[47; 48)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0065_if_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0065_if_expr.txt
index 6ed53264a..f6895b4f7 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0065_if_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0065_if_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 107) 1FILE@[0; 107)
2 FUNCTION@[0; 106) 2 FN_DEF@[0; 106)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0066_lambda_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0066_lambda_expr.txt
index 6d9aeb331..a5acd9d12 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0066_lambda_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0066_lambda_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 79) 1FILE@[0; 79)
2 FUNCTION@[0; 78) 2 FN_DEF@[0; 78)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0067_block_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0067_block_expr.txt
index 981f39e6e..688466a13 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0067_block_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0067_block_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 36) 1FILE@[0; 36)
2 FUNCTION@[0; 35) 2 FN_DEF@[0; 35)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0068_pub_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0068_pub_expr.txt
index 92e58938b..22d30cf32 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0068_pub_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0068_pub_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 29) 1FILE@[0; 29)
2 FUNCTION@[0; 20) 2 FN_DEF@[0; 20)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0068_return_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0068_return_expr.txt
index 4e4ec85b6..fa999bfca 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0068_return_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0068_return_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 40) 1FILE@[0; 40)
2 FUNCTION@[0; 39) 2 FN_DEF@[0; 39)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0069_match_arm.txt b/crates/libsyntax2/tests/data/parser/inline/0069_match_arm.txt
index 3377e8342..a3061cfa2 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0069_match_arm.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0069_match_arm.txt
@@ -1,5 +1,5 @@
1FILE@[0; 78) 1FILE@[0; 78)
2 FUNCTION@[0; 77) 2 FN_DEF@[0; 77)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0070_match_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0070_match_expr.txt
index f9ba54486..a722766d0 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0070_match_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0070_match_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 47) 1FILE@[0; 47)
2 FUNCTION@[0; 46) 2 FN_DEF@[0; 46)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0071_tuple_pat_fields.txt b/crates/libsyntax2/tests/data/parser/inline/0071_tuple_pat_fields.txt
index f54835277..76df989fc 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0071_tuple_pat_fields.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0071_tuple_pat_fields.txt
@@ -1,5 +1,5 @@
1FILE@[0; 97) 1FILE@[0; 97)
2 FUNCTION@[0; 96) 2 FN_DEF@[0; 96)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0072_path_part.txt b/crates/libsyntax2/tests/data/parser/inline/0072_path_part.txt
index 20da5de86..dabc64d2b 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0072_path_part.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0072_path_part.txt
@@ -1,5 +1,5 @@
1FILE@[0; 103) 1FILE@[0; 103)
2 FUNCTION@[0; 102) 2 FN_DEF@[0; 102)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0073_struct_pat_fields.txt b/crates/libsyntax2/tests/data/parser/inline/0073_struct_pat_fields.txt
index fc0d44f7a..9a0b6dbec 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0073_struct_pat_fields.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0073_struct_pat_fields.txt
@@ -1,5 +1,5 @@
1FILE@[0; 119) 1FILE@[0; 119)
2 FUNCTION@[0; 118) 2 FN_DEF@[0; 118)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0074_unary_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0074_unary_expr.txt
index e0b4ff964..4da473a7f 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0074_unary_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0074_unary_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 44) 1FILE@[0; 44)
2 FUNCTION@[0; 43) 2 FN_DEF@[0; 43)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0075_try_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0075_try_expr.txt
index f7b86f269..c97d671d2 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0075_try_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0075_try_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 21) 1FILE@[0; 21)
2 FUNCTION@[0; 20) 2 FN_DEF@[0; 20)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0076_cond.txt b/crates/libsyntax2/tests/data/parser/inline/0076_cond.txt
index 0cde88a90..2ee8fa78a 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0076_cond.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0076_cond.txt
@@ -1,5 +1,5 @@
1FILE@[0; 38) 1FILE@[0; 38)
2 FUNCTION@[0; 37) 2 FN_DEF@[0; 37)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0077_while_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0077_while_expr.txt
index 82e63fd46..45a0c92dd 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0077_while_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0077_while_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 70) 1FILE@[0; 70)
2 FUNCTION@[0; 69) 2 FN_DEF@[0; 69)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0078_mod_contents.txt b/crates/libsyntax2/tests/data/parser/inline/0078_mod_contents.txt
index 0c6b9a42a..c6be58e75 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0078_mod_contents.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0078_mod_contents.txt
@@ -1,5 +1,5 @@
1FILE@[0; 70) 1FILE@[0; 70)
2 FUNCTION@[0; 11) 2 FN_DEF@[0; 11)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
@@ -53,7 +53,7 @@ FILE@[0; 70)
53 L_CURLY@[57; 58) 53 L_CURLY@[57; 58)
54 R_CURLY@[58; 59) 54 R_CURLY@[58; 59)
55 WHITESPACE@[59; 60) 55 WHITESPACE@[59; 60)
56 STRUCT@[60; 69) 56 STRUCT_DEF@[60; 69)
57 STRUCT_KW@[60; 66) 57 STRUCT_KW@[60; 66)
58 WHITESPACE@[66; 67) 58 WHITESPACE@[66; 67)
59 NAME@[67; 68) 59 NAME@[67; 68)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0079_cast_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0079_cast_expr.txt
index 642557e15..b49926d22 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0079_cast_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0079_cast_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 28) 1FILE@[0; 28)
2 FUNCTION@[0; 27) 2 FN_DEF@[0; 27)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0080_tuple_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0080_tuple_expr.txt
index 728ba6ec7..d2b4051a3 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0080_tuple_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0080_tuple_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 40) 1FILE@[0; 40)
2 FUNCTION@[0; 39) 2 FN_DEF@[0; 39)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0081_index_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0081_index_expr.txt
index 80af4caed..9da850898 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0081_index_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0081_index_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 26) 1FILE@[0; 26)
2 FUNCTION@[0; 25) 2 FN_DEF@[0; 25)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0082_tuple_pat.txt b/crates/libsyntax2/tests/data/parser/inline/0082_tuple_pat.txt
index d8314b5d8..d47c712db 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0082_tuple_pat.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0082_tuple_pat.txt
@@ -1,5 +1,5 @@
1FILE@[0; 39) 1FILE@[0; 39)
2 FUNCTION@[0; 38) 2 FN_DEF@[0; 38)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 7) 5 NAME@[3; 7)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0083_postfix_range.txt b/crates/libsyntax2/tests/data/parser/inline/0083_postfix_range.txt
index bf9b2c695..312f8df1e 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0083_postfix_range.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0083_postfix_range.txt
@@ -1,5 +1,5 @@
1FILE@[0; 26) 1FILE@[0; 26)
2 FUNCTION@[0; 25) 2 FN_DEF@[0; 25)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0084_loop_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0084_loop_expr.txt
index 5e0de55d4..eba105e64 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0084_loop_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0084_loop_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 26) 1FILE@[0; 26)
2 FUNCTION@[0; 25) 2 FN_DEF@[0; 25)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0085_for_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0085_for_expr.txt
index 3a378cfcf..c140b7225 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0085_for_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0085_for_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 33) 1FILE@[0; 33)
2 FUNCTION@[0; 32) 2 FN_DEF@[0; 32)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0085_match_arms_commas.txt b/crates/libsyntax2/tests/data/parser/inline/0085_match_arms_commas.txt
index 5465a3797..fb8f36ec9 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0085_match_arms_commas.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0085_match_arms_commas.txt
@@ -1,5 +1,5 @@
1FILE@[0; 83) 1FILE@[0; 83)
2 FUNCTION@[0; 82) 2 FN_DEF@[0; 82)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0086_array_expr.txt b/crates/libsyntax2/tests/data/parser/inline/0086_array_expr.txt
index 9a5f56edf..e3b9c0dcd 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0086_array_expr.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0086_array_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 55) 1FILE@[0; 55)
2 FUNCTION@[0; 54) 2 FN_DEF@[0; 54)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0086_no_semi_after_block.txt b/crates/libsyntax2/tests/data/parser/inline/0086_no_semi_after_block.txt
index d19a270ac..3cb9eb11d 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0086_no_semi_after_block.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0086_no_semi_after_block.txt
@@ -1,5 +1,5 @@
1FILE@[0; 107) 1FILE@[0; 107)
2 FUNCTION@[0; 106) 2 FN_DEF@[0; 106)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0087_stmt_postfix_expr_ambiguity.txt b/crates/libsyntax2/tests/data/parser/inline/0087_stmt_postfix_expr_ambiguity.txt
index e83b6d183..17351c87c 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0087_stmt_postfix_expr_ambiguity.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0087_stmt_postfix_expr_ambiguity.txt
@@ -1,5 +1,5 @@
1FILE@[0; 84) 1FILE@[0; 84)
2 FUNCTION@[0; 83) 2 FN_DEF@[0; 83)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0088_stmt_bin_expr_ambiguity.txt b/crates/libsyntax2/tests/data/parser/inline/0088_stmt_bin_expr_ambiguity.txt
index df4c20b0e..51db54f15 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0088_stmt_bin_expr_ambiguity.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0088_stmt_bin_expr_ambiguity.txt
@@ -1,5 +1,5 @@
1FILE@[0; 46) 1FILE@[0; 46)
2 FUNCTION@[0; 45) 2 FN_DEF@[0; 45)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0089_slice_pat.txt b/crates/libsyntax2/tests/data/parser/inline/0089_slice_pat.txt
index 8379df33b..8c3aaf096 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0089_slice_pat.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0089_slice_pat.txt
@@ -1,5 +1,5 @@
1FILE@[0; 39) 1FILE@[0; 39)
2 FUNCTION@[0; 38) 2 FN_DEF@[0; 38)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 7) 5 NAME@[3; 7)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0090_trait_item_items.txt b/crates/libsyntax2/tests/data/parser/inline/0090_trait_item_items.txt
index c04c48588..62d728f21 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0090_trait_item_items.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0090_trait_item_items.txt
@@ -10,7 +10,7 @@ FILE@[0; 83)
10 WHITESPACE@[6; 7) 10 WHITESPACE@[6; 7)
11 L_CURLY@[7; 8) 11 L_CURLY@[7; 8)
12 WHITESPACE@[8; 13) 12 WHITESPACE@[8; 13)
13 TYPE_ITEM@[13; 27) 13 TYPE_DEF@[13; 27)
14 TYPE_KW@[13; 17) 14 TYPE_KW@[13; 17)
15 WHITESPACE@[17; 18) 15 WHITESPACE@[17; 18)
16 NAME@[18; 19) 16 NAME@[18; 19)
@@ -23,7 +23,7 @@ FILE@[0; 83)
23 IDENT@[21; 26) "Clone" 23 IDENT@[21; 26) "Clone"
24 SEMI@[26; 27) 24 SEMI@[26; 27)
25 WHITESPACE@[27; 32) 25 WHITESPACE@[27; 32)
26 CONST_ITEM@[32; 45) 26 CONST_DEF@[32; 45)
27 CONST_KW@[32; 37) 27 CONST_KW@[32; 37)
28 WHITESPACE@[37; 38) 28 WHITESPACE@[37; 38)
29 NAME@[38; 39) 29 NAME@[38; 39)
@@ -37,7 +37,7 @@ FILE@[0; 83)
37 IDENT@[41; 44) "i32" 37 IDENT@[41; 44) "i32"
38 SEMI@[44; 45) 38 SEMI@[44; 45)
39 WHITESPACE@[45; 50) 39 WHITESPACE@[45; 50)
40 FUNCTION@[50; 61) 40 FN_DEF@[50; 61)
41 FN_KW@[50; 52) 41 FN_KW@[50; 52)
42 WHITESPACE@[52; 53) 42 WHITESPACE@[52; 53)
43 NAME@[53; 56) 43 NAME@[53; 56)
@@ -50,7 +50,7 @@ FILE@[0; 83)
50 L_CURLY@[59; 60) 50 L_CURLY@[59; 60)
51 R_CURLY@[60; 61) 51 R_CURLY@[60; 61)
52 WHITESPACE@[61; 66) 52 WHITESPACE@[61; 66)
53 FUNCTION@[66; 80) 53 FN_DEF@[66; 80)
54 FN_KW@[66; 68) 54 FN_KW@[66; 68)
55 WHITESPACE@[68; 69) 55 WHITESPACE@[68; 69)
56 NAME@[69; 72) 56 NAME@[69; 72)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0091_fn_decl.txt b/crates/libsyntax2/tests/data/parser/inline/0091_fn_decl.txt
index a6e144776..e5c96aa76 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0091_fn_decl.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0091_fn_decl.txt
@@ -1,5 +1,5 @@
1FILE@[0; 22) 1FILE@[0; 22)
2 TRAIT@[0; 21) 2 TRAIT_DEF@[0; 21)
3 TRAIT_KW@[0; 5) 3 TRAIT_KW@[0; 5)
4 WHITESPACE@[5; 6) 4 WHITESPACE@[5; 6)
5 NAME@[6; 7) 5 NAME@[6; 7)
@@ -7,7 +7,7 @@ FILE@[0; 22)
7 WHITESPACE@[7; 8) 7 WHITESPACE@[7; 8)
8 L_CURLY@[8; 9) 8 L_CURLY@[8; 9)
9 WHITESPACE@[9; 10) 9 WHITESPACE@[9; 10)
10 FUNCTION@[10; 19) 10 FN_DEF@[10; 19)
11 FN_KW@[10; 12) 11 FN_KW@[10; 12)
12 WHITESPACE@[12; 13) 12 WHITESPACE@[12; 13)
13 NAME@[13; 16) 13 NAME@[13; 16)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0092_literal_pattern.txt b/crates/libsyntax2/tests/data/parser/inline/0092_literal_pattern.txt
index a2f985408..5d49c31fe 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0092_literal_pattern.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0092_literal_pattern.txt
@@ -1,5 +1,5 @@
1FILE@[0; 95) 1FILE@[0; 95)
2 FUNCTION@[0; 94) 2 FN_DEF@[0; 94)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 7) 5 NAME@[3; 7)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0093_path_fn_trait_args.txt b/crates/libsyntax2/tests/data/parser/inline/0093_path_fn_trait_args.txt
index 800a4ac14..a98702f8f 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0093_path_fn_trait_args.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0093_path_fn_trait_args.txt
@@ -1,5 +1,5 @@
1FILE@[0; 32) 1FILE@[0; 32)
2 TYPE_ITEM@[0; 31) 2 TYPE_DEF@[0; 31)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0094_range_pat.txt b/crates/libsyntax2/tests/data/parser/inline/0094_range_pat.txt
index cb858044a..8b174b908 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0094_range_pat.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0094_range_pat.txt
@@ -1,5 +1,5 @@
1FILE@[0; 47) 1FILE@[0; 47)
2 FUNCTION@[0; 46) 2 FN_DEF@[0; 46)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 7) 5 NAME@[3; 7)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0095_path_type_with_bounds.txt b/crates/libsyntax2/tests/data/parser/inline/0095_path_type_with_bounds.txt
index 57c38e7ee..5b6252d0e 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0095_path_type_with_bounds.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0095_path_type_with_bounds.txt
@@ -1,5 +1,5 @@
1FILE@[0; 27) 1FILE@[0; 27)
2 FUNCTION@[0; 26) 2 FN_DEF@[0; 26)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0096_value_parameters_no_patterns.txt b/crates/libsyntax2/tests/data/parser/inline/0096_value_parameters_no_patterns.txt
index c3f9bf685..402770112 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0096_value_parameters_no_patterns.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0096_value_parameters_no_patterns.txt
@@ -1,5 +1,5 @@
1FILE@[0; 54) 1FILE@[0; 54)
2 TYPE_ITEM@[0; 53) 2 TYPE_DEF@[0; 53)
3 TYPE_KW@[0; 4) 3 TYPE_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 6) 5 NAME@[5; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0097_param_list_opt_patterns.txt b/crates/libsyntax2/tests/data/parser/inline/0097_param_list_opt_patterns.txt
index 4cb3bdac5..bed6e9881 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0097_param_list_opt_patterns.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0097_param_list_opt_patterns.txt
@@ -1,5 +1,5 @@
1FILE@[0; 35) 1FILE@[0; 35)
2 FUNCTION@[0; 34) 2 FN_DEF@[0; 34)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0098_where_clause.txt b/crates/libsyntax2/tests/data/parser/inline/0098_where_clause.txt
index 150f125a7..21c5ea958 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0098_where_clause.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0098_where_clause.txt
@@ -1,5 +1,5 @@
1FILE@[0; 87) 1FILE@[0; 87)
2 FUNCTION@[0; 86) 2 FN_DEF@[0; 86)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/inline/0099_crate_keyword_vis.txt b/crates/libsyntax2/tests/data/parser/inline/0099_crate_keyword_vis.txt
index a830d99d9..7916bf834 100644
--- a/crates/libsyntax2/tests/data/parser/inline/0099_crate_keyword_vis.txt
+++ b/crates/libsyntax2/tests/data/parser/inline/0099_crate_keyword_vis.txt
@@ -1,5 +1,5 @@
1FILE@[0; 20) 1FILE@[0; 20)
2 FUNCTION@[0; 19) 2 FN_DEF@[0; 19)
3 VISIBILITY@[0; 5) 3 VISIBILITY@[0; 5)
4 CRATE_KW@[0; 5) 4 CRATE_KW@[0; 5)
5 WHITESPACE@[5; 6) 5 WHITESPACE@[5; 6)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0001_struct_item.txt b/crates/libsyntax2/tests/data/parser/ok/0001_struct_item.txt
index b7821656f..798c8fd37 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0001_struct_item.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0001_struct_item.txt
@@ -1,5 +1,5 @@
1FILE@[0; 13) 1FILE@[0; 13)
2 STRUCT@[0; 13) 2 STRUCT_DEF@[0; 13)
3 STRUCT_KW@[0; 6) 3 STRUCT_KW@[0; 6)
4 WHITESPACE@[6; 7) 4 WHITESPACE@[6; 7)
5 NAME@[7; 8) 5 NAME@[7; 8)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0002_struct_item_field.txt b/crates/libsyntax2/tests/data/parser/ok/0002_struct_item_field.txt
index 9bc3a83f7..d8c68e89b 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0002_struct_item_field.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0002_struct_item_field.txt
@@ -1,5 +1,5 @@
1FILE@[0; 25) 1FILE@[0; 25)
2 STRUCT@[0; 25) 2 STRUCT_DEF@[0; 25)
3 STRUCT_KW@[0; 6) 3 STRUCT_KW@[0; 6)
4 WHITESPACE@[6; 7) 4 WHITESPACE@[6; 7)
5 NAME@[7; 8) 5 NAME@[7; 8)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0005_fn_item.txt b/crates/libsyntax2/tests/data/parser/ok/0005_fn_item.txt
index 4ab93d408..e5bdf4852 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0005_fn_item.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0005_fn_item.txt
@@ -1,5 +1,5 @@
1FILE@[0; 13) 1FILE@[0; 13)
2 FUNCTION@[0; 12) 2 FN_DEF@[0; 12)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0008_mod_item.txt b/crates/libsyntax2/tests/data/parser/ok/0008_mod_item.txt
index 86d92a8f4..abd2f8d61 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0008_mod_item.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0008_mod_item.txt
@@ -24,7 +24,7 @@ FILE@[0; 118)
24 WHITESPACE@[24; 25) 24 WHITESPACE@[24; 25)
25 L_CURLY@[25; 26) 25 L_CURLY@[25; 26)
26 WHITESPACE@[26; 31) 26 WHITESPACE@[26; 31)
27 FUNCTION@[31; 47) 27 FN_DEF@[31; 47)
28 FN_KW@[31; 33) 28 FN_KW@[31; 33)
29 WHITESPACE@[33; 34) 29 WHITESPACE@[33; 34)
30 NAME@[34; 37) 30 NAME@[34; 37)
@@ -38,7 +38,7 @@ FILE@[0; 118)
38 WHITESPACE@[41; 46) 38 WHITESPACE@[41; 46)
39 R_CURLY@[46; 47) 39 R_CURLY@[46; 47)
40 WHITESPACE@[47; 52) 40 WHITESPACE@[47; 52)
41 STRUCT@[52; 63) 41 STRUCT_DEF@[52; 63)
42 STRUCT_KW@[52; 58) 42 STRUCT_KW@[52; 58)
43 WHITESPACE@[58; 59) 43 WHITESPACE@[58; 59)
44 NAME@[59; 60) 44 NAME@[59; 60)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0011_outer_attribute.txt b/crates/libsyntax2/tests/data/parser/ok/0011_outer_attribute.txt
index 9824c9083..eae432fe2 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0011_outer_attribute.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0011_outer_attribute.txt
@@ -1,5 +1,5 @@
1FILE@[0; 35) 1FILE@[0; 35)
2 FUNCTION@[0; 34) 2 FN_DEF@[0; 34)
3 ATTR@[0; 12) 3 ATTR@[0; 12)
4 POUND@[0; 1) 4 POUND@[0; 1)
5 L_BRACK@[1; 2) 5 L_BRACK@[1; 2)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0012_visibility.txt b/crates/libsyntax2/tests/data/parser/ok/0012_visibility.txt
index af0c59543..0fa76480a 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0012_visibility.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0012_visibility.txt
@@ -1,5 +1,5 @@
1FILE@[0; 98) 1FILE@[0; 98)
2 FUNCTION@[0; 9) 2 FN_DEF@[0; 9)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 4) 5 NAME@[3; 4)
@@ -12,7 +12,7 @@ FILE@[0; 98)
12 L_CURLY@[7; 8) 12 L_CURLY@[7; 8)
13 R_CURLY@[8; 9) 13 R_CURLY@[8; 9)
14 WHITESPACE@[9; 10) 14 WHITESPACE@[9; 10)
15 FUNCTION@[10; 23) 15 FN_DEF@[10; 23)
16 VISIBILITY@[10; 13) 16 VISIBILITY@[10; 13)
17 PUB_KW@[10; 13) 17 PUB_KW@[10; 13)
18 WHITESPACE@[13; 14) 18 WHITESPACE@[13; 14)
@@ -28,7 +28,7 @@ FILE@[0; 98)
28 L_CURLY@[21; 22) 28 L_CURLY@[21; 22)
29 R_CURLY@[22; 23) 29 R_CURLY@[22; 23)
30 WHITESPACE@[23; 24) 30 WHITESPACE@[23; 24)
31 FUNCTION@[24; 44) 31 FN_DEF@[24; 44)
32 VISIBILITY@[24; 34) 32 VISIBILITY@[24; 34)
33 PUB_KW@[24; 27) 33 PUB_KW@[24; 27)
34 L_PAREN@[27; 28) 34 L_PAREN@[27; 28)
@@ -47,7 +47,7 @@ FILE@[0; 98)
47 L_CURLY@[42; 43) 47 L_CURLY@[42; 43)
48 R_CURLY@[43; 44) 48 R_CURLY@[43; 44)
49 WHITESPACE@[44; 45) 49 WHITESPACE@[44; 45)
50 FUNCTION@[45; 65) 50 FN_DEF@[45; 65)
51 VISIBILITY@[45; 55) 51 VISIBILITY@[45; 55)
52 PUB_KW@[45; 48) 52 PUB_KW@[45; 48)
53 L_PAREN@[48; 49) 53 L_PAREN@[48; 49)
@@ -66,7 +66,7 @@ FILE@[0; 98)
66 L_CURLY@[63; 64) 66 L_CURLY@[63; 64)
67 R_CURLY@[64; 65) 67 R_CURLY@[64; 65)
68 WHITESPACE@[65; 66) 68 WHITESPACE@[65; 66)
69 FUNCTION@[66; 97) 69 FN_DEF@[66; 97)
70 VISIBILITY@[66; 87) 70 VISIBILITY@[66; 87)
71 PUB_KW@[66; 69) 71 PUB_KW@[66; 69)
72 L_PAREN@[69; 70) 72 L_PAREN@[69; 70)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0016_struct_flavors.txt b/crates/libsyntax2/tests/data/parser/ok/0016_struct_flavors.txt
index 9e77b42c3..fd777673d 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0016_struct_flavors.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0016_struct_flavors.txt
@@ -1,12 +1,12 @@
1FILE@[0; 97) 1FILE@[0; 97)
2 STRUCT@[0; 9) 2 STRUCT_DEF@[0; 9)
3 STRUCT_KW@[0; 6) 3 STRUCT_KW@[0; 6)
4 WHITESPACE@[6; 7) 4 WHITESPACE@[6; 7)
5 NAME@[7; 8) 5 NAME@[7; 8)
6 IDENT@[7; 8) "A" 6 IDENT@[7; 8) "A"
7 SEMI@[8; 9) 7 SEMI@[8; 9)
8 WHITESPACE@[9; 10) 8 WHITESPACE@[9; 10)
9 STRUCT@[10; 21) 9 STRUCT_DEF@[10; 21)
10 STRUCT_KW@[10; 16) 10 STRUCT_KW@[10; 16)
11 WHITESPACE@[16; 17) 11 WHITESPACE@[16; 17)
12 NAME@[17; 18) 12 NAME@[17; 18)
@@ -15,7 +15,7 @@ FILE@[0; 97)
15 L_CURLY@[19; 20) 15 L_CURLY@[19; 20)
16 R_CURLY@[20; 21) 16 R_CURLY@[20; 21)
17 WHITESPACE@[21; 22) 17 WHITESPACE@[21; 22)
18 STRUCT@[22; 33) 18 STRUCT_DEF@[22; 33)
19 STRUCT_KW@[22; 28) 19 STRUCT_KW@[22; 28)
20 WHITESPACE@[28; 29) 20 WHITESPACE@[28; 29)
21 NAME@[29; 30) 21 NAME@[29; 30)
@@ -24,7 +24,7 @@ FILE@[0; 97)
24 R_PAREN@[31; 32) 24 R_PAREN@[31; 32)
25 SEMI@[32; 33) 25 SEMI@[32; 33)
26 WHITESPACE@[33; 35) 26 WHITESPACE@[33; 35)
27 STRUCT@[35; 74) 27 STRUCT_DEF@[35; 74)
28 STRUCT_KW@[35; 41) 28 STRUCT_KW@[35; 41)
29 WHITESPACE@[41; 42) 29 WHITESPACE@[41; 42)
30 NAME@[42; 43) 30 NAME@[42; 43)
@@ -60,7 +60,7 @@ FILE@[0; 97)
60 WHITESPACE@[72; 73) 60 WHITESPACE@[72; 73)
61 R_CURLY@[73; 74) 61 R_CURLY@[73; 74)
62 WHITESPACE@[74; 76) 62 WHITESPACE@[74; 76)
63 STRUCT@[76; 96) 63 STRUCT_DEF@[76; 96)
64 STRUCT_KW@[76; 82) 64 STRUCT_KW@[76; 82)
65 WHITESPACE@[82; 83) 65 WHITESPACE@[82; 83)
66 NAME@[83; 84) 66 NAME@[83; 84)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0017_attr_trailing_comma.txt b/crates/libsyntax2/tests/data/parser/ok/0017_attr_trailing_comma.txt
index 69724cdc8..993cdcdec 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0017_attr_trailing_comma.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0017_attr_trailing_comma.txt
@@ -1,5 +1,5 @@
1FILE@[0; 23) 1FILE@[0; 23)
2 FUNCTION@[0; 22) 2 FN_DEF@[0; 22)
3 ATTR@[0; 10) 3 ATTR@[0; 10)
4 POUND@[0; 1) 4 POUND@[0; 1)
5 L_BRACK@[1; 2) 5 L_BRACK@[1; 2)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0018_struct_type_params.txt b/crates/libsyntax2/tests/data/parser/ok/0018_struct_type_params.txt
index b036fe9d5..64aaa7599 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0018_struct_type_params.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0018_struct_type_params.txt
@@ -1,5 +1,5 @@
1FILE@[0; 290) 1FILE@[0; 290)
2 STRUCT@[0; 13) 2 STRUCT_DEF@[0; 13)
3 STRUCT_KW@[0; 6) 3 STRUCT_KW@[0; 6)
4 WHITESPACE@[6; 7) 4 WHITESPACE@[6; 7)
5 NAME@[7; 9) 5 NAME@[7; 9)
@@ -12,7 +12,7 @@ FILE@[0; 290)
12 R_ANGLE@[11; 12) 12 R_ANGLE@[11; 12)
13 SEMI@[12; 13) 13 SEMI@[12; 13)
14 WHITESPACE@[13; 14) 14 WHITESPACE@[13; 14)
15 STRUCT@[14; 32) 15 STRUCT_DEF@[14; 32)
16 STRUCT_KW@[14; 20) 16 STRUCT_KW@[14; 20)
17 WHITESPACE@[20; 21) 17 WHITESPACE@[20; 21)
18 NAME@[21; 23) 18 NAME@[21; 23)
@@ -33,7 +33,7 @@ FILE@[0; 290)
33 R_PAREN@[30; 31) 33 R_PAREN@[30; 31)
34 SEMI@[31; 32) 34 SEMI@[31; 32)
35 WHITESPACE@[32; 33) 35 WHITESPACE@[32; 33)
36 STRUCT@[33; 56) 36 STRUCT_DEF@[33; 56)
37 STRUCT_KW@[33; 39) 37 STRUCT_KW@[33; 39)
38 WHITESPACE@[39; 40) 38 WHITESPACE@[39; 40)
39 NAME@[40; 42) 39 NAME@[40; 42)
@@ -60,7 +60,7 @@ FILE@[0; 290)
60 WHITESPACE@[54; 55) 60 WHITESPACE@[54; 55)
61 R_CURLY@[55; 56) 61 R_CURLY@[55; 56)
62 WHITESPACE@[56; 58) 62 WHITESPACE@[56; 58)
63 STRUCT@[58; 70) 63 STRUCT_DEF@[58; 70)
64 STRUCT_KW@[58; 64) 64 STRUCT_KW@[58; 64)
65 WHITESPACE@[64; 65) 65 WHITESPACE@[64; 65)
66 NAME@[65; 67) 66 NAME@[65; 67)
@@ -70,7 +70,7 @@ FILE@[0; 290)
70 R_ANGLE@[68; 69) 70 R_ANGLE@[68; 69)
71 SEMI@[69; 70) 71 SEMI@[69; 70)
72 WHITESPACE@[70; 71) 72 WHITESPACE@[70; 71)
73 STRUCT@[71; 85) 73 STRUCT_DEF@[71; 85)
74 STRUCT_KW@[71; 77) 74 STRUCT_KW@[71; 77)
75 WHITESPACE@[77; 78) 75 WHITESPACE@[77; 78)
76 NAME@[78; 80) 76 NAME@[78; 80)
@@ -82,7 +82,7 @@ FILE@[0; 290)
82 R_ANGLE@[83; 84) 82 R_ANGLE@[83; 84)
83 SEMI@[84; 85) 83 SEMI@[84; 85)
84 WHITESPACE@[85; 86) 84 WHITESPACE@[85; 86)
85 STRUCT@[86; 101) 85 STRUCT_DEF@[86; 101)
86 STRUCT_KW@[86; 92) 86 STRUCT_KW@[86; 92)
87 WHITESPACE@[92; 93) 87 WHITESPACE@[92; 93)
88 NAME@[93; 95) 88 NAME@[93; 95)
@@ -95,7 +95,7 @@ FILE@[0; 290)
95 R_ANGLE@[99; 100) 95 R_ANGLE@[99; 100)
96 SEMI@[100; 101) 96 SEMI@[100; 101)
97 WHITESPACE@[101; 102) 97 WHITESPACE@[101; 102)
98 STRUCT@[102; 120) 98 STRUCT_DEF@[102; 120)
99 STRUCT_KW@[102; 108) 99 STRUCT_KW@[102; 108)
100 WHITESPACE@[108; 109) 100 WHITESPACE@[108; 109)
101 NAME@[109; 111) 101 NAME@[109; 111)
@@ -110,7 +110,7 @@ FILE@[0; 290)
110 R_ANGLE@[118; 119) 110 R_ANGLE@[118; 119)
111 SEMI@[119; 120) 111 SEMI@[119; 120)
112 WHITESPACE@[120; 121) 112 WHITESPACE@[120; 121)
113 STRUCT@[121; 142) 113 STRUCT_DEF@[121; 142)
114 STRUCT_KW@[121; 127) 114 STRUCT_KW@[121; 127)
115 WHITESPACE@[127; 128) 115 WHITESPACE@[127; 128)
116 NAME@[128; 130) 116 NAME@[128; 130)
@@ -128,7 +128,7 @@ FILE@[0; 290)
128 R_ANGLE@[140; 141) 128 R_ANGLE@[140; 141)
129 SEMI@[141; 142) 129 SEMI@[141; 142)
130 WHITESPACE@[142; 143) 130 WHITESPACE@[142; 143)
131 STRUCT@[143; 166) 131 STRUCT_DEF@[143; 166)
132 STRUCT_KW@[143; 149) 132 STRUCT_KW@[143; 149)
133 WHITESPACE@[149; 150) 133 WHITESPACE@[149; 150)
134 NAME@[150; 152) 134 NAME@[150; 152)
@@ -147,7 +147,7 @@ FILE@[0; 290)
147 R_ANGLE@[164; 165) 147 R_ANGLE@[164; 165)
148 SEMI@[165; 166) 148 SEMI@[165; 166)
149 WHITESPACE@[166; 167) 149 WHITESPACE@[166; 167)
150 STRUCT@[167; 183) 150 STRUCT_DEF@[167; 183)
151 STRUCT_KW@[167; 173) 151 STRUCT_KW@[167; 173)
152 WHITESPACE@[173; 174) 152 WHITESPACE@[173; 174)
153 NAME@[174; 177) 153 NAME@[174; 177)
@@ -160,7 +160,7 @@ FILE@[0; 290)
160 R_ANGLE@[181; 182) 160 R_ANGLE@[181; 182)
161 SEMI@[182; 183) 161 SEMI@[182; 183)
162 WHITESPACE@[183; 184) 162 WHITESPACE@[183; 184)
163 STRUCT@[184; 203) 163 STRUCT_DEF@[184; 203)
164 STRUCT_KW@[184; 190) 164 STRUCT_KW@[184; 190)
165 WHITESPACE@[190; 191) 165 WHITESPACE@[190; 191)
166 NAME@[191; 194) 166 NAME@[191; 194)
@@ -176,7 +176,7 @@ FILE@[0; 290)
176 R_ANGLE@[201; 202) 176 R_ANGLE@[201; 202)
177 SEMI@[202; 203) 177 SEMI@[202; 203)
178 WHITESPACE@[203; 204) 178 WHITESPACE@[203; 204)
179 STRUCT@[204; 233) 179 STRUCT_DEF@[204; 233)
180 STRUCT_KW@[204; 210) 180 STRUCT_KW@[204; 210)
181 WHITESPACE@[210; 211) 181 WHITESPACE@[210; 211)
182 NAME@[211; 214) 182 NAME@[211; 214)
@@ -200,7 +200,7 @@ FILE@[0; 290)
200 R_ANGLE@[231; 232) 200 R_ANGLE@[231; 232)
201 SEMI@[232; 233) 201 SEMI@[232; 233)
202 WHITESPACE@[233; 235) 202 WHITESPACE@[233; 235)
203 STRUCT@[235; 249) 203 STRUCT_DEF@[235; 249)
204 STRUCT_KW@[235; 241) 204 STRUCT_KW@[235; 241)
205 WHITESPACE@[241; 242) 205 WHITESPACE@[241; 242)
206 NAME@[242; 245) 206 NAME@[242; 245)
@@ -213,7 +213,7 @@ FILE@[0; 290)
213 R_ANGLE@[247; 248) 213 R_ANGLE@[247; 248)
214 SEMI@[248; 249) 214 SEMI@[248; 249)
215 WHITESPACE@[249; 250) 215 WHITESPACE@[249; 250)
216 STRUCT@[250; 267) 216 STRUCT_DEF@[250; 267)
217 STRUCT_KW@[250; 256) 217 STRUCT_KW@[250; 256)
218 WHITESPACE@[256; 257) 218 WHITESPACE@[256; 257)
219 NAME@[257; 260) 219 NAME@[257; 260)
@@ -231,7 +231,7 @@ FILE@[0; 290)
231 R_ANGLE@[265; 266) 231 R_ANGLE@[265; 266)
232 SEMI@[266; 267) 232 SEMI@[266; 267)
233 WHITESPACE@[267; 268) 233 WHITESPACE@[267; 268)
234 STRUCT@[268; 289) 234 STRUCT_DEF@[268; 289)
235 STRUCT_KW@[268; 274) 235 STRUCT_KW@[268; 274)
236 WHITESPACE@[274; 275) 236 WHITESPACE@[274; 275)
237 NAME@[275; 278) 237 NAME@[275; 278)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0019_enums.txt b/crates/libsyntax2/tests/data/parser/ok/0019_enums.txt
index 0ddf7eb9d..f6f653615 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0019_enums.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0019_enums.txt
@@ -1,5 +1,5 @@
1FILE@[0; 182) 1FILE@[0; 182)
2 ENUM@[0; 11) 2 ENUM_DEF@[0; 11)
3 ENUM_KW@[0; 4) 3 ENUM_KW@[0; 4)
4 WHITESPACE@[4; 5) 4 WHITESPACE@[4; 5)
5 NAME@[5; 7) 5 NAME@[5; 7)
@@ -9,7 +9,7 @@ FILE@[0; 182)
9 WHITESPACE@[9; 10) 9 WHITESPACE@[9; 10)
10 R_CURLY@[10; 11) 10 R_CURLY@[10; 11)
11 WHITESPACE@[11; 13) 11 WHITESPACE@[11; 13)
12 ENUM@[13; 27) 12 ENUM_DEF@[13; 27)
13 ENUM_KW@[13; 17) 13 ENUM_KW@[13; 17)
14 WHITESPACE@[17; 18) 14 WHITESPACE@[17; 18)
15 NAME@[18; 20) 15 NAME@[18; 20)
@@ -25,7 +25,7 @@ FILE@[0; 182)
25 WHITESPACE@[25; 26) 25 WHITESPACE@[25; 26)
26 R_CURLY@[26; 27) 26 R_CURLY@[26; 27)
27 WHITESPACE@[27; 29) 27 WHITESPACE@[27; 29)
28 ENUM@[29; 46) 28 ENUM_DEF@[29; 46)
29 ENUM_KW@[29; 33) 29 ENUM_KW@[29; 33)
30 WHITESPACE@[33; 34) 30 WHITESPACE@[33; 34)
31 NAME@[34; 36) 31 NAME@[34; 36)
@@ -39,7 +39,7 @@ FILE@[0; 182)
39 WHITESPACE@[44; 45) 39 WHITESPACE@[44; 45)
40 R_CURLY@[45; 46) 40 R_CURLY@[45; 46)
41 WHITESPACE@[46; 48) 41 WHITESPACE@[46; 48)
42 ENUM@[48; 66) 42 ENUM_DEF@[48; 66)
43 ENUM_KW@[48; 52) 43 ENUM_KW@[48; 52)
44 WHITESPACE@[52; 53) 44 WHITESPACE@[52; 53)
45 NAME@[53; 55) 45 NAME@[53; 55)
@@ -54,7 +54,7 @@ FILE@[0; 182)
54 WHITESPACE@[64; 65) 54 WHITESPACE@[64; 65)
55 R_CURLY@[65; 66) 55 R_CURLY@[65; 66)
56 WHITESPACE@[66; 68) 56 WHITESPACE@[66; 68)
57 ENUM@[68; 181) 57 ENUM_DEF@[68; 181)
58 ENUM_KW@[68; 72) 58 ENUM_KW@[68; 72)
59 WHITESPACE@[72; 73) 59 WHITESPACE@[72; 73)
60 NAME@[73; 75) 60 NAME@[73; 75)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0020_type_param_bounds.txt b/crates/libsyntax2/tests/data/parser/ok/0020_type_param_bounds.txt
index 7c8fda44c..62632d19a 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0020_type_param_bounds.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0020_type_param_bounds.txt
@@ -1,5 +1,5 @@
1FILE@[0; 200) 1FILE@[0; 200)
2 STRUCT@[0; 12) 2 STRUCT_DEF@[0; 12)
3 STRUCT_KW@[0; 6) 3 STRUCT_KW@[0; 6)
4 WHITESPACE@[6; 7) 4 WHITESPACE@[6; 7)
5 NAME@[7; 8) 5 NAME@[7; 8)
@@ -12,7 +12,7 @@ FILE@[0; 200)
12 R_ANGLE@[10; 11) 12 R_ANGLE@[10; 11)
13 SEMI@[11; 12) 13 SEMI@[11; 12)
14 WHITESPACE@[12; 13) 14 WHITESPACE@[12; 13)
15 STRUCT@[13; 26) 15 STRUCT_DEF@[13; 26)
16 STRUCT_KW@[13; 19) 16 STRUCT_KW@[13; 19)
17 WHITESPACE@[19; 20) 17 WHITESPACE@[19; 20)
18 NAME@[20; 21) 18 NAME@[20; 21)
@@ -26,7 +26,7 @@ FILE@[0; 200)
26 R_ANGLE@[24; 25) 26 R_ANGLE@[24; 25)
27 SEMI@[25; 26) 27 SEMI@[25; 26)
28 WHITESPACE@[26; 27) 28 WHITESPACE@[26; 27)
29 STRUCT@[27; 43) 29 STRUCT_DEF@[27; 43)
30 STRUCT_KW@[27; 33) 30 STRUCT_KW@[27; 33)
31 WHITESPACE@[33; 34) 31 WHITESPACE@[33; 34)
32 NAME@[34; 35) 32 NAME@[34; 35)
@@ -42,7 +42,7 @@ FILE@[0; 200)
42 R_ANGLE@[41; 42) 42 R_ANGLE@[41; 42)
43 SEMI@[42; 43) 43 SEMI@[42; 43)
44 WHITESPACE@[43; 44) 44 WHITESPACE@[43; 44)
45 STRUCT@[44; 63) 45 STRUCT_DEF@[44; 63)
46 STRUCT_KW@[44; 50) 46 STRUCT_KW@[44; 50)
47 WHITESPACE@[50; 51) 47 WHITESPACE@[50; 51)
48 NAME@[51; 52) 48 NAME@[51; 52)
@@ -61,7 +61,7 @@ FILE@[0; 200)
61 R_ANGLE@[61; 62) 61 R_ANGLE@[61; 62)
62 SEMI@[62; 63) 62 SEMI@[62; 63)
63 WHITESPACE@[63; 64) 63 WHITESPACE@[63; 64)
64 STRUCT@[64; 86) 64 STRUCT_DEF@[64; 86)
65 STRUCT_KW@[64; 70) 65 STRUCT_KW@[64; 70)
66 WHITESPACE@[70; 71) 66 WHITESPACE@[70; 71)
67 NAME@[71; 72) 67 NAME@[71; 72)
@@ -82,7 +82,7 @@ FILE@[0; 200)
82 R_ANGLE@[84; 85) 82 R_ANGLE@[84; 85)
83 SEMI@[85; 86) 83 SEMI@[85; 86)
84 WHITESPACE@[86; 87) 84 WHITESPACE@[86; 87)
85 STRUCT@[87; 116) 85 STRUCT_DEF@[87; 116)
86 STRUCT_KW@[87; 93) 86 STRUCT_KW@[87; 93)
87 WHITESPACE@[93; 94) 87 WHITESPACE@[93; 94)
88 NAME@[94; 95) 88 NAME@[94; 95)
@@ -109,7 +109,7 @@ FILE@[0; 200)
109 R_ANGLE@[114; 115) 109 R_ANGLE@[114; 115)
110 SEMI@[115; 116) 110 SEMI@[115; 116)
111 WHITESPACE@[116; 117) 111 WHITESPACE@[116; 117)
112 STRUCT@[117; 143) 112 STRUCT_DEF@[117; 143)
113 STRUCT_KW@[117; 123) 113 STRUCT_KW@[117; 123)
114 WHITESPACE@[123; 124) 114 WHITESPACE@[123; 124)
115 NAME@[124; 125) 115 NAME@[124; 125)
@@ -135,7 +135,7 @@ FILE@[0; 200)
135 R_ANGLE@[141; 142) 135 R_ANGLE@[141; 142)
136 SEMI@[142; 143) 136 SEMI@[142; 143)
137 WHITESPACE@[143; 144) 137 WHITESPACE@[143; 144)
138 STRUCT@[144; 180) 138 STRUCT_DEF@[144; 180)
139 STRUCT_KW@[144; 150) 139 STRUCT_KW@[144; 150)
140 WHITESPACE@[150; 151) 140 WHITESPACE@[150; 151)
141 NAME@[151; 152) 141 NAME@[151; 152)
@@ -170,7 +170,7 @@ FILE@[0; 200)
170 R_ANGLE@[178; 179) 170 R_ANGLE@[178; 179)
171 SEMI@[179; 180) 171 SEMI@[179; 180)
172 WHITESPACE@[180; 181) 172 WHITESPACE@[180; 181)
173 STRUCT@[181; 199) 173 STRUCT_DEF@[181; 199)
174 STRUCT_KW@[181; 187) 174 STRUCT_KW@[181; 187)
175 WHITESPACE@[187; 188) 175 WHITESPACE@[187; 188)
176 NAME@[188; 189) 176 NAME@[188; 189)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0021_extern_fn.txt b/crates/libsyntax2/tests/data/parser/ok/0021_extern_fn.txt
index 07d5cc157..3a153c358 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0021_extern_fn.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0021_extern_fn.txt
@@ -1,5 +1,5 @@
1FILE@[0; 71) 1FILE@[0; 71)
2 FUNCTION@[0; 19) 2 FN_DEF@[0; 19)
3 ABI@[0; 6) 3 ABI@[0; 6)
4 EXTERN_KW@[0; 6) 4 EXTERN_KW@[0; 6)
5 WHITESPACE@[6; 7) 5 WHITESPACE@[6; 7)
@@ -16,7 +16,7 @@ FILE@[0; 71)
16 WHITESPACE@[17; 18) 16 WHITESPACE@[17; 18)
17 R_CURLY@[18; 19) 17 R_CURLY@[18; 19)
18 WHITESPACE@[19; 21) 18 WHITESPACE@[19; 21)
19 FUNCTION@[21; 44) 19 FN_DEF@[21; 44)
20 ABI@[21; 31) 20 ABI@[21; 31)
21 EXTERN_KW@[21; 27) 21 EXTERN_KW@[21; 27)
22 WHITESPACE@[27; 28) 22 WHITESPACE@[27; 28)
@@ -35,7 +35,7 @@ FILE@[0; 71)
35 WHITESPACE@[42; 43) 35 WHITESPACE@[42; 43)
36 R_CURLY@[43; 44) 36 R_CURLY@[43; 44)
37 WHITESPACE@[44; 46) 37 WHITESPACE@[44; 46)
38 FUNCTION@[46; 70) 38 FN_DEF@[46; 70)
39 ABI@[46; 57) 39 ABI@[46; 57)
40 EXTERN_KW@[46; 52) 40 EXTERN_KW@[46; 52)
41 WHITESPACE@[52; 53) 41 WHITESPACE@[52; 53)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0023_static_items.txt b/crates/libsyntax2/tests/data/parser/ok/0023_static_items.txt
index b8dfdd251..dfe957fd8 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0023_static_items.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0023_static_items.txt
@@ -1,5 +1,5 @@
1FILE@[0; 47) 1FILE@[0; 47)
2 STATIC_ITEM@[0; 20) 2 STATIC_DEF@[0; 20)
3 STATIC_KW@[0; 6) 3 STATIC_KW@[0; 6)
4 WHITESPACE@[6; 7) 4 WHITESPACE@[6; 7)
5 NAME@[7; 10) 5 NAME@[7; 10)
@@ -18,7 +18,7 @@ FILE@[0; 47)
18 INT_NUMBER@[18; 19) "1" 18 INT_NUMBER@[18; 19) "1"
19 SEMI@[19; 20) 19 SEMI@[19; 20)
20 WHITESPACE@[20; 21) 20 WHITESPACE@[20; 21)
21 STATIC_ITEM@[21; 46) 21 STATIC_DEF@[21; 46)
22 STATIC_KW@[21; 27) 22 STATIC_KW@[21; 27)
23 WHITESPACE@[27; 28) 23 WHITESPACE@[27; 28)
24 MUT_KW@[28; 31) 24 MUT_KW@[28; 31)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0024_const_item.txt b/crates/libsyntax2/tests/data/parser/ok/0024_const_item.txt
index 85083e9c1..413bb3084 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0024_const_item.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0024_const_item.txt
@@ -1,5 +1,5 @@
1FILE@[0; 46) 1FILE@[0; 46)
2 CONST_ITEM@[0; 20) 2 CONST_DEF@[0; 20)
3 CONST_KW@[0; 5) 3 CONST_KW@[0; 5)
4 WHITESPACE@[5; 6) 4 WHITESPACE@[5; 6)
5 NAME@[6; 9) 5 NAME@[6; 9)
@@ -18,7 +18,7 @@ FILE@[0; 46)
18 INT_NUMBER@[17; 19) "92" 18 INT_NUMBER@[17; 19) "92"
19 SEMI@[19; 20) 19 SEMI@[19; 20)
20 WHITESPACE@[20; 21) 20 WHITESPACE@[20; 21)
21 CONST_ITEM@[21; 45) 21 CONST_DEF@[21; 45)
22 CONST_KW@[21; 26) 22 CONST_KW@[21; 26)
23 WHITESPACE@[26; 27) 23 WHITESPACE@[26; 27)
24 MUT_KW@[27; 30) 24 MUT_KW@[27; 30)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0025_extern_fn_in_block.txt b/crates/libsyntax2/tests/data/parser/ok/0025_extern_fn_in_block.txt
index 46fb177b2..82736af91 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0025_extern_fn_in_block.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0025_extern_fn_in_block.txt
@@ -1,5 +1,5 @@
1FILE@[0; 35) 1FILE@[0; 35)
2 FUNCTION@[0; 34) 2 FN_DEF@[0; 34)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 7) 5 NAME@[3; 7)
@@ -11,7 +11,7 @@ FILE@[0; 35)
11 BLOCK_EXPR@[10; 34) 11 BLOCK_EXPR@[10; 34)
12 L_CURLY@[10; 11) 12 L_CURLY@[10; 11)
13 WHITESPACE@[11; 16) 13 WHITESPACE@[11; 16)
14 FUNCTION@[16; 32) 14 FN_DEF@[16; 32)
15 ABI@[16; 22) 15 ABI@[16; 22)
16 EXTERN_KW@[16; 22) 16 EXTERN_KW@[16; 22)
17 WHITESPACE@[22; 23) 17 WHITESPACE@[22; 23)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0026_const_fn_in_block.txt b/crates/libsyntax2/tests/data/parser/ok/0026_const_fn_in_block.txt
index a450762a8..5e5430680 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0026_const_fn_in_block.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0026_const_fn_in_block.txt
@@ -1,5 +1,5 @@
1FILE@[0; 34) 1FILE@[0; 34)
2 FUNCTION@[0; 33) 2 FN_DEF@[0; 33)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 7) 5 NAME@[3; 7)
@@ -11,7 +11,7 @@ FILE@[0; 34)
11 BLOCK_EXPR@[10; 33) 11 BLOCK_EXPR@[10; 33)
12 L_CURLY@[10; 11) 12 L_CURLY@[10; 11)
13 WHITESPACE@[11; 16) 13 WHITESPACE@[11; 16)
14 FUNCTION@[16; 31) 14 FN_DEF@[16; 31)
15 CONST_KW@[16; 21) 15 CONST_KW@[16; 21)
16 WHITESPACE@[21; 22) 16 WHITESPACE@[21; 22)
17 FN_KW@[22; 24) 17 FN_KW@[22; 24)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0027_unsafe_fn_in_block.txt b/crates/libsyntax2/tests/data/parser/ok/0027_unsafe_fn_in_block.txt
index 28cd7ad3d..848df9b9b 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0027_unsafe_fn_in_block.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0027_unsafe_fn_in_block.txt
@@ -1,5 +1,5 @@
1FILE@[0; 53) 1FILE@[0; 53)
2 FUNCTION@[0; 52) 2 FN_DEF@[0; 52)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 7) 5 NAME@[3; 7)
@@ -11,7 +11,7 @@ FILE@[0; 53)
11 BLOCK_EXPR@[10; 52) 11 BLOCK_EXPR@[10; 52)
12 L_CURLY@[10; 11) 12 L_CURLY@[10; 11)
13 WHITESPACE@[11; 16) 13 WHITESPACE@[11; 16)
14 FUNCTION@[16; 32) 14 FN_DEF@[16; 32)
15 UNSAFE_KW@[16; 22) 15 UNSAFE_KW@[16; 22)
16 WHITESPACE@[22; 23) 16 WHITESPACE@[22; 23)
17 FN_KW@[23; 25) 17 FN_KW@[23; 25)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0028_operator_binding_power.txt b/crates/libsyntax2/tests/data/parser/ok/0028_operator_binding_power.txt
index 3fb1ae811..a446066d3 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0028_operator_binding_power.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0028_operator_binding_power.txt
@@ -1,5 +1,5 @@
1FILE@[0; 248) 1FILE@[0; 248)
2 FUNCTION@[0; 247) 2 FN_DEF@[0; 247)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 16) 5 NAME@[3; 16)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0029_range_forms.txt b/crates/libsyntax2/tests/data/parser/ok/0029_range_forms.txt
index 91d5e5bba..619582dfc 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0029_range_forms.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0029_range_forms.txt
@@ -1,5 +1,5 @@
1FILE@[0; 79) 1FILE@[0; 79)
2 FUNCTION@[0; 78) 2 FN_DEF@[0; 78)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
5 NAME@[3; 6) 5 NAME@[3; 6)
diff --git a/crates/libsyntax2/tests/data/parser/ok/0030_traits.txt b/crates/libsyntax2/tests/data/parser/ok/0030_traits.txt
index 8abcb01e0..d50295134 100644
--- a/crates/libsyntax2/tests/data/parser/ok/0030_traits.txt
+++ b/crates/libsyntax2/tests/data/parser/ok/0030_traits.txt
@@ -1,5 +1,5 @@
1FILE@[0; 164) 1FILE@[0; 164)
2 TRAIT@[0; 164) 2 TRAIT_DEF@[0; 164)
3 VISIBILITY@[0; 3) 3 VISIBILITY@[0; 3)
4 PUB_KW@[0; 3) 4 PUB_KW@[0; 3)
5 WHITESPACE@[3; 4) 5 WHITESPACE@[3; 4)
@@ -10,7 +10,7 @@ FILE@[0; 164)
10 WHITESPACE@[22; 23) 10 WHITESPACE@[22; 23)
11 L_CURLY@[23; 24) 11 L_CURLY@[23; 24)
12 WHITESPACE@[24; 29) 12 WHITESPACE@[24; 29)
13 FUNCTION@[29; 164) 13 FN_DEF@[29; 164)
14 FN_KW@[29; 31) 14 FN_KW@[29; 31)
15 WHITESPACE@[31; 32) 15 WHITESPACE@[31; 32)
16 NAME@[32; 45) 16 NAME@[32; 45)
diff --git a/crates/server/src/conv.rs b/crates/server/src/conv.rs
index 1c31d32fe..3aa255e6a 100644
--- a/crates/server/src/conv.rs
+++ b/crates/server/src/conv.rs
@@ -28,14 +28,14 @@ impl Conv for SyntaxKind {
28 28
29 fn conv(self) -> <Self as Conv>::Output { 29 fn conv(self) -> <Self as Conv>::Output {
30 match self { 30 match self {
31 SyntaxKind::FUNCTION => SymbolKind::Function, 31 SyntaxKind::FN_DEF => SymbolKind::Function,
32 SyntaxKind::STRUCT => SymbolKind::Struct, 32 SyntaxKind::STRUCT_DEF => SymbolKind::Struct,
33 SyntaxKind::ENUM => SymbolKind::Enum, 33 SyntaxKind::ENUM_DEF => SymbolKind::Enum,
34 SyntaxKind::TRAIT => SymbolKind::Interface, 34 SyntaxKind::TRAIT_DEF => SymbolKind::Interface,
35 SyntaxKind::MODULE => SymbolKind::Module, 35 SyntaxKind::MODULE => SymbolKind::Module,
36 SyntaxKind::TYPE_ITEM => SymbolKind::TypeParameter, 36 SyntaxKind::TYPE_DEF => SymbolKind::TypeParameter,
37 SyntaxKind::STATIC_ITEM => SymbolKind::Constant, 37 SyntaxKind::STATIC_DEF => SymbolKind::Constant,
38 SyntaxKind::CONST_ITEM => SymbolKind::Constant, 38 SyntaxKind::CONST_DEF => SymbolKind::Constant,
39 _ => SymbolKind::Variable, 39 _ => SymbolKind::Variable,
40 } 40 }
41 } 41 }