aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksey Kladov <[email protected]>2018-08-09 15:44:40 +0100
committerAleksey Kladov <[email protected]>2018-08-09 15:54:49 +0100
commitafa94d4f37b9a0a1e723edffcc79c3d48799bad1 (patch)
treeea4a5163bee5f202c3627b88280e74a704c186d0
parentd8b2a5efc0e5de3b0d72f29ccc86185f0827c9d3 (diff)
fn_item -> function
-rw-r--r--docs/TESTS.md10
-rw-r--r--libeditor/src/lib.rs2
-rw-r--r--src/ast/generated.rs6
-rw-r--r--src/ast/mod.rs6
-rw-r--r--src/grammar.ron4
-rw-r--r--src/grammar/items/mod.rs12
-rw-r--r--src/grammar/mod.rs2
-rw-r--r--src/syntax_kinds/generated.rs4
-rw-r--r--tests/data/parser/err/0005_attribute_recover.txt4
-rw-r--r--tests/data/parser/err/0007_stray_curly_in_file.txt2
-rw-r--r--tests/data/parser/err/0008_item_block_recovery.txt4
-rw-r--r--tests/data/parser/err/0010_unsafe_lambda_block.txt2
-rw-r--r--tests/data/parser/err/0012_broken_lambda.txt2
-rw-r--r--tests/data/parser/inline/0001_const_unsafe_fn.txt2
-rw-r--r--tests/data/parser/inline/0002_const_fn.txt2
-rw-r--r--tests/data/parser/inline/0004_extern_fn.txt2
-rw-r--r--tests/data/parser/inline/0011_unsafe_fn.txt2
-rw-r--r--tests/data/parser/inline/0012_unsafe_extern_fn.txt2
-rw-r--r--tests/data/parser/inline/0013_unsafe_block_in_mod.txt4
-rw-r--r--tests/data/parser/inline/0034_bind_pat.txt2
-rw-r--r--tests/data/parser/inline/0035_ref_pat.txt2
-rw-r--r--tests/data/parser/inline/0036_placeholder_pat.txt2
-rw-r--r--tests/data/parser/inline/0038_function_ret_type.rs (renamed from tests/data/parser/inline/0038_fn_item_ret_type.rs)0
-rw-r--r--tests/data/parser/inline/0038_function_ret_type.txt (renamed from tests/data/parser/inline/0038_fn_item_ret_type.txt)4
-rw-r--r--tests/data/parser/inline/0039_path_expr.txt2
-rw-r--r--tests/data/parser/inline/0040_expr_literals.txt2
-rw-r--r--tests/data/parser/inline/0043_call_expr.txt2
-rw-r--r--tests/data/parser/inline/0044_ref_expr.txt2
-rw-r--r--tests/data/parser/inline/0045_block.txt8
-rw-r--r--tests/data/parser/inline/0050_let_stmt;.txt2
-rw-r--r--tests/data/parser/inline/0051_method_call_expr.txt2
-rw-r--r--tests/data/parser/inline/0052_field_expr.txt2
-rw-r--r--tests/data/parser/inline/0053_block_items.txt4
-rw-r--r--tests/data/parser/inline/0054_impl_item_items.txt4
-rw-r--r--tests/data/parser/inline/0055_self_param.txt8
-rw-r--r--tests/data/parser/inline/0059_function_where_clause.rs (renamed from tests/data/parser/inline/0059_fn_item_where_clause.rs)0
-rw-r--r--tests/data/parser/inline/0059_function_where_clause.txt (renamed from tests/data/parser/inline/0059_fn_item_where_clause.txt)2
-rw-r--r--tests/data/parser/inline/0060_function_type_params.rs (renamed from tests/data/parser/inline/0060_fn_item_type_params.rs)0
-rw-r--r--tests/data/parser/inline/0060_function_type_params.txt (renamed from tests/data/parser/inline/0060_fn_item_type_params.txt)2
-rw-r--r--tests/data/parser/inline/0061_struct_lit.txt2
-rw-r--r--tests/data/parser/inline/0063_lambda_expr.txt2
-rw-r--r--tests/data/parser/inline/0064_param_list.txt8
-rw-r--r--tests/data/parser/inline/0065_if_expr.txt2
-rw-r--r--tests/data/parser/inline/0066_lambda_expr.txt2
-rw-r--r--tests/data/parser/inline/0067_block_expr.txt2
-rw-r--r--tests/data/parser/inline/0068_pub_expr.txt2
-rw-r--r--tests/data/parser/inline/0068_return_expr.txt2
-rw-r--r--tests/data/parser/inline/0069_match_arm.txt2
-rw-r--r--tests/data/parser/inline/0070_match_expr.txt2
-rw-r--r--tests/data/parser/inline/0071_tuple_pat_fields.txt2
-rw-r--r--tests/data/parser/inline/0072_path_part.txt2
-rw-r--r--tests/data/parser/inline/0073_struct_pat_fields.txt2
-rw-r--r--tests/data/parser/inline/0074_unary_expr.txt2
-rw-r--r--tests/data/parser/inline/0075_try_expr.txt2
-rw-r--r--tests/data/parser/inline/0076_cond.txt2
-rw-r--r--tests/data/parser/inline/0077_while_expr.txt2
-rw-r--r--tests/data/parser/inline/0078_mod_contents.txt2
-rw-r--r--tests/data/parser/inline/0079_cast_expr.txt2
-rw-r--r--tests/data/parser/inline/0080_tuple_expr.txt2
-rw-r--r--tests/data/parser/inline/0081_index_expr.txt2
-rw-r--r--tests/data/parser/inline/0082_tuple_pat.txt2
-rw-r--r--tests/data/parser/inline/0083_postfix_range.txt2
-rw-r--r--tests/data/parser/inline/0084_loop_expr.txt2
-rw-r--r--tests/data/parser/inline/0085_for_expr.txt2
-rw-r--r--tests/data/parser/inline/0085_match_arms_commas.txt2
-rw-r--r--tests/data/parser/inline/0086_array_expr.txt2
-rw-r--r--tests/data/parser/inline/0086_no_semi_after_block.txt2
-rw-r--r--tests/data/parser/inline/0087_stmt_postfix_expr_ambiguity.txt2
-rw-r--r--tests/data/parser/inline/0088_stmt_bin_expr_ambiguity.txt2
-rw-r--r--tests/data/parser/inline/0089_slice_pat.txt2
-rw-r--r--tests/data/parser/inline/0090_trait_item_items.txt4
-rw-r--r--tests/data/parser/inline/0091_fn_decl.txt2
-rw-r--r--tests/data/parser/inline/0092_literal_pattern.txt2
-rw-r--r--tests/data/parser/inline/0094_range_pat.txt2
-rw-r--r--tests/data/parser/inline/0095_path_type_with_bounds.txt2
-rw-r--r--tests/data/parser/inline/0097_param_list_opt_patterns.txt2
-rw-r--r--tests/data/parser/inline/0098_where_clause.txt2
-rw-r--r--tests/data/parser/inline/0099_crate_keyword_vis.txt2
-rw-r--r--tests/data/parser/ok/0005_fn_item.txt2
-rw-r--r--tests/data/parser/ok/0008_mod_item.txt2
-rw-r--r--tests/data/parser/ok/0011_outer_attribute.txt2
-rw-r--r--tests/data/parser/ok/0012_visibility.txt10
-rw-r--r--tests/data/parser/ok/0017_attr_trailing_comma.txt2
-rw-r--r--tests/data/parser/ok/0021_extern_fn.txt6
-rw-r--r--tests/data/parser/ok/0025_extern_fn_in_block.txt4
-rw-r--r--tests/data/parser/ok/0026_const_fn_in_block.txt4
-rw-r--r--tests/data/parser/ok/0027_unsafe_fn_in_block.txt4
-rw-r--r--tests/data/parser/ok/0028_operator_binding_power.txt2
-rw-r--r--tests/data/parser/ok/0029_range_forms.txt2
89 files changed, 126 insertions, 126 deletions
diff --git a/docs/TESTS.md b/docs/TESTS.md
index db06dbebc..a9d32d1d4 100644
--- a/docs/TESTS.md
+++ b/docs/TESTS.md
@@ -24,20 +24,20 @@ recovery and it is totally ok for a parser to not implement any error
24recovery at all. However, for libsyntax2.0 we do care about error 24recovery at all. However, for libsyntax2.0 we do care about error
25recovery, and we do care about precise and useful error messages. 25recovery, and we do care about precise and useful error messages.
26 26
27There are also so-called "inline tests". They appear as the comments 27There are also so-called "inline tests". They appear as the comments
28with a `test` header in the source code, like this: 28with a `test` header in the source code, like this:
29 29
30```rust 30```rust
31// test fn_basic 31// test fn_basic
32// fn foo() {} 32// fn foo() {}
33fn fn_item(p: &mut Parser) { 33fn function(p: &mut Parser) {
34 // ... 34 // ...
35} 35}
36``` 36```
37 37
38You can run `cargo collect-tests` command to collect all inline tests 38You can run `cargo collect-tests` command to collect all inline tests
39into `tests/data/inline` directory. The main advantage of inline tests 39into `tests/data/inline` directory. The main advantage of inline tests
40is that they help to illustrate what the relevant code is doing. 40is that they help to illustrate what the relevant code is doing.
41 41
42 42
43Contribution opportunity: design and implement testing infrastructure 43Contribution opportunity: design and implement testing infrastructure
diff --git a/libeditor/src/lib.rs b/libeditor/src/lib.rs
index e7cc6a696..ebc063ed2 100644
--- a/libeditor/src/lib.rs
+++ b/libeditor/src/lib.rs
@@ -120,7 +120,7 @@ struct Declaration<'f>(SyntaxNodeRef<'f>);
120impl<'f> Declaration<'f> { 120impl<'f> Declaration<'f> {
121 fn cast(node: SyntaxNodeRef<'f>) -> Option<Declaration<'f>> { 121 fn cast(node: SyntaxNodeRef<'f>) -> Option<Declaration<'f>> {
122 match node.kind() { 122 match node.kind() {
123 | STRUCT_ITEM | ENUM_ITEM | FN_ITEM | TRAIT_ITEM 123 | STRUCT_ITEM | ENUM_ITEM | FUNCTION | TRAIT_ITEM
124 | CONST_ITEM | STATIC_ITEM | MOD_ITEM | NAMED_FIELD 124 | CONST_ITEM | STATIC_ITEM | MOD_ITEM | NAMED_FIELD
125 | TYPE_ITEM => Some(Declaration(node)), 125 | TYPE_ITEM => Some(Declaration(node)),
126 _ => None 126 _ => None
diff --git a/src/ast/generated.rs b/src/ast/generated.rs
index 612b04f86..b93c76d0c 100644
--- a/src/ast/generated.rs
+++ b/src/ast/generated.rs
@@ -22,14 +22,14 @@ impl<R: TreeRoot> AstNode<R> for File<R> {
22 22
23 23
24#[derive(Debug)] 24#[derive(Debug)]
25pub struct FnItem<R: TreeRoot = Arc<SyntaxRoot>> { 25pub struct Function<R: TreeRoot = Arc<SyntaxRoot>> {
26 syntax: SyntaxNode<R>, 26 syntax: SyntaxNode<R>,
27} 27}
28 28
29impl<R: TreeRoot> AstNode<R> for FnItem<R> { 29impl<R: TreeRoot> AstNode<R> for Function<R> {
30 fn cast(syntax: SyntaxNode<R>) -> Option<Self> { 30 fn cast(syntax: SyntaxNode<R>) -> Option<Self> {
31 match syntax.kind() { 31 match syntax.kind() {
32 FN_ITEM => Some(FnItem { syntax }), 32 FUNCTION => Some(Function { syntax }),
33 _ => None, 33 _ => None,
34 } 34 }
35 } 35 }
diff --git a/src/ast/mod.rs b/src/ast/mod.rs
index dc7e006c9..317ed4f45 100644
--- a/src/ast/mod.rs
+++ b/src/ast/mod.rs
@@ -19,14 +19,14 @@ impl File<Arc<SyntaxRoot>> {
19} 19}
20 20
21impl<R: TreeRoot> File<R> { 21impl<R: TreeRoot> File<R> {
22 pub fn functions<'a>(&'a self) -> impl Iterator<Item = FnItem<R>> + 'a { 22 pub fn functions<'a>(&'a self) -> impl Iterator<Item = Function<R>> + 'a {
23 self.syntax() 23 self.syntax()
24 .children() 24 .children()
25 .filter_map(FnItem::cast) 25 .filter_map(Function::cast)
26 } 26 }
27} 27}
28 28
29impl<R: TreeRoot> FnItem<R> { 29impl<R: TreeRoot> Function<R> {
30 pub fn name(&self) -> Option<Name<R>> { 30 pub fn name(&self) -> Option<Name<R>> {
31 self.syntax() 31 self.syntax()
32 .children() 32 .children()
diff --git a/src/grammar.ron b/src/grammar.ron
index b6a870d84..bcc79843a 100644
--- a/src/grammar.ron
+++ b/src/grammar.ron
@@ -110,7 +110,7 @@ Grammar(
110 110
111 "STRUCT_ITEM", 111 "STRUCT_ITEM",
112 "ENUM_ITEM", 112 "ENUM_ITEM",
113 "FN_ITEM", 113 "FUNCTION",
114 "EXTERN_CRATE_ITEM", 114 "EXTERN_CRATE_ITEM",
115 "MOD_ITEM", 115 "MOD_ITEM",
116 "USE_ITEM", 116 "USE_ITEM",
@@ -218,7 +218,7 @@ Grammar(
218 kind: "FILE" 218 kind: "FILE"
219 ), 219 ),
220 ( 220 (
221 kind: "FN_ITEM" 221 kind: "FUNCTION"
222 ), 222 ),
223 ( 223 (
224 kind: "NAME" 224 kind: "NAME"
diff --git a/src/grammar/items/mod.rs b/src/grammar/items/mod.rs
index 824f1296c..3bf906f85 100644
--- a/src/grammar/items/mod.rs
+++ b/src/grammar/items/mod.rs
@@ -107,8 +107,8 @@ pub(super) fn maybe_item(p: &mut Parser) -> MaybeItem {
107 // test unsafe_fn 107 // test unsafe_fn
108 // unsafe fn foo() {} 108 // unsafe fn foo() {}
109 FN_KW => { 109 FN_KW => {
110 fn_item(p); 110 function(p);
111 FN_ITEM 111 FUNCTION
112 } 112 }
113 113
114 // test unsafe_trait 114 // test unsafe_trait
@@ -217,12 +217,12 @@ fn extern_block(p: &mut Parser) {
217 p.expect(R_CURLY); 217 p.expect(R_CURLY);
218} 218}
219 219
220fn fn_item(p: &mut Parser) { 220fn function(p: &mut Parser) {
221 assert!(p.at(FN_KW)); 221 assert!(p.at(FN_KW));
222 p.bump(); 222 p.bump();
223 223
224 name(p); 224 name(p);
225 // test fn_item_type_params 225 // test function_type_params
226 // fn foo<T: Clone + Copy>(){} 226 // fn foo<T: Clone + Copy>(){}
227 type_params::type_param_list(p); 227 type_params::type_param_list(p);
228 228
@@ -231,12 +231,12 @@ fn fn_item(p: &mut Parser) {
231 } else { 231 } else {
232 p.error("expected function arguments"); 232 p.error("expected function arguments");
233 } 233 }
234 // test fn_item_ret_type 234 // test function_ret_type
235 // fn foo() {} 235 // fn foo() {}
236 // fn bar() -> () {} 236 // fn bar() -> () {}
237 fn_ret_type(p); 237 fn_ret_type(p);
238 238
239 // test fn_item_where_clause 239 // test function_where_clause
240 // fn foo<T>() where T: Copy {} 240 // fn foo<T>() where T: Copy {}
241 type_params::where_clause(p); 241 type_params::where_clause(p);
242 242
diff --git a/src/grammar/mod.rs b/src/grammar/mod.rs
index 1e7d04ce9..e1329044d 100644
--- a/src/grammar/mod.rs
+++ b/src/grammar/mod.rs
@@ -14,7 +14,7 @@
14//! `// test name-of-the-test` comment and look like this: 14//! `// test name-of-the-test` comment and look like this:
15//! 15//!
16//! ``` 16//! ```
17//! // test fn_item_with_zero_parameters 17//! // test function_with_zero_parameters
18//! // fn foo() {} 18//! // fn foo() {}
19//! ``` 19//! ```
20//! 20//!
diff --git a/src/syntax_kinds/generated.rs b/src/syntax_kinds/generated.rs
index 84f90c593..de2807ba6 100644
--- a/src/syntax_kinds/generated.rs
+++ b/src/syntax_kinds/generated.rs
@@ -110,7 +110,7 @@ pub enum SyntaxKind {
110 FILE, 110 FILE,
111 STRUCT_ITEM, 111 STRUCT_ITEM,
112 ENUM_ITEM, 112 ENUM_ITEM,
113 FN_ITEM, 113 FUNCTION,
114 EXTERN_CRATE_ITEM, 114 EXTERN_CRATE_ITEM,
115 MOD_ITEM, 115 MOD_ITEM,
116 USE_ITEM, 116 USE_ITEM,
@@ -345,7 +345,7 @@ impl SyntaxKind {
345 FILE => &SyntaxInfo { name: "FILE" }, 345 FILE => &SyntaxInfo { name: "FILE" },
346 STRUCT_ITEM => &SyntaxInfo { name: "STRUCT_ITEM" }, 346 STRUCT_ITEM => &SyntaxInfo { name: "STRUCT_ITEM" },
347 ENUM_ITEM => &SyntaxInfo { name: "ENUM_ITEM" }, 347 ENUM_ITEM => &SyntaxInfo { name: "ENUM_ITEM" },
348 FN_ITEM => &SyntaxInfo { name: "FN_ITEM" }, 348 FUNCTION => &SyntaxInfo { name: "FUNCTION" },
349 EXTERN_CRATE_ITEM => &SyntaxInfo { name: "EXTERN_CRATE_ITEM" }, 349 EXTERN_CRATE_ITEM => &SyntaxInfo { name: "EXTERN_CRATE_ITEM" },
350 MOD_ITEM => &SyntaxInfo { name: "MOD_ITEM" }, 350 MOD_ITEM => &SyntaxInfo { name: "MOD_ITEM" },
351 USE_ITEM => &SyntaxInfo { name: "USE_ITEM" }, 351 USE_ITEM => &SyntaxInfo { name: "USE_ITEM" },
diff --git a/tests/data/parser/err/0005_attribute_recover.txt b/tests/data/parser/err/0005_attribute_recover.txt
index 3f5f0aec9..079b0d1f6 100644
--- a/tests/data/parser/err/0005_attribute_recover.txt
+++ b/tests/data/parser/err/0005_attribute_recover.txt
@@ -1,5 +1,5 @@
1FILE@[0; 54) 1FILE@[0; 54)
2 FN_ITEM@[0; 31) 2 FUNCTION@[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 FN_ITEM@[34; 53) 38 FUNCTION@[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/tests/data/parser/err/0007_stray_curly_in_file.txt b/tests/data/parser/err/0007_stray_curly_in_file.txt
index beca9be38..b36decb46 100644
--- a/tests/data/parser/err/0007_stray_curly_in_file.txt
+++ b/tests/data/parser/err/0007_stray_curly_in_file.txt
@@ -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 FN_ITEM@[17; 27) 17 FUNCTION@[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/tests/data/parser/err/0008_item_block_recovery.txt b/tests/data/parser/err/0008_item_block_recovery.txt
index eb1c8faa6..f2a503cec 100644
--- a/tests/data/parser/err/0008_item_block_recovery.txt
+++ b/tests/data/parser/err/0008_item_block_recovery.txt
@@ -1,5 +1,5 @@
1FILE@[0; 95) 1FILE@[0; 95)
2 FN_ITEM@[0; 12) 2 FUNCTION@[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 FN_ITEM@[82; 94) 54 FUNCTION@[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/tests/data/parser/err/0010_unsafe_lambda_block.txt b/tests/data/parser/err/0010_unsafe_lambda_block.txt
index 0bc6c10b7..95d4af424 100644
--- a/tests/data/parser/err/0010_unsafe_lambda_block.txt
+++ b/tests/data/parser/err/0010_unsafe_lambda_block.txt
@@ -1,5 +1,5 @@
1FILE@[0; 42) 1FILE@[0; 42)
2 FN_ITEM@[0; 41) 2 FUNCTION@[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/tests/data/parser/err/0012_broken_lambda.txt b/tests/data/parser/err/0012_broken_lambda.txt
index f484419a2..cf6e68a78 100644
--- a/tests/data/parser/err/0012_broken_lambda.txt
+++ b/tests/data/parser/err/0012_broken_lambda.txt
@@ -1,5 +1,5 @@
1FILE@[0; 389) 1FILE@[0; 389)
2 FN_ITEM@[0; 389) 2 FUNCTION@[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/tests/data/parser/inline/0001_const_unsafe_fn.txt b/tests/data/parser/inline/0001_const_unsafe_fn.txt
index b1eb657a4..3932d033c 100644
--- a/tests/data/parser/inline/0001_const_unsafe_fn.txt
+++ b/tests/data/parser/inline/0001_const_unsafe_fn.txt
@@ -1,5 +1,5 @@
1FILE@[0; 25) 1FILE@[0; 25)
2 FN_ITEM@[0; 24) 2 FUNCTION@[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/tests/data/parser/inline/0002_const_fn.txt b/tests/data/parser/inline/0002_const_fn.txt
index a83b1d1c7..bc72ab235 100644
--- a/tests/data/parser/inline/0002_const_fn.txt
+++ b/tests/data/parser/inline/0002_const_fn.txt
@@ -1,5 +1,5 @@
1FILE@[0; 18) 1FILE@[0; 18)
2 FN_ITEM@[0; 17) 2 FUNCTION@[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/tests/data/parser/inline/0004_extern_fn.txt b/tests/data/parser/inline/0004_extern_fn.txt
index 247fb229d..e7787d4ab 100644
--- a/tests/data/parser/inline/0004_extern_fn.txt
+++ b/tests/data/parser/inline/0004_extern_fn.txt
@@ -1,5 +1,5 @@
1FILE@[0; 19) 1FILE@[0; 19)
2 FN_ITEM@[0; 18) 2 FUNCTION@[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/tests/data/parser/inline/0011_unsafe_fn.txt b/tests/data/parser/inline/0011_unsafe_fn.txt
index 3af80b1f8..9e5dcafa6 100644
--- a/tests/data/parser/inline/0011_unsafe_fn.txt
+++ b/tests/data/parser/inline/0011_unsafe_fn.txt
@@ -1,5 +1,5 @@
1FILE@[0; 19) 1FILE@[0; 19)
2 FN_ITEM@[0; 18) 2 FUNCTION@[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/tests/data/parser/inline/0012_unsafe_extern_fn.txt b/tests/data/parser/inline/0012_unsafe_extern_fn.txt
index af502740e..7ed4d42c1 100644
--- a/tests/data/parser/inline/0012_unsafe_extern_fn.txt
+++ b/tests/data/parser/inline/0012_unsafe_extern_fn.txt
@@ -1,5 +1,5 @@
1FILE@[0; 30) 1FILE@[0; 30)
2 FN_ITEM@[0; 29) 2 FUNCTION@[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/tests/data/parser/inline/0013_unsafe_block_in_mod.txt b/tests/data/parser/inline/0013_unsafe_block_in_mod.txt
index 9cf820bd2..d1bcffe77 100644
--- a/tests/data/parser/inline/0013_unsafe_block_in_mod.txt
+++ b/tests/data/parser/inline/0013_unsafe_block_in_mod.txt
@@ -1,5 +1,5 @@
1FILE@[0; 33) 1FILE@[0; 33)
2 FN_ITEM@[0; 10) 2 FUNCTION@[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 FN_ITEM@[22; 32) 24 FUNCTION@[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/tests/data/parser/inline/0034_bind_pat.txt b/tests/data/parser/inline/0034_bind_pat.txt
index 3ce7057f6..e8e4e4c2b 100644
--- a/tests/data/parser/inline/0034_bind_pat.txt
+++ b/tests/data/parser/inline/0034_bind_pat.txt
@@ -1,5 +1,5 @@
1FILE@[0; 146) 1FILE@[0; 146)
2 FN_ITEM@[0; 145) 2 FUNCTION@[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/tests/data/parser/inline/0035_ref_pat.txt b/tests/data/parser/inline/0035_ref_pat.txt
index 68bd89f4e..6fbffd8b7 100644
--- a/tests/data/parser/inline/0035_ref_pat.txt
+++ b/tests/data/parser/inline/0035_ref_pat.txt
@@ -1,5 +1,5 @@
1FILE@[0; 52) 1FILE@[0; 52)
2 FN_ITEM@[0; 51) 2 FUNCTION@[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/tests/data/parser/inline/0036_placeholder_pat.txt b/tests/data/parser/inline/0036_placeholder_pat.txt
index fc002b112..8c63cdfae 100644
--- a/tests/data/parser/inline/0036_placeholder_pat.txt
+++ b/tests/data/parser/inline/0036_placeholder_pat.txt
@@ -1,5 +1,5 @@
1FILE@[0; 26) 1FILE@[0; 26)
2 FN_ITEM@[0; 25) 2 FUNCTION@[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/tests/data/parser/inline/0038_fn_item_ret_type.rs b/tests/data/parser/inline/0038_function_ret_type.rs
index d22d8cada..d22d8cada 100644
--- a/tests/data/parser/inline/0038_fn_item_ret_type.rs
+++ b/tests/data/parser/inline/0038_function_ret_type.rs
diff --git a/tests/data/parser/inline/0038_fn_item_ret_type.txt b/tests/data/parser/inline/0038_function_ret_type.txt
index a6157445c..58583eefe 100644
--- a/tests/data/parser/inline/0038_fn_item_ret_type.txt
+++ b/tests/data/parser/inline/0038_function_ret_type.txt
@@ -1,5 +1,5 @@
1FILE@[0; 30) 1FILE@[0; 30)
2 FN_ITEM@[0; 11) 2 FUNCTION@[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 FN_ITEM@[12; 29) 15 FUNCTION@[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/tests/data/parser/inline/0039_path_expr.txt b/tests/data/parser/inline/0039_path_expr.txt
index 90eab65f6..8b505774f 100644
--- a/tests/data/parser/inline/0039_path_expr.txt
+++ b/tests/data/parser/inline/0039_path_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 91) 1FILE@[0; 91)
2 FN_ITEM@[0; 90) 2 FUNCTION@[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/tests/data/parser/inline/0040_expr_literals.txt b/tests/data/parser/inline/0040_expr_literals.txt
index bc651c2a9..192b62211 100644
--- a/tests/data/parser/inline/0040_expr_literals.txt
+++ b/tests/data/parser/inline/0040_expr_literals.txt
@@ -1,5 +1,5 @@
1FILE@[0; 189) 1FILE@[0; 189)
2 FN_ITEM@[0; 188) 2 FUNCTION@[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/tests/data/parser/inline/0043_call_expr.txt b/tests/data/parser/inline/0043_call_expr.txt
index 4277d5dc8..f4789d2d9 100644
--- a/tests/data/parser/inline/0043_call_expr.txt
+++ b/tests/data/parser/inline/0043_call_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 57) 1FILE@[0; 57)
2 FN_ITEM@[0; 56) 2 FUNCTION@[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/tests/data/parser/inline/0044_ref_expr.txt b/tests/data/parser/inline/0044_ref_expr.txt
index 29b1be957..05f6c015a 100644
--- a/tests/data/parser/inline/0044_ref_expr.txt
+++ b/tests/data/parser/inline/0044_ref_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 52) 1FILE@[0; 52)
2 FN_ITEM@[0; 51) 2 FUNCTION@[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/tests/data/parser/inline/0045_block.txt b/tests/data/parser/inline/0045_block.txt
index f68e55e1d..8519101c3 100644
--- a/tests/data/parser/inline/0045_block.txt
+++ b/tests/data/parser/inline/0045_block.txt
@@ -1,5 +1,5 @@
1FILE@[0; 65) 1FILE@[0; 65)
2 FN_ITEM@[0; 9) 2 FUNCTION@[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 FN_ITEM@[10; 31) 15 FUNCTION@[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 FN_ITEM@[32; 48) 41 FUNCTION@[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 FN_ITEM@[49; 64) 65 FUNCTION@[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/tests/data/parser/inline/0050_let_stmt;.txt b/tests/data/parser/inline/0050_let_stmt;.txt
index cac6bac3f..44e357092 100644
--- a/tests/data/parser/inline/0050_let_stmt;.txt
+++ b/tests/data/parser/inline/0050_let_stmt;.txt
@@ -1,5 +1,5 @@
1FILE@[0; 77) 1FILE@[0; 77)
2 FN_ITEM@[0; 76) 2 FUNCTION@[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/tests/data/parser/inline/0051_method_call_expr.txt b/tests/data/parser/inline/0051_method_call_expr.txt
index 189c8628f..aafb2d5f1 100644
--- a/tests/data/parser/inline/0051_method_call_expr.txt
+++ b/tests/data/parser/inline/0051_method_call_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 49) 1FILE@[0; 49)
2 FN_ITEM@[0; 48) 2 FUNCTION@[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/tests/data/parser/inline/0052_field_expr.txt b/tests/data/parser/inline/0052_field_expr.txt
index b3e3bcde4..213884f90 100644
--- a/tests/data/parser/inline/0052_field_expr.txt
+++ b/tests/data/parser/inline/0052_field_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 37) 1FILE@[0; 37)
2 FN_ITEM@[0; 36) 2 FUNCTION@[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/tests/data/parser/inline/0053_block_items.txt b/tests/data/parser/inline/0053_block_items.txt
index 3ba2e386c..c5498532b 100644
--- a/tests/data/parser/inline/0053_block_items.txt
+++ b/tests/data/parser/inline/0053_block_items.txt
@@ -1,5 +1,5 @@
1FILE@[0; 21) 1FILE@[0; 21)
2 FN_ITEM@[0; 20) 2 FUNCTION@[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 FN_ITEM@[9; 18) 14 FUNCTION@[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/tests/data/parser/inline/0054_impl_item_items.txt b/tests/data/parser/inline/0054_impl_item_items.txt
index 89a3ae87f..739ecbbcd 100644
--- a/tests/data/parser/inline/0054_impl_item_items.txt
+++ b/tests/data/parser/inline/0054_impl_item_items.txt
@@ -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 FN_ITEM@[54; 65) 47 FUNCTION@[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 FN_ITEM@[70; 86) 60 FUNCTION@[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/tests/data/parser/inline/0055_self_param.txt b/tests/data/parser/inline/0055_self_param.txt
index 5c62b75cc..1275fb8b1 100644
--- a/tests/data/parser/inline/0055_self_param.txt
+++ b/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 FN_ITEM@[13; 26) 13 FUNCTION@[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 FN_ITEM@[31; 46) 28 FUNCTION@[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 FN_ITEM@[51; 69) 45 FUNCTION@[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 FN_ITEM@[74; 103) 64 FUNCTION@[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/tests/data/parser/inline/0059_fn_item_where_clause.rs b/tests/data/parser/inline/0059_function_where_clause.rs
index f0920b2a8..f0920b2a8 100644
--- a/tests/data/parser/inline/0059_fn_item_where_clause.rs
+++ b/tests/data/parser/inline/0059_function_where_clause.rs
diff --git a/tests/data/parser/inline/0059_fn_item_where_clause.txt b/tests/data/parser/inline/0059_function_where_clause.txt
index afedf983e..065b0fd21 100644
--- a/tests/data/parser/inline/0059_fn_item_where_clause.txt
+++ b/tests/data/parser/inline/0059_function_where_clause.txt
@@ -1,5 +1,5 @@
1FILE@[0; 29) 1FILE@[0; 29)
2 FN_ITEM@[0; 28) 2 FUNCTION@[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/tests/data/parser/inline/0060_fn_item_type_params.rs b/tests/data/parser/inline/0060_function_type_params.rs
index 9df40ed39..9df40ed39 100644
--- a/tests/data/parser/inline/0060_fn_item_type_params.rs
+++ b/tests/data/parser/inline/0060_function_type_params.rs
diff --git a/tests/data/parser/inline/0060_fn_item_type_params.txt b/tests/data/parser/inline/0060_function_type_params.txt
index 492bafdf0..8809ebc04 100644
--- a/tests/data/parser/inline/0060_fn_item_type_params.txt
+++ b/tests/data/parser/inline/0060_function_type_params.txt
@@ -1,5 +1,5 @@
1FILE@[0; 28) 1FILE@[0; 28)
2 FN_ITEM@[0; 27) 2 FUNCTION@[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/tests/data/parser/inline/0061_struct_lit.txt b/tests/data/parser/inline/0061_struct_lit.txt
index f602f18f0..1d048c5ba 100644
--- a/tests/data/parser/inline/0061_struct_lit.txt
+++ b/tests/data/parser/inline/0061_struct_lit.txt
@@ -1,5 +1,5 @@
1FILE@[0; 86) 1FILE@[0; 86)
2 FN_ITEM@[0; 85) 2 FUNCTION@[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/tests/data/parser/inline/0063_lambda_expr.txt b/tests/data/parser/inline/0063_lambda_expr.txt
index 9d2c0f8fc..122a99e52 100644
--- a/tests/data/parser/inline/0063_lambda_expr.txt
+++ b/tests/data/parser/inline/0063_lambda_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 74) 1FILE@[0; 74)
2 FN_ITEM@[0; 74) 2 FUNCTION@[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/tests/data/parser/inline/0064_param_list.txt b/tests/data/parser/inline/0064_param_list.txt
index f172851f0..14db495b9 100644
--- a/tests/data/parser/inline/0064_param_list.txt
+++ b/tests/data/parser/inline/0064_param_list.txt
@@ -1,5 +1,5 @@
1FILE@[0; 67) 1FILE@[0; 67)
2 FN_ITEM@[0; 9) 2 FUNCTION@[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 FN_ITEM@[10; 25) 15 FUNCTION@[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 FN_ITEM@[26; 43) 39 FUNCTION@[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 FN_ITEM@[44; 66) 65 FUNCTION@[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/tests/data/parser/inline/0065_if_expr.txt b/tests/data/parser/inline/0065_if_expr.txt
index ab32d6990..6ed53264a 100644
--- a/tests/data/parser/inline/0065_if_expr.txt
+++ b/tests/data/parser/inline/0065_if_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 107) 1FILE@[0; 107)
2 FN_ITEM@[0; 106) 2 FUNCTION@[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/tests/data/parser/inline/0066_lambda_expr.txt b/tests/data/parser/inline/0066_lambda_expr.txt
index 388c61ad5..6d9aeb331 100644
--- a/tests/data/parser/inline/0066_lambda_expr.txt
+++ b/tests/data/parser/inline/0066_lambda_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 79) 1FILE@[0; 79)
2 FN_ITEM@[0; 78) 2 FUNCTION@[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/tests/data/parser/inline/0067_block_expr.txt b/tests/data/parser/inline/0067_block_expr.txt
index 41f714312..981f39e6e 100644
--- a/tests/data/parser/inline/0067_block_expr.txt
+++ b/tests/data/parser/inline/0067_block_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 36) 1FILE@[0; 36)
2 FN_ITEM@[0; 35) 2 FUNCTION@[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/tests/data/parser/inline/0068_pub_expr.txt b/tests/data/parser/inline/0068_pub_expr.txt
index ee691f25e..92e58938b 100644
--- a/tests/data/parser/inline/0068_pub_expr.txt
+++ b/tests/data/parser/inline/0068_pub_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 29) 1FILE@[0; 29)
2 FN_ITEM@[0; 20) 2 FUNCTION@[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/tests/data/parser/inline/0068_return_expr.txt b/tests/data/parser/inline/0068_return_expr.txt
index 683a3dc8f..4e4ec85b6 100644
--- a/tests/data/parser/inline/0068_return_expr.txt
+++ b/tests/data/parser/inline/0068_return_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 40) 1FILE@[0; 40)
2 FN_ITEM@[0; 39) 2 FUNCTION@[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/tests/data/parser/inline/0069_match_arm.txt b/tests/data/parser/inline/0069_match_arm.txt
index 3446dfa43..3377e8342 100644
--- a/tests/data/parser/inline/0069_match_arm.txt
+++ b/tests/data/parser/inline/0069_match_arm.txt
@@ -1,5 +1,5 @@
1FILE@[0; 78) 1FILE@[0; 78)
2 FN_ITEM@[0; 77) 2 FUNCTION@[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/tests/data/parser/inline/0070_match_expr.txt b/tests/data/parser/inline/0070_match_expr.txt
index e003f0878..f9ba54486 100644
--- a/tests/data/parser/inline/0070_match_expr.txt
+++ b/tests/data/parser/inline/0070_match_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 47) 1FILE@[0; 47)
2 FN_ITEM@[0; 46) 2 FUNCTION@[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/tests/data/parser/inline/0071_tuple_pat_fields.txt b/tests/data/parser/inline/0071_tuple_pat_fields.txt
index 1eca6d370..f54835277 100644
--- a/tests/data/parser/inline/0071_tuple_pat_fields.txt
+++ b/tests/data/parser/inline/0071_tuple_pat_fields.txt
@@ -1,5 +1,5 @@
1FILE@[0; 97) 1FILE@[0; 97)
2 FN_ITEM@[0; 96) 2 FUNCTION@[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/tests/data/parser/inline/0072_path_part.txt b/tests/data/parser/inline/0072_path_part.txt
index 0c7865998..20da5de86 100644
--- a/tests/data/parser/inline/0072_path_part.txt
+++ b/tests/data/parser/inline/0072_path_part.txt
@@ -1,5 +1,5 @@
1FILE@[0; 103) 1FILE@[0; 103)
2 FN_ITEM@[0; 102) 2 FUNCTION@[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/tests/data/parser/inline/0073_struct_pat_fields.txt b/tests/data/parser/inline/0073_struct_pat_fields.txt
index 8482edd3c..fc0d44f7a 100644
--- a/tests/data/parser/inline/0073_struct_pat_fields.txt
+++ b/tests/data/parser/inline/0073_struct_pat_fields.txt
@@ -1,5 +1,5 @@
1FILE@[0; 119) 1FILE@[0; 119)
2 FN_ITEM@[0; 118) 2 FUNCTION@[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/tests/data/parser/inline/0074_unary_expr.txt b/tests/data/parser/inline/0074_unary_expr.txt
index 072b805ad..e0b4ff964 100644
--- a/tests/data/parser/inline/0074_unary_expr.txt
+++ b/tests/data/parser/inline/0074_unary_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 44) 1FILE@[0; 44)
2 FN_ITEM@[0; 43) 2 FUNCTION@[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/tests/data/parser/inline/0075_try_expr.txt b/tests/data/parser/inline/0075_try_expr.txt
index 2cfd0e368..f7b86f269 100644
--- a/tests/data/parser/inline/0075_try_expr.txt
+++ b/tests/data/parser/inline/0075_try_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 21) 1FILE@[0; 21)
2 FN_ITEM@[0; 20) 2 FUNCTION@[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/tests/data/parser/inline/0076_cond.txt b/tests/data/parser/inline/0076_cond.txt
index e8cf677cf..0cde88a90 100644
--- a/tests/data/parser/inline/0076_cond.txt
+++ b/tests/data/parser/inline/0076_cond.txt
@@ -1,5 +1,5 @@
1FILE@[0; 38) 1FILE@[0; 38)
2 FN_ITEM@[0; 37) 2 FUNCTION@[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/tests/data/parser/inline/0077_while_expr.txt b/tests/data/parser/inline/0077_while_expr.txt
index 5c936a607..82e63fd46 100644
--- a/tests/data/parser/inline/0077_while_expr.txt
+++ b/tests/data/parser/inline/0077_while_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 70) 1FILE@[0; 70)
2 FN_ITEM@[0; 69) 2 FUNCTION@[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/tests/data/parser/inline/0078_mod_contents.txt b/tests/data/parser/inline/0078_mod_contents.txt
index 482e36534..c003d24e1 100644
--- a/tests/data/parser/inline/0078_mod_contents.txt
+++ b/tests/data/parser/inline/0078_mod_contents.txt
@@ -1,5 +1,5 @@
1FILE@[0; 70) 1FILE@[0; 70)
2 FN_ITEM@[0; 11) 2 FUNCTION@[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)
diff --git a/tests/data/parser/inline/0079_cast_expr.txt b/tests/data/parser/inline/0079_cast_expr.txt
index 78210f0d5..642557e15 100644
--- a/tests/data/parser/inline/0079_cast_expr.txt
+++ b/tests/data/parser/inline/0079_cast_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 28) 1FILE@[0; 28)
2 FN_ITEM@[0; 27) 2 FUNCTION@[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/tests/data/parser/inline/0080_tuple_expr.txt b/tests/data/parser/inline/0080_tuple_expr.txt
index 949faf30c..728ba6ec7 100644
--- a/tests/data/parser/inline/0080_tuple_expr.txt
+++ b/tests/data/parser/inline/0080_tuple_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 40) 1FILE@[0; 40)
2 FN_ITEM@[0; 39) 2 FUNCTION@[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/tests/data/parser/inline/0081_index_expr.txt b/tests/data/parser/inline/0081_index_expr.txt
index cde5735a2..80af4caed 100644
--- a/tests/data/parser/inline/0081_index_expr.txt
+++ b/tests/data/parser/inline/0081_index_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 26) 1FILE@[0; 26)
2 FN_ITEM@[0; 25) 2 FUNCTION@[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/tests/data/parser/inline/0082_tuple_pat.txt b/tests/data/parser/inline/0082_tuple_pat.txt
index 6c2f25d36..d8314b5d8 100644
--- a/tests/data/parser/inline/0082_tuple_pat.txt
+++ b/tests/data/parser/inline/0082_tuple_pat.txt
@@ -1,5 +1,5 @@
1FILE@[0; 39) 1FILE@[0; 39)
2 FN_ITEM@[0; 38) 2 FUNCTION@[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/tests/data/parser/inline/0083_postfix_range.txt b/tests/data/parser/inline/0083_postfix_range.txt
index ff2ed056e..bf9b2c695 100644
--- a/tests/data/parser/inline/0083_postfix_range.txt
+++ b/tests/data/parser/inline/0083_postfix_range.txt
@@ -1,5 +1,5 @@
1FILE@[0; 26) 1FILE@[0; 26)
2 FN_ITEM@[0; 25) 2 FUNCTION@[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/tests/data/parser/inline/0084_loop_expr.txt b/tests/data/parser/inline/0084_loop_expr.txt
index 967c283c5..5e0de55d4 100644
--- a/tests/data/parser/inline/0084_loop_expr.txt
+++ b/tests/data/parser/inline/0084_loop_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 26) 1FILE@[0; 26)
2 FN_ITEM@[0; 25) 2 FUNCTION@[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/tests/data/parser/inline/0085_for_expr.txt b/tests/data/parser/inline/0085_for_expr.txt
index f96139314..3a378cfcf 100644
--- a/tests/data/parser/inline/0085_for_expr.txt
+++ b/tests/data/parser/inline/0085_for_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 33) 1FILE@[0; 33)
2 FN_ITEM@[0; 32) 2 FUNCTION@[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/tests/data/parser/inline/0085_match_arms_commas.txt b/tests/data/parser/inline/0085_match_arms_commas.txt
index 6dfc6c9dd..5465a3797 100644
--- a/tests/data/parser/inline/0085_match_arms_commas.txt
+++ b/tests/data/parser/inline/0085_match_arms_commas.txt
@@ -1,5 +1,5 @@
1FILE@[0; 83) 1FILE@[0; 83)
2 FN_ITEM@[0; 82) 2 FUNCTION@[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/tests/data/parser/inline/0086_array_expr.txt b/tests/data/parser/inline/0086_array_expr.txt
index f72b11617..9a5f56edf 100644
--- a/tests/data/parser/inline/0086_array_expr.txt
+++ b/tests/data/parser/inline/0086_array_expr.txt
@@ -1,5 +1,5 @@
1FILE@[0; 55) 1FILE@[0; 55)
2 FN_ITEM@[0; 54) 2 FUNCTION@[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/tests/data/parser/inline/0086_no_semi_after_block.txt b/tests/data/parser/inline/0086_no_semi_after_block.txt
index dd05a8a9f..d19a270ac 100644
--- a/tests/data/parser/inline/0086_no_semi_after_block.txt
+++ b/tests/data/parser/inline/0086_no_semi_after_block.txt
@@ -1,5 +1,5 @@
1FILE@[0; 107) 1FILE@[0; 107)
2 FN_ITEM@[0; 106) 2 FUNCTION@[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/tests/data/parser/inline/0087_stmt_postfix_expr_ambiguity.txt b/tests/data/parser/inline/0087_stmt_postfix_expr_ambiguity.txt
index 47b4d4481..e83b6d183 100644
--- a/tests/data/parser/inline/0087_stmt_postfix_expr_ambiguity.txt
+++ b/tests/data/parser/inline/0087_stmt_postfix_expr_ambiguity.txt
@@ -1,5 +1,5 @@
1FILE@[0; 84) 1FILE@[0; 84)
2 FN_ITEM@[0; 83) 2 FUNCTION@[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/tests/data/parser/inline/0088_stmt_bin_expr_ambiguity.txt b/tests/data/parser/inline/0088_stmt_bin_expr_ambiguity.txt
index df0aa44b3..df4c20b0e 100644
--- a/tests/data/parser/inline/0088_stmt_bin_expr_ambiguity.txt
+++ b/tests/data/parser/inline/0088_stmt_bin_expr_ambiguity.txt
@@ -1,5 +1,5 @@
1FILE@[0; 46) 1FILE@[0; 46)
2 FN_ITEM@[0; 45) 2 FUNCTION@[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/tests/data/parser/inline/0089_slice_pat.txt b/tests/data/parser/inline/0089_slice_pat.txt
index 1e7f20119..8379df33b 100644
--- a/tests/data/parser/inline/0089_slice_pat.txt
+++ b/tests/data/parser/inline/0089_slice_pat.txt
@@ -1,5 +1,5 @@
1FILE@[0; 39) 1FILE@[0; 39)
2 FN_ITEM@[0; 38) 2 FUNCTION@[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/tests/data/parser/inline/0090_trait_item_items.txt b/tests/data/parser/inline/0090_trait_item_items.txt
index 2350bbe82..c04c48588 100644
--- a/tests/data/parser/inline/0090_trait_item_items.txt
+++ b/tests/data/parser/inline/0090_trait_item_items.txt
@@ -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 FN_ITEM@[50; 61) 40 FUNCTION@[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 FN_ITEM@[66; 80) 53 FUNCTION@[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/tests/data/parser/inline/0091_fn_decl.txt b/tests/data/parser/inline/0091_fn_decl.txt
index e5e5bfc08..5a76af652 100644
--- a/tests/data/parser/inline/0091_fn_decl.txt
+++ b/tests/data/parser/inline/0091_fn_decl.txt
@@ -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 FN_ITEM@[10; 19) 10 FUNCTION@[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/tests/data/parser/inline/0092_literal_pattern.txt b/tests/data/parser/inline/0092_literal_pattern.txt
index 08ade31fb..a2f985408 100644
--- a/tests/data/parser/inline/0092_literal_pattern.txt
+++ b/tests/data/parser/inline/0092_literal_pattern.txt
@@ -1,5 +1,5 @@
1FILE@[0; 95) 1FILE@[0; 95)
2 FN_ITEM@[0; 94) 2 FUNCTION@[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/tests/data/parser/inline/0094_range_pat.txt b/tests/data/parser/inline/0094_range_pat.txt
index 01aed336b..cb858044a 100644
--- a/tests/data/parser/inline/0094_range_pat.txt
+++ b/tests/data/parser/inline/0094_range_pat.txt
@@ -1,5 +1,5 @@
1FILE@[0; 47) 1FILE@[0; 47)
2 FN_ITEM@[0; 46) 2 FUNCTION@[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/tests/data/parser/inline/0095_path_type_with_bounds.txt b/tests/data/parser/inline/0095_path_type_with_bounds.txt
index aeda229d5..57c38e7ee 100644
--- a/tests/data/parser/inline/0095_path_type_with_bounds.txt
+++ b/tests/data/parser/inline/0095_path_type_with_bounds.txt
@@ -1,5 +1,5 @@
1FILE@[0; 27) 1FILE@[0; 27)
2 FN_ITEM@[0; 26) 2 FUNCTION@[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/tests/data/parser/inline/0097_param_list_opt_patterns.txt b/tests/data/parser/inline/0097_param_list_opt_patterns.txt
index f8a37aebb..4cb3bdac5 100644
--- a/tests/data/parser/inline/0097_param_list_opt_patterns.txt
+++ b/tests/data/parser/inline/0097_param_list_opt_patterns.txt
@@ -1,5 +1,5 @@
1FILE@[0; 35) 1FILE@[0; 35)
2 FN_ITEM@[0; 34) 2 FUNCTION@[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/tests/data/parser/inline/0098_where_clause.txt b/tests/data/parser/inline/0098_where_clause.txt
index a1180b554..150f125a7 100644
--- a/tests/data/parser/inline/0098_where_clause.txt
+++ b/tests/data/parser/inline/0098_where_clause.txt
@@ -1,5 +1,5 @@
1FILE@[0; 87) 1FILE@[0; 87)
2 FN_ITEM@[0; 86) 2 FUNCTION@[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/tests/data/parser/inline/0099_crate_keyword_vis.txt b/tests/data/parser/inline/0099_crate_keyword_vis.txt
index 25e6d1759..a830d99d9 100644
--- a/tests/data/parser/inline/0099_crate_keyword_vis.txt
+++ b/tests/data/parser/inline/0099_crate_keyword_vis.txt
@@ -1,5 +1,5 @@
1FILE@[0; 20) 1FILE@[0; 20)
2 FN_ITEM@[0; 19) 2 FUNCTION@[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/tests/data/parser/ok/0005_fn_item.txt b/tests/data/parser/ok/0005_fn_item.txt
index 78ed3dffe..4ab93d408 100644
--- a/tests/data/parser/ok/0005_fn_item.txt
+++ b/tests/data/parser/ok/0005_fn_item.txt
@@ -1,5 +1,5 @@
1FILE@[0; 13) 1FILE@[0; 13)
2 FN_ITEM@[0; 12) 2 FUNCTION@[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/tests/data/parser/ok/0008_mod_item.txt b/tests/data/parser/ok/0008_mod_item.txt
index 4af763ec9..1dcaaedce 100644
--- a/tests/data/parser/ok/0008_mod_item.txt
+++ b/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 FN_ITEM@[31; 47) 27 FUNCTION@[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)
diff --git a/tests/data/parser/ok/0011_outer_attribute.txt b/tests/data/parser/ok/0011_outer_attribute.txt
index f5c21ee10..9824c9083 100644
--- a/tests/data/parser/ok/0011_outer_attribute.txt
+++ b/tests/data/parser/ok/0011_outer_attribute.txt
@@ -1,5 +1,5 @@
1FILE@[0; 35) 1FILE@[0; 35)
2 FN_ITEM@[0; 34) 2 FUNCTION@[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/tests/data/parser/ok/0012_visibility.txt b/tests/data/parser/ok/0012_visibility.txt
index 01edc871a..af0c59543 100644
--- a/tests/data/parser/ok/0012_visibility.txt
+++ b/tests/data/parser/ok/0012_visibility.txt
@@ -1,5 +1,5 @@
1FILE@[0; 98) 1FILE@[0; 98)
2 FN_ITEM@[0; 9) 2 FUNCTION@[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 FN_ITEM@[10; 23) 15 FUNCTION@[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 FN_ITEM@[24; 44) 31 FUNCTION@[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 FN_ITEM@[45; 65) 50 FUNCTION@[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 FN_ITEM@[66; 97) 69 FUNCTION@[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/tests/data/parser/ok/0017_attr_trailing_comma.txt b/tests/data/parser/ok/0017_attr_trailing_comma.txt
index c0e687274..69724cdc8 100644
--- a/tests/data/parser/ok/0017_attr_trailing_comma.txt
+++ b/tests/data/parser/ok/0017_attr_trailing_comma.txt
@@ -1,5 +1,5 @@
1FILE@[0; 23) 1FILE@[0; 23)
2 FN_ITEM@[0; 22) 2 FUNCTION@[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/tests/data/parser/ok/0021_extern_fn.txt b/tests/data/parser/ok/0021_extern_fn.txt
index 241e458ae..07d5cc157 100644
--- a/tests/data/parser/ok/0021_extern_fn.txt
+++ b/tests/data/parser/ok/0021_extern_fn.txt
@@ -1,5 +1,5 @@
1FILE@[0; 71) 1FILE@[0; 71)
2 FN_ITEM@[0; 19) 2 FUNCTION@[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 FN_ITEM@[21; 44) 19 FUNCTION@[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 FN_ITEM@[46; 70) 38 FUNCTION@[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/tests/data/parser/ok/0025_extern_fn_in_block.txt b/tests/data/parser/ok/0025_extern_fn_in_block.txt
index 4e69a410c..46fb177b2 100644
--- a/tests/data/parser/ok/0025_extern_fn_in_block.txt
+++ b/tests/data/parser/ok/0025_extern_fn_in_block.txt
@@ -1,5 +1,5 @@
1FILE@[0; 35) 1FILE@[0; 35)
2 FN_ITEM@[0; 34) 2 FUNCTION@[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 FN_ITEM@[16; 32) 14 FUNCTION@[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/tests/data/parser/ok/0026_const_fn_in_block.txt b/tests/data/parser/ok/0026_const_fn_in_block.txt
index c474f884f..a450762a8 100644
--- a/tests/data/parser/ok/0026_const_fn_in_block.txt
+++ b/tests/data/parser/ok/0026_const_fn_in_block.txt
@@ -1,5 +1,5 @@
1FILE@[0; 34) 1FILE@[0; 34)
2 FN_ITEM@[0; 33) 2 FUNCTION@[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 FN_ITEM@[16; 31) 14 FUNCTION@[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/tests/data/parser/ok/0027_unsafe_fn_in_block.txt b/tests/data/parser/ok/0027_unsafe_fn_in_block.txt
index 8e6124b0d..28cd7ad3d 100644
--- a/tests/data/parser/ok/0027_unsafe_fn_in_block.txt
+++ b/tests/data/parser/ok/0027_unsafe_fn_in_block.txt
@@ -1,5 +1,5 @@
1FILE@[0; 53) 1FILE@[0; 53)
2 FN_ITEM@[0; 52) 2 FUNCTION@[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 FN_ITEM@[16; 32) 14 FUNCTION@[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/tests/data/parser/ok/0028_operator_binding_power.txt b/tests/data/parser/ok/0028_operator_binding_power.txt
index 2cabd289e..3fb1ae811 100644
--- a/tests/data/parser/ok/0028_operator_binding_power.txt
+++ b/tests/data/parser/ok/0028_operator_binding_power.txt
@@ -1,5 +1,5 @@
1FILE@[0; 248) 1FILE@[0; 248)
2 FN_ITEM@[0; 247) 2 FUNCTION@[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/tests/data/parser/ok/0029_range_forms.txt b/tests/data/parser/ok/0029_range_forms.txt
index 2dbc6bdee..91d5e5bba 100644
--- a/tests/data/parser/ok/0029_range_forms.txt
+++ b/tests/data/parser/ok/0029_range_forms.txt
@@ -1,5 +1,5 @@
1FILE@[0; 79) 1FILE@[0; 79)
2 FN_ITEM@[0; 78) 2 FUNCTION@[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)