aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--crates/ra_assists/src/doc_tests/generated.rs4
-rw-r--r--crates/ra_assists/src/handlers/add_missing_impl_members.rs194
-rw-r--r--crates/ra_assists/src/handlers/early_return.rs16
-rw-r--r--crates/ra_assists/src/handlers/inline_local_variable.rs1
-rw-r--r--crates/ra_assists/src/handlers/introduce_variable.rs2
-rw-r--r--crates/ra_assists/src/handlers/move_guard.rs4
-rw-r--r--crates/ra_fmt/src/lib.rs1
-rw-r--r--crates/ra_hir_def/src/body/lower.rs24
-rw-r--r--crates/ra_hir_expand/src/db.rs3
-rw-r--r--crates/ra_hir_ty/src/tests/simple.rs32
-rw-r--r--crates/ra_ide/src/completion/completion_context.rs2
-rw-r--r--crates/ra_ide/src/folding_ranges.rs2
-rw-r--r--crates/ra_ide/src/join_lines.rs3
-rw-r--r--crates/ra_ide/src/syntax_tree.rs77
-rw-r--r--crates/ra_mbe/src/tests.rs152
-rw-r--r--crates/ra_parser/src/grammar.rs2
-rw-r--r--crates/ra_parser/src/grammar/expressions.rs13
-rw-r--r--crates/ra_parser/src/grammar/expressions/atom.rs35
-rw-r--r--crates/ra_parser/src/syntax_kind/generated.rs3
-rw-r--r--crates/ra_syntax/src/ast.rs2
-rw-r--r--crates/ra_syntax/src/ast/edit.rs2
-rw-r--r--crates/ra_syntax/src/ast/expr_extensions.rs40
-rw-r--r--crates/ra_syntax/src/ast/generated/nodes.rs74
-rw-r--r--crates/ra_syntax/src/ast/make.rs8
-rw-r--r--crates/ra_syntax/src/lib.rs7
-rw-r--r--crates/ra_syntax/src/validation/block.rs20
-rw-r--r--crates/ra_syntax/test_data/parser/err/0005_attribute_recover.rast7
-rw-r--r--crates/ra_syntax/test_data/parser/err/0007_stray_curly_in_file.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/err/0008_item_block_recovery.rast52
-rw-r--r--crates/ra_syntax/test_data/parser/err/0010_unsafe_lambda_block.rast61
-rw-r--r--crates/ra_syntax/test_data/parser/err/0014_where_no_bounds.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/err/0016_missing_semi.rast61
-rw-r--r--crates/ra_syntax/test_data/parser/err/0017_incomplete_binexpr.rast45
-rw-r--r--crates/ra_syntax/test_data/parser/err/0018_incomplete_fn.rast165
-rw-r--r--crates/ra_syntax/test_data/parser/err/0019_let_recover.rast166
-rw-r--r--crates/ra_syntax/test_data/parser/err/0020_fn_recover.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/err/0021_incomplete_param.rast7
-rw-r--r--crates/ra_syntax/test_data/parser/err/0022_bad_exprs.rast229
-rw-r--r--crates/ra_syntax/test_data/parser/err/0023_mismatched_paren.rast49
-rw-r--r--crates/ra_syntax/test_data/parser/err/0024_many_type_parens.rast430
-rw-r--r--crates/ra_syntax/test_data/parser/err/0025_nope.rast360
-rw-r--r--crates/ra_syntax/test_data/parser/err/0027_incomplere_where_for.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/err/0029_field_completion.rast23
-rw-r--r--crates/ra_syntax/test_data/parser/err/0031_block_inner_attrs.rast214
-rw-r--r--crates/ra_syntax/test_data/parser/err/0032_match_arms_inner_attrs.rast361
-rw-r--r--crates/ra_syntax/test_data/parser/err/0033_match_arms_outer_attrs.rast103
-rw-r--r--crates/ra_syntax/test_data/parser/err/0034_bad_box_pattern.rast155
-rw-r--r--crates/ra_syntax/test_data/parser/err/0035_use_recover.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/err/0037_visibility_in_traits.rast10
-rw-r--r--crates/ra_syntax/test_data/parser/err/0038_endless_inclusive_range.rast31
-rw-r--r--crates/ra_syntax/test_data/parser/err/0039_lambda_recovery.rast121
-rw-r--r--crates/ra_syntax/test_data/parser/inline/err/0002_misplaced_label_err.rast25
-rw-r--r--crates/ra_syntax/test_data/parser/inline/err/0006_unsafe_block_in_mod.rast10
-rw-r--r--crates/ra_syntax/test_data/parser/inline/err/0007_async_without_semicolon.rast37
-rw-r--r--crates/ra_syntax/test_data/parser/inline/err/0008_pub_expr.rast25
-rw-r--r--crates/ra_syntax/test_data/parser/inline/err/0009_attr_on_expr_not_allowed.rast92
-rw-r--r--crates/ra_syntax/test_data/parser/inline/err/0010_bad_tuple_index_expr.rast77
-rw-r--r--crates/ra_syntax/test_data/parser/inline/err/0010_wrong_order_fns.rast10
-rw-r--r--crates/ra_syntax/test_data/parser/inline/err/0014_default_fn_type.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/err/0014_record_literal_before_ellipsis_recovery.rast71
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0001_trait_item_list.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0003_where_pred_for.rast7
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0005_function_type_params.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0006_self_param.rast25
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0008_path_part.rast169
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0009_loop_expr.rast26
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0011_field_expr.rast95
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0015_continue_expr.rast48
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0018_arb_self_types.rast10
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0019_unary_expr.rast65
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0021_impl_item_list.rast10
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0024_slice_pat.rast59
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0026_tuple_pat_fields.rast185
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0027_ref_pat.rast75
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0029_cast_expr.rast155
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0030_cond.rast365
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0031_while_expr.rast149
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0034_break_expr.rast84
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0036_unsafe_extern_fn.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0037_qual_paths.rast67
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0038_full_range_expr.rast33
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0039_type_arg.rast13
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0040_crate_keyword_vis.rast7
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0042_call_expr.rast271
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0044_block_items.rast34
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0045_param_list_opt_patterns.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0048_path_type_with_bounds.rast10
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0053_path_expr.rast167
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0055_literal_pattern.rast129
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0056_where_clause.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0057_const_fn.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0058_range_pat.rast141
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0059_match_arms_commas.rast94
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0061_record_lit.rast225
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0062_mod_contents.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0064_if_expr.rast229
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0066_match_arm.rast279
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0070_stmt_bin_expr_ambiguity.rast79
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0071_match_expr.rast165
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0072_return_expr.rast33
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0074_stmt_postfix_expr_ambiguity.rast98
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0075_block.rast86
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0076_function_where_clause.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0077_try_expr.rast27
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0080_postfix_range.rast167
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0081_for_type.rast15
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0082_ref_expr.rast85
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0085_expr_literals.rast247
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0086_function_ret_type.rast10
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0088_break_ambiguity.rast112
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0089_extern_fn.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0093_index_expr.rast43
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0095_placeholder_pat.rast33
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0096_no_semi_after_block.rast229
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0098_const_unsafe_fn.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0099_param_list.rast20
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0100_for_expr.rast46
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0101_unsafe_fn.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0102_record_field_pat_list.rast241
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0103_array_expr.rast85
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0105_block_expr.rast48
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0105_block_expr.rs2
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0106_lambda_expr.rast251
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0107_method_call_expr.rast101
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0108_tuple_expr.rast53
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0109_label.rast108
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0111_tuple_pat.rast155
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0112_bind_pat.rast231
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0113_nocontentexpr.rast90
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0118_match_guard.rast71
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0120_match_arms_inner_attribute.rast137
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0121_match_arms_outer_attributes.rast267
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0122_generic_lifetime_type_attribute.rast7
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0124_async_fn.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0125_crate_keyword_path.rast39
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0125_record_literal_field_with_attr.rast71
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0126_attr_on_expr_stmt.rast172
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0127_attr_on_last_expr_in_block.rast92
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0128_combined_fns.rast10
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0129_marco_pat.rast49
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0130_let_stmt.rast231
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0130_try_block_expr.rast40
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0132_box_expr.rast155
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0132_default_fn_type.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0134_nocontentexpr_after_item.rast102
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0137_await_expr.rast115
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0138_associated_type_bounds.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0138_expression_after_block.rast106
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0138_self_param_outer_attr.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0139_param_outer_arg.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_from.rast58
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0143_box_pat.rast197
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0144_dot_dot_pat.rast887
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0145_record_field_pat.rast127
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0146_as_precedence.rast61
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0152_arg_with_attr.rast49
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0155_closure_params.rast115
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0156_fn_def_param.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0156_or_pattern.rast199
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0158_binop_resets_statementness.rast50
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0158_lambda_ret_block.rast64
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0159_try_macro_fallback.rast45
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0161_labeled_block.rast26
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0161_labeled_block.rs1
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0162_unsafe_block.rast23
-rw-r--r--crates/ra_syntax/test_data/parser/inline/ok/0162_unsafe_block.rs1
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0005_fn_item.rast7
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0008_mod_item.rast7
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0011_outer_attribute.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0012_visibility.rast25
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0017_attr_trailing_comma.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0021_extern_fn.rast21
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0025_extern_fn_in_block.rast40
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0026_const_fn_in_block.rast38
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0027_unsafe_fn_in_block.rast60
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0028_operator_binding_power.rast347
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0029_range_forms.rast279
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0030_string_suffixes.rast103
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0032_where_for.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0033_label_break.rast407
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0034_crate_path_in_call.rast59
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0035_weird_exprs.rast3912
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0036_fully_qualified.rast27
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0038_where_pred_type.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0039_raw_fn_item.rast7
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0041_raw_keywords.rast77
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0042_ufcs_call_list.rast97
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0043_complex_assignment.rast133
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0044_let_attrs.rast123
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0045_block_inner_attrs.rast196
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0047_minus_in_inner_pattern.rast495
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0048_compound_assignment.rast373
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0049_async_block.rast47
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0050_async_block_as_argument.rast56
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0051_parameter_attrs.rast55
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0052_for_range_block.rast135
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0054_qual_path_in_type_arg.rast15
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0055_dot_dot_dot.rast49
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0056_neq_in_type.rast106
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0057_loop_in_call.rast49
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0058_unary_expr_precedence.rast169
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0059_loops_in_parens.rast174
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0060_as_range.rast87
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0061_match_full_range.rast29
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0062_macro_2.0.rast205
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0063_trait_fn_patterns.rast20
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0064_impl_fn_params.rast20
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0065_comment_newline.rast5
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0065_plus_after_fn_trait_bound.rast5
-rw-r--r--docs/user/assists.md4
-rw-r--r--xtask/src/ast_src.rs19
-rw-r--r--xtask/src/codegen/gen_syntax.rs1
212 files changed, 10656 insertions, 10935 deletions
diff --git a/crates/ra_assists/src/doc_tests/generated.rs b/crates/ra_assists/src/doc_tests/generated.rs
index e4fa9ee36..d6a34b609 100644
--- a/crates/ra_assists/src/doc_tests/generated.rs
+++ b/crates/ra_assists/src/doc_tests/generated.rs
@@ -180,7 +180,9 @@ trait Trait<T> {
180} 180}
181 181
182impl Trait<u32> for () { 182impl Trait<u32> for () {
183 fn foo(&self) -> u32 { todo!() } 183 fn foo(&self) -> u32 {
184 todo!()
185 }
184 186
185} 187}
186"#####, 188"#####,
diff --git a/crates/ra_assists/src/handlers/add_missing_impl_members.rs b/crates/ra_assists/src/handlers/add_missing_impl_members.rs
index 2d6d44980..e466c9a86 100644
--- a/crates/ra_assists/src/handlers/add_missing_impl_members.rs
+++ b/crates/ra_assists/src/handlers/add_missing_impl_members.rs
@@ -1,6 +1,10 @@
1use hir::HasSource; 1use hir::HasSource;
2use ra_syntax::{ 2use ra_syntax::{
3 ast::{self, edit, make, AstNode, NameOwner}, 3 ast::{
4 self,
5 edit::{self, IndentLevel},
6 make, AstNode, NameOwner,
7 },
4 SmolStr, 8 SmolStr,
5}; 9};
6 10
@@ -40,7 +44,9 @@ enum AddMissingImplMembersMode {
40// } 44// }
41// 45//
42// impl Trait<u32> for () { 46// impl Trait<u32> for () {
43// fn foo(&self) -> u32 { todo!() } 47// fn foo(&self) -> u32 {
48// todo!()
49// }
44// 50//
45// } 51// }
46// ``` 52// ```
@@ -165,7 +171,9 @@ fn add_missing_impl_members_inner(
165 171
166fn add_body(fn_def: ast::FnDef) -> ast::FnDef { 172fn add_body(fn_def: ast::FnDef) -> ast::FnDef {
167 if fn_def.body().is_none() { 173 if fn_def.body().is_none() {
168 fn_def.with_body(make::block_from_expr(make::expr_todo())) 174 let body = make::block_expr(None, Some(make::expr_todo()));
175 let body = IndentLevel(1).increase_indent(body);
176 fn_def.with_body(body)
169 } else { 177 } else {
170 fn_def 178 fn_def
171 } 179 }
@@ -181,7 +189,7 @@ mod tests {
181 fn test_add_missing_impl_members() { 189 fn test_add_missing_impl_members() {
182 check_assist( 190 check_assist(
183 add_missing_impl_members, 191 add_missing_impl_members,
184 " 192 r#"
185trait Foo { 193trait Foo {
186 type Output; 194 type Output;
187 195
@@ -197,8 +205,8 @@ struct S;
197impl Foo for S { 205impl Foo for S {
198 fn bar(&self) {} 206 fn bar(&self) {}
199<|> 207<|>
200}", 208}"#,
201 " 209 r#"
202trait Foo { 210trait Foo {
203 type Output; 211 type Output;
204 212
@@ -215,10 +223,14 @@ impl Foo for S {
215 fn bar(&self) {} 223 fn bar(&self) {}
216 <|>type Output; 224 <|>type Output;
217 const CONST: usize = 42; 225 const CONST: usize = 42;
218 fn foo(&self) { todo!() } 226 fn foo(&self) {
219 fn baz(&self) { todo!() } 227 todo!()
228 }
229 fn baz(&self) {
230 todo!()
231 }
220 232
221}", 233}"#,
222 ); 234 );
223 } 235 }
224 236
@@ -226,7 +238,7 @@ impl Foo for S {
226 fn test_copied_overriden_members() { 238 fn test_copied_overriden_members() {
227 check_assist( 239 check_assist(
228 add_missing_impl_members, 240 add_missing_impl_members,
229 " 241 r#"
230trait Foo { 242trait Foo {
231 fn foo(&self); 243 fn foo(&self);
232 fn bar(&self) -> bool { true } 244 fn bar(&self) -> bool { true }
@@ -238,8 +250,8 @@ struct S;
238impl Foo for S { 250impl Foo for S {
239 fn bar(&self) {} 251 fn bar(&self) {}
240<|> 252<|>
241}", 253}"#,
242 " 254 r#"
243trait Foo { 255trait Foo {
244 fn foo(&self); 256 fn foo(&self);
245 fn bar(&self) -> bool { true } 257 fn bar(&self) -> bool { true }
@@ -250,9 +262,11 @@ struct S;
250 262
251impl Foo for S { 263impl Foo for S {
252 fn bar(&self) {} 264 fn bar(&self) {}
253 <|>fn foo(&self) { todo!() } 265 <|>fn foo(&self) {
266 todo!()
267 }
254 268
255}", 269}"#,
256 ); 270 );
257 } 271 }
258 272
@@ -260,16 +274,18 @@ impl Foo for S {
260 fn test_empty_impl_def() { 274 fn test_empty_impl_def() {
261 check_assist( 275 check_assist(
262 add_missing_impl_members, 276 add_missing_impl_members,
263 " 277 r#"
264trait Foo { fn foo(&self); } 278trait Foo { fn foo(&self); }
265struct S; 279struct S;
266impl Foo for S { <|> }", 280impl Foo for S { <|> }"#,
267 " 281 r#"
268trait Foo { fn foo(&self); } 282trait Foo { fn foo(&self); }
269struct S; 283struct S;
270impl Foo for S { 284impl Foo for S {
271 <|>fn foo(&self) { todo!() } 285 <|>fn foo(&self) {
272}", 286 todo!()
287 }
288}"#,
273 ); 289 );
274 } 290 }
275 291
@@ -277,16 +293,18 @@ impl Foo for S {
277 fn fill_in_type_params_1() { 293 fn fill_in_type_params_1() {
278 check_assist( 294 check_assist(
279 add_missing_impl_members, 295 add_missing_impl_members,
280 " 296 r#"
281trait Foo<T> { fn foo(&self, t: T) -> &T; } 297trait Foo<T> { fn foo(&self, t: T) -> &T; }
282struct S; 298struct S;
283impl Foo<u32> for S { <|> }", 299impl Foo<u32> for S { <|> }"#,
284 " 300 r#"
285trait Foo<T> { fn foo(&self, t: T) -> &T; } 301trait Foo<T> { fn foo(&self, t: T) -> &T; }
286struct S; 302struct S;
287impl Foo<u32> for S { 303impl Foo<u32> for S {
288 <|>fn foo(&self, t: u32) -> &u32 { todo!() } 304 <|>fn foo(&self, t: u32) -> &u32 {
289}", 305 todo!()
306 }
307}"#,
290 ); 308 );
291 } 309 }
292 310
@@ -294,16 +312,18 @@ impl Foo<u32> for S {
294 fn fill_in_type_params_2() { 312 fn fill_in_type_params_2() {
295 check_assist( 313 check_assist(
296 add_missing_impl_members, 314 add_missing_impl_members,
297 " 315 r#"
298trait Foo<T> { fn foo(&self, t: T) -> &T; } 316trait Foo<T> { fn foo(&self, t: T) -> &T; }
299struct S; 317struct S;
300impl<U> Foo<U> for S { <|> }", 318impl<U> Foo<U> for S { <|> }"#,
301 " 319 r#"
302trait Foo<T> { fn foo(&self, t: T) -> &T; } 320trait Foo<T> { fn foo(&self, t: T) -> &T; }
303struct S; 321struct S;
304impl<U> Foo<U> for S { 322impl<U> Foo<U> for S {
305 <|>fn foo(&self, t: U) -> &U { todo!() } 323 <|>fn foo(&self, t: U) -> &U {
306}", 324 todo!()
325 }
326}"#,
307 ); 327 );
308 } 328 }
309 329
@@ -311,16 +331,18 @@ impl<U> Foo<U> for S {
311 fn test_cursor_after_empty_impl_def() { 331 fn test_cursor_after_empty_impl_def() {
312 check_assist( 332 check_assist(
313 add_missing_impl_members, 333 add_missing_impl_members,
314 " 334 r#"
315trait Foo { fn foo(&self); } 335trait Foo { fn foo(&self); }
316struct S; 336struct S;
317impl Foo for S {}<|>", 337impl Foo for S {}<|>"#,
318 " 338 r#"
319trait Foo { fn foo(&self); } 339trait Foo { fn foo(&self); }
320struct S; 340struct S;
321impl Foo for S { 341impl Foo for S {
322 <|>fn foo(&self) { todo!() } 342 <|>fn foo(&self) {
323}", 343 todo!()
344 }
345}"#,
324 ) 346 )
325 } 347 }
326 348
@@ -328,22 +350,24 @@ impl Foo for S {
328 fn test_qualify_path_1() { 350 fn test_qualify_path_1() {
329 check_assist( 351 check_assist(
330 add_missing_impl_members, 352 add_missing_impl_members,
331 " 353 r#"
332mod foo { 354mod foo {
333 pub struct Bar; 355 pub struct Bar;
334 trait Foo { fn foo(&self, bar: Bar); } 356 trait Foo { fn foo(&self, bar: Bar); }
335} 357}
336struct S; 358struct S;
337impl foo::Foo for S { <|> }", 359impl foo::Foo for S { <|> }"#,
338 " 360 r#"
339mod foo { 361mod foo {
340 pub struct Bar; 362 pub struct Bar;
341 trait Foo { fn foo(&self, bar: Bar); } 363 trait Foo { fn foo(&self, bar: Bar); }
342} 364}
343struct S; 365struct S;
344impl foo::Foo for S { 366impl foo::Foo for S {
345 <|>fn foo(&self, bar: foo::Bar) { todo!() } 367 <|>fn foo(&self, bar: foo::Bar) {
346}", 368 todo!()
369 }
370}"#,
347 ); 371 );
348 } 372 }
349 373
@@ -351,22 +375,24 @@ impl foo::Foo for S {
351 fn test_qualify_path_generic() { 375 fn test_qualify_path_generic() {
352 check_assist( 376 check_assist(
353 add_missing_impl_members, 377 add_missing_impl_members,
354 " 378 r#"
355mod foo { 379mod foo {
356 pub struct Bar<T>; 380 pub struct Bar<T>;
357 trait Foo { fn foo(&self, bar: Bar<u32>); } 381 trait Foo { fn foo(&self, bar: Bar<u32>); }
358} 382}
359struct S; 383struct S;
360impl foo::Foo for S { <|> }", 384impl foo::Foo for S { <|> }"#,
361 " 385 r#"
362mod foo { 386mod foo {
363 pub struct Bar<T>; 387 pub struct Bar<T>;
364 trait Foo { fn foo(&self, bar: Bar<u32>); } 388 trait Foo { fn foo(&self, bar: Bar<u32>); }
365} 389}
366struct S; 390struct S;
367impl foo::Foo for S { 391impl foo::Foo for S {
368 <|>fn foo(&self, bar: foo::Bar<u32>) { todo!() } 392 <|>fn foo(&self, bar: foo::Bar<u32>) {
369}", 393 todo!()
394 }
395}"#,
370 ); 396 );
371 } 397 }
372 398
@@ -374,22 +400,24 @@ impl foo::Foo for S {
374 fn test_qualify_path_and_substitute_param() { 400 fn test_qualify_path_and_substitute_param() {
375 check_assist( 401 check_assist(
376 add_missing_impl_members, 402 add_missing_impl_members,
377 " 403 r#"
378mod foo { 404mod foo {
379 pub struct Bar<T>; 405 pub struct Bar<T>;
380 trait Foo<T> { fn foo(&self, bar: Bar<T>); } 406 trait Foo<T> { fn foo(&self, bar: Bar<T>); }
381} 407}
382struct S; 408struct S;
383impl foo::Foo<u32> for S { <|> }", 409impl foo::Foo<u32> for S { <|> }"#,
384 " 410 r#"
385mod foo { 411mod foo {
386 pub struct Bar<T>; 412 pub struct Bar<T>;
387 trait Foo<T> { fn foo(&self, bar: Bar<T>); } 413 trait Foo<T> { fn foo(&self, bar: Bar<T>); }
388} 414}
389struct S; 415struct S;
390impl foo::Foo<u32> for S { 416impl foo::Foo<u32> for S {
391 <|>fn foo(&self, bar: foo::Bar<u32>) { todo!() } 417 <|>fn foo(&self, bar: foo::Bar<u32>) {
392}", 418 todo!()
419 }
420}"#,
393 ); 421 );
394 } 422 }
395 423
@@ -398,15 +426,15 @@ impl foo::Foo<u32> for S {
398 // when substituting params, the substituted param should not be qualified! 426 // when substituting params, the substituted param should not be qualified!
399 check_assist( 427 check_assist(
400 add_missing_impl_members, 428 add_missing_impl_members,
401 " 429 r#"
402mod foo { 430mod foo {
403 trait Foo<T> { fn foo(&self, bar: T); } 431 trait Foo<T> { fn foo(&self, bar: T); }
404 pub struct Param; 432 pub struct Param;
405} 433}
406struct Param; 434struct Param;
407struct S; 435struct S;
408impl foo::Foo<Param> for S { <|> }", 436impl foo::Foo<Param> for S { <|> }"#,
409 " 437 r#"
410mod foo { 438mod foo {
411 trait Foo<T> { fn foo(&self, bar: T); } 439 trait Foo<T> { fn foo(&self, bar: T); }
412 pub struct Param; 440 pub struct Param;
@@ -414,8 +442,10 @@ mod foo {
414struct Param; 442struct Param;
415struct S; 443struct S;
416impl foo::Foo<Param> for S { 444impl foo::Foo<Param> for S {
417 <|>fn foo(&self, bar: Param) { todo!() } 445 <|>fn foo(&self, bar: Param) {
418}", 446 todo!()
447 }
448}"#,
419 ); 449 );
420 } 450 }
421 451
@@ -423,15 +453,15 @@ impl foo::Foo<Param> for S {
423 fn test_qualify_path_associated_item() { 453 fn test_qualify_path_associated_item() {
424 check_assist( 454 check_assist(
425 add_missing_impl_members, 455 add_missing_impl_members,
426 " 456 r#"
427mod foo { 457mod foo {
428 pub struct Bar<T>; 458 pub struct Bar<T>;
429 impl Bar<T> { type Assoc = u32; } 459 impl Bar<T> { type Assoc = u32; }
430 trait Foo { fn foo(&self, bar: Bar<u32>::Assoc); } 460 trait Foo { fn foo(&self, bar: Bar<u32>::Assoc); }
431} 461}
432struct S; 462struct S;
433impl foo::Foo for S { <|> }", 463impl foo::Foo for S { <|> }"#,
434 " 464 r#"
435mod foo { 465mod foo {
436 pub struct Bar<T>; 466 pub struct Bar<T>;
437 impl Bar<T> { type Assoc = u32; } 467 impl Bar<T> { type Assoc = u32; }
@@ -439,8 +469,10 @@ mod foo {
439} 469}
440struct S; 470struct S;
441impl foo::Foo for S { 471impl foo::Foo for S {
442 <|>fn foo(&self, bar: foo::Bar<u32>::Assoc) { todo!() } 472 <|>fn foo(&self, bar: foo::Bar<u32>::Assoc) {
443}", 473 todo!()
474 }
475}"#,
444 ); 476 );
445 } 477 }
446 478
@@ -448,15 +480,15 @@ impl foo::Foo for S {
448 fn test_qualify_path_nested() { 480 fn test_qualify_path_nested() {
449 check_assist( 481 check_assist(
450 add_missing_impl_members, 482 add_missing_impl_members,
451 " 483 r#"
452mod foo { 484mod foo {
453 pub struct Bar<T>; 485 pub struct Bar<T>;
454 pub struct Baz; 486 pub struct Baz;
455 trait Foo { fn foo(&self, bar: Bar<Baz>); } 487 trait Foo { fn foo(&self, bar: Bar<Baz>); }
456} 488}
457struct S; 489struct S;
458impl foo::Foo for S { <|> }", 490impl foo::Foo for S { <|> }"#,
459 " 491 r#"
460mod foo { 492mod foo {
461 pub struct Bar<T>; 493 pub struct Bar<T>;
462 pub struct Baz; 494 pub struct Baz;
@@ -464,8 +496,10 @@ mod foo {
464} 496}
465struct S; 497struct S;
466impl foo::Foo for S { 498impl foo::Foo for S {
467 <|>fn foo(&self, bar: foo::Bar<foo::Baz>) { todo!() } 499 <|>fn foo(&self, bar: foo::Bar<foo::Baz>) {
468}", 500 todo!()
501 }
502}"#,
469 ); 503 );
470 } 504 }
471 505
@@ -473,22 +507,24 @@ impl foo::Foo for S {
473 fn test_qualify_path_fn_trait_notation() { 507 fn test_qualify_path_fn_trait_notation() {
474 check_assist( 508 check_assist(
475 add_missing_impl_members, 509 add_missing_impl_members,
476 " 510 r#"
477mod foo { 511mod foo {
478 pub trait Fn<Args> { type Output; } 512 pub trait Fn<Args> { type Output; }
479 trait Foo { fn foo(&self, bar: dyn Fn(u32) -> i32); } 513 trait Foo { fn foo(&self, bar: dyn Fn(u32) -> i32); }
480} 514}
481struct S; 515struct S;
482impl foo::Foo for S { <|> }", 516impl foo::Foo for S { <|> }"#,
483 " 517 r#"
484mod foo { 518mod foo {
485 pub trait Fn<Args> { type Output; } 519 pub trait Fn<Args> { type Output; }
486 trait Foo { fn foo(&self, bar: dyn Fn(u32) -> i32); } 520 trait Foo { fn foo(&self, bar: dyn Fn(u32) -> i32); }
487} 521}
488struct S; 522struct S;
489impl foo::Foo for S { 523impl foo::Foo for S {
490 <|>fn foo(&self, bar: dyn Fn(u32) -> i32) { todo!() } 524 <|>fn foo(&self, bar: dyn Fn(u32) -> i32) {
491}", 525 todo!()
526 }
527}"#,
492 ); 528 );
493 } 529 }
494 530
@@ -496,10 +532,10 @@ impl foo::Foo for S {
496 fn test_empty_trait() { 532 fn test_empty_trait() {
497 check_assist_not_applicable( 533 check_assist_not_applicable(
498 add_missing_impl_members, 534 add_missing_impl_members,
499 " 535 r#"
500trait Foo; 536trait Foo;
501struct S; 537struct S;
502impl Foo for S { <|> }", 538impl Foo for S { <|> }"#,
503 ) 539 )
504 } 540 }
505 541
@@ -507,13 +543,13 @@ impl Foo for S { <|> }",
507 fn test_ignore_unnamed_trait_members_and_default_methods() { 543 fn test_ignore_unnamed_trait_members_and_default_methods() {
508 check_assist_not_applicable( 544 check_assist_not_applicable(
509 add_missing_impl_members, 545 add_missing_impl_members,
510 " 546 r#"
511trait Foo { 547trait Foo {
512 fn (arg: u32); 548 fn (arg: u32);
513 fn valid(some: u32) -> bool { false } 549 fn valid(some: u32) -> bool { false }
514} 550}
515struct S; 551struct S;
516impl Foo for S { <|> }", 552impl Foo for S { <|> }"#,
517 ) 553 )
518 } 554 }
519 555
@@ -544,7 +580,9 @@ trait Foo {
544struct S; 580struct S;
545impl Foo for S { 581impl Foo for S {
546 <|>type Output; 582 <|>type Output;
547 fn foo(&self) { todo!() } 583 fn foo(&self) {
584 todo!()
585 }
548}"#, 586}"#,
549 ) 587 )
550 } 588 }
@@ -553,7 +591,7 @@ impl Foo for S {
553 fn test_default_methods() { 591 fn test_default_methods() {
554 check_assist( 592 check_assist(
555 add_missing_default_members, 593 add_missing_default_members,
556 " 594 r#"
557trait Foo { 595trait Foo {
558 type Output; 596 type Output;
559 597
@@ -563,8 +601,8 @@ trait Foo {
563 fn foo(some: u32) -> bool; 601 fn foo(some: u32) -> bool;
564} 602}
565struct S; 603struct S;
566impl Foo for S { <|> }", 604impl Foo for S { <|> }"#,
567 " 605 r#"
568trait Foo { 606trait Foo {
569 type Output; 607 type Output;
570 608
@@ -576,7 +614,7 @@ trait Foo {
576struct S; 614struct S;
577impl Foo for S { 615impl Foo for S {
578 <|>fn valid(some: u32) -> bool { false } 616 <|>fn valid(some: u32) -> bool { false }
579}", 617}"#,
580 ) 618 )
581 } 619 }
582} 620}
diff --git a/crates/ra_assists/src/handlers/early_return.rs b/crates/ra_assists/src/handlers/early_return.rs
index ea6c56f8c..eede2fe91 100644
--- a/crates/ra_assists/src/handlers/early_return.rs
+++ b/crates/ra_assists/src/handlers/early_return.rs
@@ -2,7 +2,7 @@ use std::{iter::once, ops::RangeInclusive};
2 2
3use ra_syntax::{ 3use ra_syntax::{
4 algo::replace_children, 4 algo::replace_children,
5 ast::{self, edit::IndentLevel, make, Block, Pat::TupleStructPat}, 5 ast::{self, edit::IndentLevel, make},
6 AstNode, 6 AstNode,
7 SyntaxKind::{FN_DEF, LOOP_EXPR, L_CURLY, R_CURLY, WHILE_EXPR, WHITESPACE}, 7 SyntaxKind::{FN_DEF, LOOP_EXPR, L_CURLY, R_CURLY, WHILE_EXPR, WHITESPACE},
8 SyntaxNode, 8 SyntaxNode,
@@ -47,7 +47,7 @@ pub(crate) fn convert_to_guarded_return(ctx: AssistCtx) -> Option<Assist> {
47 // Check if there is an IfLet that we can handle. 47 // Check if there is an IfLet that we can handle.
48 let if_let_pat = match cond.pat() { 48 let if_let_pat = match cond.pat() {
49 None => None, // No IfLet, supported. 49 None => None, // No IfLet, supported.
50 Some(TupleStructPat(pat)) if pat.args().count() == 1 => { 50 Some(ast::Pat::TupleStructPat(pat)) if pat.args().count() == 1 => {
51 let path = pat.path()?; 51 let path = pat.path()?;
52 match path.qualifier() { 52 match path.qualifier() {
53 None => { 53 None => {
@@ -61,9 +61,9 @@ pub(crate) fn convert_to_guarded_return(ctx: AssistCtx) -> Option<Assist> {
61 }; 61 };
62 62
63 let cond_expr = cond.expr()?; 63 let cond_expr = cond.expr()?;
64 let then_block = if_expr.then_branch()?.block()?; 64 let then_block = if_expr.then_branch()?;
65 65
66 let parent_block = if_expr.syntax().parent()?.ancestors().find_map(ast::Block::cast)?; 66 let parent_block = if_expr.syntax().parent()?.ancestors().find_map(ast::BlockExpr::cast)?;
67 67
68 if parent_block.expr()? != if_expr.clone().into() { 68 if parent_block.expr()? != if_expr.clone().into() {
69 return None; 69 return None;
@@ -80,7 +80,7 @@ pub(crate) fn convert_to_guarded_return(ctx: AssistCtx) -> Option<Assist> {
80 return None; 80 return None;
81 } 81 }
82 82
83 let parent_container = parent_block.syntax().parent()?.parent()?; 83 let parent_container = parent_block.syntax().parent()?;
84 84
85 let early_expression: ast::Expr = match parent_container.kind() { 85 let early_expression: ast::Expr = match parent_container.kind() {
86 WHILE_EXPR | LOOP_EXPR => make::expr_continue(), 86 WHILE_EXPR | LOOP_EXPR => make::expr_continue(),
@@ -144,13 +144,13 @@ pub(crate) fn convert_to_guarded_return(ctx: AssistCtx) -> Option<Assist> {
144 } 144 }
145 }; 145 };
146 edit.target(if_expr.syntax().text_range()); 146 edit.target(if_expr.syntax().text_range());
147 edit.replace_ast(parent_block, ast::Block::cast(new_block).unwrap()); 147 edit.replace_ast(parent_block, ast::BlockExpr::cast(new_block).unwrap());
148 edit.set_cursor(cursor_position); 148 edit.set_cursor(cursor_position);
149 149
150 fn replace( 150 fn replace(
151 new_expr: &SyntaxNode, 151 new_expr: &SyntaxNode,
152 then_block: &Block, 152 then_block: &ast::BlockExpr,
153 parent_block: &Block, 153 parent_block: &ast::BlockExpr,
154 if_expr: &ast::IfExpr, 154 if_expr: &ast::IfExpr,
155 ) -> SyntaxNode { 155 ) -> SyntaxNode {
156 let then_block_items = IndentLevel::from(1).decrease_indent(then_block.clone()); 156 let then_block_items = IndentLevel::from(1).decrease_indent(then_block.clone());
diff --git a/crates/ra_assists/src/handlers/inline_local_variable.rs b/crates/ra_assists/src/handlers/inline_local_variable.rs
index f5702f6e0..60ec536a7 100644
--- a/crates/ra_assists/src/handlers/inline_local_variable.rs
+++ b/crates/ra_assists/src/handlers/inline_local_variable.rs
@@ -89,6 +89,7 @@ pub(crate) fn inline_local_variable(ctx: AssistCtx) -> Option<Assist> {
89 | (ast::Expr::ParenExpr(_), _) 89 | (ast::Expr::ParenExpr(_), _)
90 | (ast::Expr::PathExpr(_), _) 90 | (ast::Expr::PathExpr(_), _)
91 | (ast::Expr::BlockExpr(_), _) 91 | (ast::Expr::BlockExpr(_), _)
92 | (ast::Expr::EffectExpr(_), _)
92 | (_, ast::Expr::CallExpr(_)) 93 | (_, ast::Expr::CallExpr(_))
93 | (_, ast::Expr::TupleExpr(_)) 94 | (_, ast::Expr::TupleExpr(_))
94 | (_, ast::Expr::ArrayExpr(_)) 95 | (_, ast::Expr::ArrayExpr(_))
diff --git a/crates/ra_assists/src/handlers/introduce_variable.rs b/crates/ra_assists/src/handlers/introduce_variable.rs
index eda9ac296..39c656305 100644
--- a/crates/ra_assists/src/handlers/introduce_variable.rs
+++ b/crates/ra_assists/src/handlers/introduce_variable.rs
@@ -111,7 +111,7 @@ fn valid_target_expr(node: SyntaxNode) -> Option<ast::Expr> {
111/// expression like a lambda or match arm. 111/// expression like a lambda or match arm.
112fn anchor_stmt(expr: ast::Expr) -> Option<(SyntaxNode, bool)> { 112fn anchor_stmt(expr: ast::Expr) -> Option<(SyntaxNode, bool)> {
113 expr.syntax().ancestors().find_map(|node| { 113 expr.syntax().ancestors().find_map(|node| {
114 if let Some(expr) = node.parent().and_then(ast::Block::cast).and_then(|it| it.expr()) { 114 if let Some(expr) = node.parent().and_then(ast::BlockExpr::cast).and_then(|it| it.expr()) {
115 if expr.syntax() == &node { 115 if expr.syntax() == &node {
116 tested_by!(test_introduce_var_last_expr); 116 tested_by!(test_introduce_var_last_expr);
117 return Some((node, false)); 117 return Some((node, false));
diff --git a/crates/ra_assists/src/handlers/move_guard.rs b/crates/ra_assists/src/handlers/move_guard.rs
index d5ccdd91c..b084dd9ee 100644
--- a/crates/ra_assists/src/handlers/move_guard.rs
+++ b/crates/ra_assists/src/handlers/move_guard.rs
@@ -113,9 +113,9 @@ pub(crate) fn move_arm_cond_to_match_guard(ctx: AssistCtx) -> Option<Assist> {
113 "Move condition to match guard", 113 "Move condition to match guard",
114 |edit| { 114 |edit| {
115 edit.target(if_expr.syntax().text_range()); 115 edit.target(if_expr.syntax().text_range());
116 let then_only_expr = then_block.block().and_then(|it| it.statements().next()).is_none(); 116 let then_only_expr = then_block.statements().next().is_none();
117 117
118 match &then_block.block().and_then(|it| it.expr()) { 118 match &then_block.expr() {
119 Some(then_expr) if then_only_expr => { 119 Some(then_expr) if then_only_expr => {
120 edit.replace(if_expr.syntax().text_range(), then_expr.syntax().text()) 120 edit.replace(if_expr.syntax().text_range(), then_expr.syntax().text())
121 } 121 }
diff --git a/crates/ra_fmt/src/lib.rs b/crates/ra_fmt/src/lib.rs
index 1a30b2b3a..f910ded9d 100644
--- a/crates/ra_fmt/src/lib.rs
+++ b/crates/ra_fmt/src/lib.rs
@@ -42,7 +42,6 @@ pub fn unwrap_trivial_block(block: ast::BlockExpr) -> ast::Expr {
42} 42}
43 43
44pub fn extract_trivial_expression(block: &ast::BlockExpr) -> Option<ast::Expr> { 44pub fn extract_trivial_expression(block: &ast::BlockExpr) -> Option<ast::Expr> {
45 let block = block.block()?;
46 let has_anything_else = |thing: &SyntaxNode| -> bool { 45 let has_anything_else = |thing: &SyntaxNode| -> bool {
47 let mut non_trivial_children = 46 let mut non_trivial_children =
48 block.syntax().children_with_tokens().filter(|it| match it.kind() { 47 block.syntax().children_with_tokens().filter(|it| match it.kind() {
diff --git a/crates/ra_hir_def/src/body/lower.rs b/crates/ra_hir_def/src/body/lower.rs
index f06cc115b..58b3d10d8 100644
--- a/crates/ra_hir_def/src/body/lower.rs
+++ b/crates/ra_hir_def/src/body/lower.rs
@@ -203,10 +203,16 @@ impl ExprCollector<'_> {
203 203
204 self.alloc_expr(Expr::If { condition, then_branch, else_branch }, syntax_ptr) 204 self.alloc_expr(Expr::If { condition, then_branch, else_branch }, syntax_ptr)
205 } 205 }
206 ast::Expr::TryBlockExpr(e) => { 206 ast::Expr::EffectExpr(e) => match e.effect() {
207 let body = self.collect_block_opt(e.body()); 207 ast::Effect::Try(_) => {
208 self.alloc_expr(Expr::TryBlock { body }, syntax_ptr) 208 let body = self.collect_block_opt(e.block_expr());
209 } 209 self.alloc_expr(Expr::TryBlock { body }, syntax_ptr)
210 }
211 // FIXME: we need to record these effects somewhere...
212 ast::Effect::Async(_) | ast::Effect::Label(_) | ast::Effect::Unsafe(_) => {
213 self.collect_block_opt(e.block_expr())
214 }
215 },
210 ast::Expr::BlockExpr(e) => self.collect_block(e), 216 ast::Expr::BlockExpr(e) => self.collect_block(e),
211 ast::Expr::LoopExpr(e) => { 217 ast::Expr::LoopExpr(e) => {
212 let body = self.collect_block_opt(e.loop_body()); 218 let body = self.collect_block_opt(e.loop_body());
@@ -494,12 +500,8 @@ impl ExprCollector<'_> {
494 } 500 }
495 } 501 }
496 502
497 fn collect_block(&mut self, expr: ast::BlockExpr) -> ExprId { 503 fn collect_block(&mut self, block: ast::BlockExpr) -> ExprId {
498 let syntax_node_ptr = AstPtr::new(&expr.clone().into()); 504 let syntax_node_ptr = AstPtr::new(&block.clone().into());
499 let block = match expr.block() {
500 Some(block) => block,
501 None => return self.alloc_expr(Expr::Missing, syntax_node_ptr),
502 };
503 self.collect_block_items(&block); 505 self.collect_block_items(&block);
504 let statements = block 506 let statements = block
505 .statements() 507 .statements()
@@ -517,7 +519,7 @@ impl ExprCollector<'_> {
517 self.alloc_expr(Expr::Block { statements, tail }, syntax_node_ptr) 519 self.alloc_expr(Expr::Block { statements, tail }, syntax_node_ptr)
518 } 520 }
519 521
520 fn collect_block_items(&mut self, block: &ast::Block) { 522 fn collect_block_items(&mut self, block: &ast::BlockExpr) {
521 let container = ContainerId::DefWithBodyId(self.def); 523 let container = ContainerId::DefWithBodyId(self.def);
522 for item in block.items() { 524 for item in block.items() {
523 let (def, name): (ModuleDefId, Option<ast::Name>) = match item { 525 let (def, name): (ModuleDefId, Option<ast::Name>) = match item {
diff --git a/crates/ra_hir_expand/src/db.rs b/crates/ra_hir_expand/src/db.rs
index 047452306..4c12d0a15 100644
--- a/crates/ra_hir_expand/src/db.rs
+++ b/crates/ra_hir_expand/src/db.rs
@@ -330,7 +330,7 @@ fn to_fragment_kind(db: &dyn AstDatabase, id: MacroCallId) -> FragmentKind {
330 FragmentKind::Expr 330 FragmentKind::Expr
331 } 331 }
332 // FIXME: Expand to statements in appropriate positions; HIR lowering needs to handle that 332 // FIXME: Expand to statements in appropriate positions; HIR lowering needs to handle that
333 EXPR_STMT | BLOCK => FragmentKind::Expr, 333 EXPR_STMT | BLOCK_EXPR => FragmentKind::Expr,
334 ARG_LIST => FragmentKind::Expr, 334 ARG_LIST => FragmentKind::Expr,
335 TRY_EXPR => FragmentKind::Expr, 335 TRY_EXPR => FragmentKind::Expr,
336 TUPLE_EXPR => FragmentKind::Expr, 336 TUPLE_EXPR => FragmentKind::Expr,
@@ -342,7 +342,6 @@ fn to_fragment_kind(db: &dyn AstDatabase, id: MacroCallId) -> FragmentKind {
342 CONDITION => FragmentKind::Expr, 342 CONDITION => FragmentKind::Expr,
343 BREAK_EXPR => FragmentKind::Expr, 343 BREAK_EXPR => FragmentKind::Expr,
344 RETURN_EXPR => FragmentKind::Expr, 344 RETURN_EXPR => FragmentKind::Expr,
345 BLOCK_EXPR => FragmentKind::Expr,
346 MATCH_EXPR => FragmentKind::Expr, 345 MATCH_EXPR => FragmentKind::Expr,
347 MATCH_ARM => FragmentKind::Expr, 346 MATCH_ARM => FragmentKind::Expr,
348 MATCH_GUARD => FragmentKind::Expr, 347 MATCH_GUARD => FragmentKind::Expr,
diff --git a/crates/ra_hir_ty/src/tests/simple.rs b/crates/ra_hir_ty/src/tests/simple.rs
index 56abc65b8..3d3088965 100644
--- a/crates/ra_hir_ty/src/tests/simple.rs
+++ b/crates/ra_hir_ty/src/tests/simple.rs
@@ -1755,3 +1755,35 @@ fn main() {
1755 "### 1755 "###
1756 ); 1756 );
1757} 1757}
1758
1759#[test]
1760fn effects_smoke_test() {
1761 assert_snapshot!(
1762 infer(r#"
1763fn main() {
1764 let x = unsafe { 92 };
1765 let y = async { async { () }.await };
1766 let z = try { () };
1767 let t = 'a: { 92 };
1768}
1769"#),
1770 @r###"
1771 11..131 '{ ...2 }; }': ()
1772 21..22 'x': i32
1773 32..38 '{ 92 }': i32
1774 34..36 '92': i32
1775 48..49 'y': {unknown}
1776 58..80 '{ asyn...wait }': {unknown}
1777 60..78 'async ....await': {unknown}
1778 66..72 '{ () }': ()
1779 68..70 '()': ()
1780 90..91 'z': {unknown}
1781 94..104 'try { () }': {unknown}
1782 98..104 '{ () }': ()
1783 100..102 '()': ()
1784 114..115 't': i32
1785 122..128 '{ 92 }': i32
1786 124..126 '92': i32
1787 "###
1788 )
1789}
diff --git a/crates/ra_ide/src/completion/completion_context.rs b/crates/ra_ide/src/completion/completion_context.rs
index 118fceb2e..c529752d4 100644
--- a/crates/ra_ide/src/completion/completion_context.rs
+++ b/crates/ra_ide/src/completion/completion_context.rs
@@ -344,7 +344,7 @@ impl<'a> CompletionContext<'a> {
344 stmt.syntax().text_range() == name_ref.syntax().text_range(), 344 stmt.syntax().text_range() == name_ref.syntax().text_range(),
345 ); 345 );
346 } 346 }
347 if let Some(block) = ast::Block::cast(node) { 347 if let Some(block) = ast::BlockExpr::cast(node) {
348 return Some( 348 return Some(
349 block.expr().map(|e| e.syntax().text_range()) 349 block.expr().map(|e| e.syntax().text_range())
350 == Some(name_ref.syntax().text_range()), 350 == Some(name_ref.syntax().text_range()),
diff --git a/crates/ra_ide/src/folding_ranges.rs b/crates/ra_ide/src/folding_ranges.rs
index 4379005aa..8657377de 100644
--- a/crates/ra_ide/src/folding_ranges.rs
+++ b/crates/ra_ide/src/folding_ranges.rs
@@ -88,7 +88,7 @@ fn fold_kind(kind: SyntaxKind) -> Option<FoldKind> {
88 | ITEM_LIST 88 | ITEM_LIST
89 | EXTERN_ITEM_LIST 89 | EXTERN_ITEM_LIST
90 | USE_TREE_LIST 90 | USE_TREE_LIST
91 | BLOCK 91 | BLOCK_EXPR
92 | MATCH_ARM_LIST 92 | MATCH_ARM_LIST
93 | ENUM_VARIANT_LIST 93 | ENUM_VARIANT_LIST
94 | TOKEN_TREE => Some(FoldKind::Block), 94 | TOKEN_TREE => Some(FoldKind::Block),
diff --git a/crates/ra_ide/src/join_lines.rs b/crates/ra_ide/src/join_lines.rs
index d0def7eaa..63fd6b3e4 100644
--- a/crates/ra_ide/src/join_lines.rs
+++ b/crates/ra_ide/src/join_lines.rs
@@ -129,8 +129,7 @@ fn has_comma_after(node: &SyntaxNode) -> bool {
129} 129}
130 130
131fn join_single_expr_block(edit: &mut TextEditBuilder, token: &SyntaxToken) -> Option<()> { 131fn join_single_expr_block(edit: &mut TextEditBuilder, token: &SyntaxToken) -> Option<()> {
132 let block = ast::Block::cast(token.parent())?; 132 let block_expr = ast::BlockExpr::cast(token.parent())?;
133 let block_expr = ast::BlockExpr::cast(block.syntax().parent()?)?;
134 if !block_expr.is_standalone() { 133 if !block_expr.is_standalone() {
135 return None; 134 return None;
136 } 135 }
diff --git a/crates/ra_ide/src/syntax_tree.rs b/crates/ra_ide/src/syntax_tree.rs
index bf97f8c56..86c70ff83 100644
--- a/crates/ra_ide/src/syntax_tree.rs
+++ b/crates/ra_ide/src/syntax_tree.rs
@@ -120,9 +120,8 @@ [email protected]
120 [email protected] ")" 120 [email protected] ")"
121 [email protected] " " 121 [email protected] " "
122 [email protected] 122 [email protected]
123 [email protected] 123 [email protected] "{"
124 [email protected] "{" 124 [email protected] "}"
125 [email protected] "}"
126"# 125"#
127 .trim() 126 .trim()
128 ); 127 );
@@ -153,26 +152,25 @@ [email protected]
153 [email protected] ")" 152 [email protected] ")"
154 [email protected] " " 153 [email protected] " "
155 [email protected] 154 [email protected]
156 [email protected] 155 [email protected] "{"
157 [email protected] "{" 156 [email protected] "\n "
158 [email protected] "\n " 157 [email protected]
159 [email protected] 158 [email protected]
160 [email protected] 159 [email protected]
161 [email protected] 160 [email protected]
162 [email protected] 161 [email protected]
163 [email protected] 162 [email protected] "assert"
164 [email protected] "assert" 163 [email protected] "!"
165 [email protected] "!" 164 [email protected]
166 [email protected] 165 [email protected] "("
167 [email protected] "(" 166 [email protected] "\"\n fn foo() {\n ..."
168 [email protected] "\"\n fn foo() {\n ..." 167 [email protected] ","
169 [email protected] "," 168 [email protected] " "
170 [email protected] " " 169 [email protected] "\"\""
171 [email protected] "\"\"" 170 [email protected] ")"
172 [email protected] ")" 171 [email protected] ";"
173 [email protected] ";" 172 [email protected] "\n"
174 [email protected] "\n" 173 [email protected] "}"
175 [email protected] "}"
176"# 174"#
177 .trim() 175 .trim()
178 ); 176 );
@@ -196,9 +194,8 @@ [email protected]
196 [email protected] ")" 194 [email protected] ")"
197 [email protected] " " 195 [email protected] " "
198 [email protected] 196 [email protected]
199 [email protected] 197 [email protected] "{"
200 [email protected] "{" 198 [email protected] "}"
201 [email protected] "}"
202"# 199"#
203 .trim() 200 .trim()
204 ); 201 );
@@ -265,10 +262,9 @@ [email protected]
265 [email protected] ")" 262 [email protected] ")"
266 [email protected] " " 263 [email protected] " "
267 [email protected] 264 [email protected]
268 [email protected] 265 [email protected] "{"
269 [email protected] "{" 266 [email protected] "\n"
270 [email protected] "\n" 267 [email protected] "}"
271 [email protected] "}"
272"# 268"#
273 .trim() 269 .trim()
274 ); 270 );
@@ -300,10 +296,9 @@ [email protected]
300 [email protected] ")" 296 [email protected] ")"
301 [email protected] " " 297 [email protected] " "
302 [email protected] 298 [email protected]
303 [email protected] 299 [email protected] "{"
304 [email protected] "{" 300 [email protected] "\n"
305 [email protected] "\n" 301 [email protected] "}"
306 [email protected] "}"
307"# 302"#
308 .trim() 303 .trim()
309 ); 304 );
@@ -334,10 +329,9 @@ [email protected]
334 [email protected] ")" 329 [email protected] ")"
335 [email protected] " " 330 [email protected] " "
336 [email protected] 331 [email protected]
337 [email protected] 332 [email protected] "{"
338 [email protected] "{" 333 [email protected] "\n"
339 [email protected] "\n" 334 [email protected] "}"
340 [email protected] "}"
341 [email protected] "\n" 335 [email protected] "\n"
342 [email protected] 336 [email protected]
343 [email protected] "fn" 337 [email protected] "fn"
@@ -349,10 +343,9 @@ [email protected]
349 [email protected] ")" 343 [email protected] ")"
350 [email protected] " " 344 [email protected] " "
351 [email protected] 345 [email protected]
352 [email protected] 346 [email protected] "{"
353 [email protected] "{" 347 [email protected] "\n"
354 [email protected] "\n" 348 [email protected] "}"
355 [email protected] "}"
356"# 349"#
357 .trim() 350 .trim()
358 ); 351 );
diff --git a/crates/ra_mbe/src/tests.rs b/crates/ra_mbe/src/tests.rs
index 0d924ce58..c43003fd6 100644
--- a/crates/ra_mbe/src/tests.rs
+++ b/crates/ra_mbe/src/tests.rs
@@ -266,21 +266,20 @@ fn test_expr_order() {
266 [email protected] "(" 266 [email protected] "("
267 [email protected] ")" 267 [email protected] ")"
268 [email protected] 268 [email protected]
269 [email protected] 269 [email protected] "{"
270 [email protected] "{" 270 [email protected]
271 [email protected] 271 [email protected]
272 [email protected] 272 [email protected]
273 [email protected] 273 [email protected]
274 [email protected] 274 [email protected] "1"
275 [email protected] "1" 275 [email protected] "+"
276 [email protected] "+" 276 [email protected]
277 [email protected] 277 [email protected] "1"
278 [email protected] "1" 278 [email protected] "*"
279 [email protected] "*" 279 [email protected]
280 [email protected] 280 [email protected] "2"
281 [email protected] "2" 281 [email protected] ";"
282 [email protected] ";" 282 [email protected] "}""#,
283 [email protected] "}""#,
284 ); 283 );
285} 284}
286 285
@@ -1114,68 +1113,67 @@ fn test_vec() {
1114 assert_eq!( 1113 assert_eq!(
1115 format!("{:#?}", tree).trim(), 1114 format!("{:#?}", tree).trim(),
1116 r#"[email protected] 1115 r#"[email protected]
1117 [email protected] 1116 [email protected] "{"
1118 [email protected] "{" 1117 [email protected]
1119 [email protected] 1118 [email protected] "let"
1120 [email protected] "let" 1119 [email protected]
1121 [email protected] 1120 [email protected] "mut"
1122 [email protected] "mut" 1121 [email protected]
1123 [email protected] 1122 [email protected] "v"
1124 [email protected] "v" 1123 [email protected] "="
1125 [email protected] "=" 1124 [email protected]
1126 [email protected] 1125 [email protected]
1127 [email protected] 1126 [email protected]
1128 [email protected] 1127 [email protected]
1129 [email protected] 1128 [email protected]
1130 [email protected] 1129 [email protected]
1131 [email protected] 1130 [email protected] "Vec"
1132 [email protected] "Vec" 1131 [email protected] "::"
1133 [email protected] "::" 1132 [email protected]
1134 [email protected] 1133 [email protected]
1135 [email protected] 1134 [email protected] "new"
1136 [email protected] "new" 1135 [email protected]
1137 [email protected] 1136 [email protected] "("
1138 [email protected] "(" 1137 [email protected] ")"
1139 [email protected] ")" 1138 [email protected] ";"
1140 [email protected] ";" 1139 [email protected]
1141 [email protected] 1140 [email protected]
1142 [email protected] 1141 [email protected]
1143 [email protected] 1142 [email protected]
1144 [email protected] 1143 [email protected]
1145 [email protected] 1144 [email protected]
1146 [email protected] 1145 [email protected] "v"
1147 [email protected] "v" 1146 [email protected] "."
1148 [email protected] "." 1147 [email protected]
1149 [email protected] 1148 [email protected] "push"
1150 [email protected] "push" 1149 [email protected]
1151 [email protected] 1150 [email protected] "("
1152 [email protected] "(" 1151 [email protected]
1153 [email protected] 1152 [email protected] "1u32"
1154 [email protected] "1u32" 1153 [email protected] ")"
1155 [email protected] ")" 1154 [email protected] ";"
1156 [email protected] ";" 1155 [email protected]
1157 [email protected] 1156 [email protected]
1158 [email protected] 1157 [email protected]
1159 [email protected] 1158 [email protected]
1160 [email protected] 1159 [email protected]
1161 [email protected] 1160 [email protected]
1162 [email protected] 1161 [email protected] "v"
1163 [email protected] "v" 1162 [email protected] "."
1164 [email protected] "." 1163 [email protected]
1165 [email protected] 1164 [email protected] "push"
1166 [email protected] "push" 1165 [email protected]
1167 [email protected] 1166 [email protected] "("
1168 [email protected] "(" 1167 [email protected]
1169 [email protected] 1168 [email protected] "2"
1170 [email protected] "2" 1169 [email protected] ")"
1171 [email protected] ")" 1170 [email protected] ";"
1172 [email protected] ";" 1171 [email protected]
1173 [email protected] 1172 [email protected]
1174 [email protected] 1173 [email protected]
1175 [email protected] 1174 [email protected]
1176 [email protected] 1175 [email protected] "v"
1177 [email protected] "v" 1176 [email protected] "}""#
1178 [email protected] "}""#
1179 ); 1177 );
1180} 1178}
1181 1179
diff --git a/crates/ra_parser/src/grammar.rs b/crates/ra_parser/src/grammar.rs
index c2a6e82e9..d9824ff9b 100644
--- a/crates/ra_parser/src/grammar.rs
+++ b/crates/ra_parser/src/grammar.rs
@@ -143,7 +143,7 @@ pub(crate) fn reparser(
143 parent: Option<SyntaxKind>, 143 parent: Option<SyntaxKind>,
144) -> Option<fn(&mut Parser)> { 144) -> Option<fn(&mut Parser)> {
145 let res = match node { 145 let res = match node {
146 BLOCK => expressions::naked_block, 146 BLOCK_EXPR => expressions::block,
147 RECORD_FIELD_DEF_LIST => items::record_field_def_list, 147 RECORD_FIELD_DEF_LIST => items::record_field_def_list,
148 RECORD_FIELD_LIST => items::record_field_list, 148 RECORD_FIELD_LIST => items::record_field_list,
149 ENUM_VARIANT_LIST => items::enum_variant_list, 149 ENUM_VARIANT_LIST => items::enum_variant_list,
diff --git a/crates/ra_parser/src/grammar/expressions.rs b/crates/ra_parser/src/grammar/expressions.rs
index cb30b25a8..a23dbcacf 100644
--- a/crates/ra_parser/src/grammar/expressions.rs
+++ b/crates/ra_parser/src/grammar/expressions.rs
@@ -59,16 +59,7 @@ pub(crate) fn block(p: &mut Parser) {
59 p.error("expected a block"); 59 p.error("expected a block");
60 return; 60 return;
61 } 61 }
62 atom::block_expr(p, None); 62 atom::block_expr(p);
63}
64
65pub(crate) fn naked_block(p: &mut Parser) {
66 assert!(p.at(T!['{']));
67 let m = p.start();
68 p.bump(T!['{']);
69 expr_block_contents(p);
70 p.expect(T!['}']);
71 m.complete(p, BLOCK);
72} 63}
73 64
74fn is_expr_stmt_attr_allowed(kind: SyntaxKind) -> bool { 65fn is_expr_stmt_attr_allowed(kind: SyntaxKind) -> bool {
@@ -197,7 +188,7 @@ pub(super) fn stmt(p: &mut Parser, with_semi: StmtWithSemi) {
197 } 188 }
198} 189}
199 190
200pub(crate) fn expr_block_contents(p: &mut Parser) { 191pub(super) fn expr_block_contents(p: &mut Parser) {
201 // This is checked by a validator 192 // This is checked by a validator
202 attributes::inner_attributes(p); 193 attributes::inner_attributes(p);
203 194
diff --git a/crates/ra_parser/src/grammar/expressions/atom.rs b/crates/ra_parser/src/grammar/expressions/atom.rs
index 166dfc472..efb424dae 100644
--- a/crates/ra_parser/src/grammar/expressions/atom.rs
+++ b/crates/ra_parser/src/grammar/expressions/atom.rs
@@ -92,7 +92,12 @@ pub(super) fn atom_expr(p: &mut Parser, r: Restrictions) -> Option<(CompletedMar
92 T![loop] => loop_expr(p, Some(m)), 92 T![loop] => loop_expr(p, Some(m)),
93 T![for] => for_expr(p, Some(m)), 93 T![for] => for_expr(p, Some(m)),
94 T![while] => while_expr(p, Some(m)), 94 T![while] => while_expr(p, Some(m)),
95 T!['{'] => block_expr(p, Some(m)), 95 // test labeled_block
96 // fn f() { 'label: {}; }
97 T!['{'] => {
98 block_expr(p);
99 m.complete(p, EFFECT_EXPR)
100 }
96 _ => { 101 _ => {
97 // test_err misplaced_label_err 102 // test_err misplaced_label_err
98 // fn main() { 103 // fn main() {
@@ -108,13 +113,17 @@ pub(super) fn atom_expr(p: &mut Parser, r: Restrictions) -> Option<(CompletedMar
108 let m = p.start(); 113 let m = p.start();
109 p.bump(T![async]); 114 p.bump(T![async]);
110 p.eat(T![move]); 115 p.eat(T![move]);
111 block_expr(p, Some(m)) 116 block_expr(p);
117 m.complete(p, EFFECT_EXPR)
112 } 118 }
113 T![match] => match_expr(p), 119 T![match] => match_expr(p),
120 // test unsafe_block
121 // fn f() { unsafe { } }
114 T![unsafe] if la == T!['{'] => { 122 T![unsafe] if la == T!['{'] => {
115 let m = p.start(); 123 let m = p.start();
116 p.bump(T![unsafe]); 124 p.bump(T![unsafe]);
117 block_expr(p, Some(m)) 125 block_expr(p);
126 m.complete(p, EFFECT_EXPR)
118 } 127 }
119 T!['{'] => { 128 T!['{'] => {
120 // test for_range_from 129 // test for_range_from
@@ -123,7 +132,7 @@ pub(super) fn atom_expr(p: &mut Parser, r: Restrictions) -> Option<(CompletedMar
123 // break; 132 // break;
124 // } 133 // }
125 // } 134 // }
126 block_expr(p, None) 135 block_expr(p)
127 } 136 }
128 T![return] => return_expr(p), 137 T![return] => return_expr(p),
129 T![continue] => continue_expr(p), 138 T![continue] => continue_expr(p),
@@ -134,7 +143,7 @@ pub(super) fn atom_expr(p: &mut Parser, r: Restrictions) -> Option<(CompletedMar
134 } 143 }
135 }; 144 };
136 let blocklike = match done.kind() { 145 let blocklike = match done.kind() {
137 IF_EXPR | WHILE_EXPR | FOR_EXPR | LOOP_EXPR | MATCH_EXPR | BLOCK_EXPR | TRY_BLOCK_EXPR => { 146 IF_EXPR | WHILE_EXPR | FOR_EXPR | LOOP_EXPR | MATCH_EXPR | BLOCK_EXPR | EFFECT_EXPR => {
138 BlockLike::Block 147 BlockLike::Block
139 } 148 }
140 _ => BlockLike::NotBlock, 149 _ => BlockLike::NotBlock,
@@ -234,7 +243,7 @@ fn lambda_expr(p: &mut Parser) -> CompletedMarker {
234 if p.at(T!['{']) { 243 if p.at(T!['{']) {
235 // test lambda_ret_block 244 // test lambda_ret_block
236 // fn main() { || -> i32 { 92 }(); } 245 // fn main() { || -> i32 { 92 }(); }
237 block_expr(p, None); 246 block_expr(p);
238 } else { 247 } else {
239 p.error("expected `{`"); 248 p.error("expected `{`");
240 } 249 }
@@ -461,13 +470,13 @@ fn match_guard(p: &mut Parser) -> CompletedMarker {
461// test block_expr 470// test block_expr
462// fn foo() { 471// fn foo() {
463// {}; 472// {};
464// unsafe {};
465// 'label: {};
466// } 473// }
467pub(super) fn block_expr(p: &mut Parser, m: Option<Marker>) -> CompletedMarker { 474pub(super) fn block_expr(p: &mut Parser) -> CompletedMarker {
468 assert!(p.at(T!['{'])); 475 assert!(p.at(T!['{']));
469 let m = m.unwrap_or_else(|| p.start()); 476 let m = p.start();
470 naked_block(p); 477 p.bump(T!['{']);
478 expr_block_contents(p);
479 p.expect(T!['}']);
471 m.complete(p, BLOCK_EXPR) 480 m.complete(p, BLOCK_EXPR)
472} 481}
473 482
@@ -552,8 +561,8 @@ fn try_block_expr(p: &mut Parser, m: Option<Marker>) -> CompletedMarker {
552 } 561 }
553 562
554 p.bump(T![try]); 563 p.bump(T![try]);
555 block(p); 564 block_expr(p);
556 m.complete(p, TRY_EXPR) 565 m.complete(p, EFFECT_EXPR)
557} 566}
558 567
559// test box_expr 568// test box_expr
diff --git a/crates/ra_parser/src/syntax_kind/generated.rs b/crates/ra_parser/src/syntax_kind/generated.rs
index 524e7d784..e7404492a 100644
--- a/crates/ra_parser/src/syntax_kind/generated.rs
+++ b/crates/ra_parser/src/syntax_kind/generated.rs
@@ -191,7 +191,7 @@ pub enum SyntaxKind {
191 RECORD_LIT, 191 RECORD_LIT,
192 RECORD_FIELD_LIST, 192 RECORD_FIELD_LIST,
193 RECORD_FIELD, 193 RECORD_FIELD,
194 TRY_BLOCK_EXPR, 194 EFFECT_EXPR,
195 BOX_EXPR, 195 BOX_EXPR,
196 CALL_EXPR, 196 CALL_EXPR,
197 INDEX_EXPR, 197 INDEX_EXPR,
@@ -204,7 +204,6 @@ pub enum SyntaxKind {
204 PREFIX_EXPR, 204 PREFIX_EXPR,
205 RANGE_EXPR, 205 RANGE_EXPR,
206 BIN_EXPR, 206 BIN_EXPR,
207 BLOCK,
208 EXTERN_BLOCK, 207 EXTERN_BLOCK,
209 EXTERN_ITEM_LIST, 208 EXTERN_ITEM_LIST,
210 ENUM_VARIANT, 209 ENUM_VARIANT,
diff --git a/crates/ra_syntax/src/ast.rs b/crates/ra_syntax/src/ast.rs
index a716e525b..1876afe95 100644
--- a/crates/ra_syntax/src/ast.rs
+++ b/crates/ra_syntax/src/ast.rs
@@ -16,7 +16,7 @@ use crate::{
16}; 16};
17 17
18pub use self::{ 18pub use self::{
19 expr_extensions::{ArrayExprKind, BinOp, ElseBranch, LiteralKind, PrefixOp, RangeOp}, 19 expr_extensions::{ArrayExprKind, BinOp, Effect, ElseBranch, LiteralKind, PrefixOp, RangeOp},
20 extensions::{ 20 extensions::{
21 AttrKind, FieldKind, NameOrNameRef, PathSegmentKind, SelfParamKind, SlicePatComponents, 21 AttrKind, FieldKind, NameOrNameRef, PathSegmentKind, SelfParamKind, SlicePatComponents,
22 StructKind, TypeBoundKind, VisibilityKind, 22 StructKind, TypeBoundKind, VisibilityKind,
diff --git a/crates/ra_syntax/src/ast/edit.rs b/crates/ra_syntax/src/ast/edit.rs
index 26e4576ff..c507dc683 100644
--- a/crates/ra_syntax/src/ast/edit.rs
+++ b/crates/ra_syntax/src/ast/edit.rs
@@ -28,7 +28,7 @@ impl ast::BinExpr {
28 28
29impl ast::FnDef { 29impl ast::FnDef {
30 #[must_use] 30 #[must_use]
31 pub fn with_body(&self, body: ast::Block) -> ast::FnDef { 31 pub fn with_body(&self, body: ast::BlockExpr) -> ast::FnDef {
32 let mut to_insert: ArrayVec<[SyntaxElement; 2]> = ArrayVec::new(); 32 let mut to_insert: ArrayVec<[SyntaxElement; 2]> = ArrayVec::new();
33 let old_body_or_semi: SyntaxElement = if let Some(old_body) = self.body() { 33 let old_body_or_semi: SyntaxElement = if let Some(old_body) = self.body() {
34 old_body.syntax().clone().into() 34 old_body.syntax().clone().into()
diff --git a/crates/ra_syntax/src/ast/expr_extensions.rs b/crates/ra_syntax/src/ast/expr_extensions.rs
index ecf74fd36..7ee36e60c 100644
--- a/crates/ra_syntax/src/ast/expr_extensions.rs
+++ b/crates/ra_syntax/src/ast/expr_extensions.rs
@@ -16,7 +16,7 @@ impl ast::Expr {
16 | ast::Expr::WhileExpr(_) 16 | ast::Expr::WhileExpr(_)
17 | ast::Expr::BlockExpr(_) 17 | ast::Expr::BlockExpr(_)
18 | ast::Expr::MatchExpr(_) 18 | ast::Expr::MatchExpr(_)
19 | ast::Expr::TryBlockExpr(_) => true, 19 | ast::Expr::EffectExpr(_) => true,
20 _ => false, 20 _ => false,
21 } 21 }
22 } 22 }
@@ -359,6 +359,33 @@ impl ast::Literal {
359 } 359 }
360} 360}
361 361
362#[derive(Debug, Clone, PartialEq, Eq)]
363pub enum Effect {
364 Async(SyntaxToken),
365 Unsafe(SyntaxToken),
366 Try(SyntaxToken),
367 // Very much not an effect, but we stuff it into this node anyway
368 Label(ast::Label),
369}
370
371impl ast::EffectExpr {
372 pub fn effect(&self) -> Effect {
373 if let Some(token) = self.async_token() {
374 return Effect::Async(token);
375 }
376 if let Some(token) = self.unsafe_token() {
377 return Effect::Unsafe(token);
378 }
379 if let Some(token) = self.try_token() {
380 return Effect::Try(token);
381 }
382 if let Some(label) = self.label() {
383 return Effect::Label(label);
384 }
385 unreachable!("ast::EffectExpr without Effect")
386 }
387}
388
362impl ast::BlockExpr { 389impl ast::BlockExpr {
363 /// false if the block is an intrinsic part of the syntax and can't be 390 /// false if the block is an intrinsic part of the syntax and can't be
364 /// replaced with arbitrary expression. 391 /// replaced with arbitrary expression.
@@ -368,15 +395,12 @@ impl ast::BlockExpr {
368 /// const FOO: () = { stand_alone }; 395 /// const FOO: () = { stand_alone };
369 /// ``` 396 /// ```
370 pub fn is_standalone(&self) -> bool { 397 pub fn is_standalone(&self) -> bool {
371 if self.unsafe_token().is_some() || self.async_token().is_some() { 398 let parent = match self.syntax().parent() {
372 return false; 399 Some(it) => it,
373 }
374 let kind = match self.syntax().parent() {
375 None => return true, 400 None => return true,
376 Some(it) => it.kind(),
377 }; 401 };
378 match kind { 402 match parent.kind() {
379 FN_DEF | IF_EXPR | WHILE_EXPR | LOOP_EXPR | TRY_BLOCK_EXPR => false, 403 FN_DEF | IF_EXPR | WHILE_EXPR | LOOP_EXPR | EFFECT_EXPR => false,
380 _ => true, 404 _ => true,
381 } 405 }
382 } 406 }
diff --git a/crates/ra_syntax/src/ast/generated/nodes.rs b/crates/ra_syntax/src/ast/generated/nodes.rs
index 2096f12f1..5e844d5ae 100644
--- a/crates/ra_syntax/src/ast/generated/nodes.rs
+++ b/crates/ra_syntax/src/ast/generated/nodes.rs
@@ -476,13 +476,16 @@ impl LoopExpr {
476} 476}
477 477
478#[derive(Debug, Clone, PartialEq, Eq, Hash)] 478#[derive(Debug, Clone, PartialEq, Eq, Hash)]
479pub struct TryBlockExpr { 479pub struct EffectExpr {
480 pub(crate) syntax: SyntaxNode, 480 pub(crate) syntax: SyntaxNode,
481} 481}
482impl ast::AttrsOwner for TryBlockExpr {} 482impl ast::AttrsOwner for EffectExpr {}
483impl TryBlockExpr { 483impl EffectExpr {
484 pub fn label(&self) -> Option<Label> { support::child(&self.syntax) }
484 pub fn try_token(&self) -> Option<SyntaxToken> { support::token(&self.syntax, T![try]) } 485 pub fn try_token(&self) -> Option<SyntaxToken> { support::token(&self.syntax, T![try]) }
485 pub fn body(&self) -> Option<BlockExpr> { support::child(&self.syntax) } 486 pub fn unsafe_token(&self) -> Option<SyntaxToken> { support::token(&self.syntax, T![unsafe]) }
487 pub fn async_token(&self) -> Option<SyntaxToken> { support::token(&self.syntax, T![async]) }
488 pub fn block_expr(&self) -> Option<BlockExpr> { support::child(&self.syntax) }
486} 489}
487 490
488#[derive(Debug, Clone, PartialEq, Eq, Hash)] 491#[derive(Debug, Clone, PartialEq, Eq, Hash)]
@@ -551,11 +554,12 @@ pub struct BlockExpr {
551 pub(crate) syntax: SyntaxNode, 554 pub(crate) syntax: SyntaxNode,
552} 555}
553impl ast::AttrsOwner for BlockExpr {} 556impl ast::AttrsOwner for BlockExpr {}
557impl ast::ModuleItemOwner for BlockExpr {}
554impl BlockExpr { 558impl BlockExpr {
555 pub fn label(&self) -> Option<Label> { support::child(&self.syntax) } 559 pub fn l_curly_token(&self) -> Option<SyntaxToken> { support::token(&self.syntax, T!['{']) }
556 pub fn unsafe_token(&self) -> Option<SyntaxToken> { support::token(&self.syntax, T![unsafe]) } 560 pub fn statements(&self) -> AstChildren<Stmt> { support::children(&self.syntax) }
557 pub fn async_token(&self) -> Option<SyntaxToken> { support::token(&self.syntax, T![async]) } 561 pub fn expr(&self) -> Option<Expr> { support::child(&self.syntax) }
558 pub fn block(&self) -> Option<Block> { support::child(&self.syntax) } 562 pub fn r_curly_token(&self) -> Option<SyntaxToken> { support::token(&self.syntax, T!['}']) }
559} 563}
560 564
561#[derive(Debug, Clone, PartialEq, Eq, Hash)] 565#[derive(Debug, Clone, PartialEq, Eq, Hash)]
@@ -627,8 +631,8 @@ pub struct TryExpr {
627} 631}
628impl ast::AttrsOwner for TryExpr {} 632impl ast::AttrsOwner for TryExpr {}
629impl TryExpr { 633impl TryExpr {
630 pub fn try_token(&self) -> Option<SyntaxToken> { support::token(&self.syntax, T![try]) }
631 pub fn expr(&self) -> Option<Expr> { support::child(&self.syntax) } 634 pub fn expr(&self) -> Option<Expr> { support::child(&self.syntax) }
635 pub fn question_mark_token(&self) -> Option<SyntaxToken> { support::token(&self.syntax, T![?]) }
632} 636}
633 637
634#[derive(Debug, Clone, PartialEq, Eq, Hash)] 638#[derive(Debug, Clone, PartialEq, Eq, Hash)]
@@ -1122,19 +1126,6 @@ impl Condition {
1122} 1126}
1123 1127
1124#[derive(Debug, Clone, PartialEq, Eq, Hash)] 1128#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1125pub struct Block {
1126 pub(crate) syntax: SyntaxNode,
1127}
1128impl ast::AttrsOwner for Block {}
1129impl ast::ModuleItemOwner for Block {}
1130impl Block {
1131 pub fn l_curly_token(&self) -> Option<SyntaxToken> { support::token(&self.syntax, T!['{']) }
1132 pub fn statements(&self) -> AstChildren<Stmt> { support::children(&self.syntax) }
1133 pub fn expr(&self) -> Option<Expr> { support::child(&self.syntax) }
1134 pub fn r_curly_token(&self) -> Option<SyntaxToken> { support::token(&self.syntax, T!['}']) }
1135}
1136
1137#[derive(Debug, Clone, PartialEq, Eq, Hash)]
1138pub struct ParamList { 1129pub struct ParamList {
1139 pub(crate) syntax: SyntaxNode, 1130 pub(crate) syntax: SyntaxNode,
1140} 1131}
@@ -1477,7 +1468,7 @@ pub enum Expr {
1477 FieldExpr(FieldExpr), 1468 FieldExpr(FieldExpr),
1478 AwaitExpr(AwaitExpr), 1469 AwaitExpr(AwaitExpr),
1479 TryExpr(TryExpr), 1470 TryExpr(TryExpr),
1480 TryBlockExpr(TryBlockExpr), 1471 EffectExpr(EffectExpr),
1481 CastExpr(CastExpr), 1472 CastExpr(CastExpr),
1482 RefExpr(RefExpr), 1473 RefExpr(RefExpr),
1483 PrefixExpr(PrefixExpr), 1474 PrefixExpr(PrefixExpr),
@@ -1960,8 +1951,8 @@ impl AstNode for LoopExpr {
1960 } 1951 }
1961 fn syntax(&self) -> &SyntaxNode { &self.syntax } 1952 fn syntax(&self) -> &SyntaxNode { &self.syntax }
1962} 1953}
1963impl AstNode for TryBlockExpr { 1954impl AstNode for EffectExpr {
1964 fn can_cast(kind: SyntaxKind) -> bool { kind == TRY_BLOCK_EXPR } 1955 fn can_cast(kind: SyntaxKind) -> bool { kind == EFFECT_EXPR }
1965 fn cast(syntax: SyntaxNode) -> Option<Self> { 1956 fn cast(syntax: SyntaxNode) -> Option<Self> {
1966 if Self::can_cast(syntax.kind()) { 1957 if Self::can_cast(syntax.kind()) {
1967 Some(Self { syntax }) 1958 Some(Self { syntax })
@@ -2653,17 +2644,6 @@ impl AstNode for Condition {
2653 } 2644 }
2654 fn syntax(&self) -> &SyntaxNode { &self.syntax } 2645 fn syntax(&self) -> &SyntaxNode { &self.syntax }
2655} 2646}
2656impl AstNode for Block {
2657 fn can_cast(kind: SyntaxKind) -> bool { kind == BLOCK }
2658 fn cast(syntax: SyntaxNode) -> Option<Self> {
2659 if Self::can_cast(syntax.kind()) {
2660 Some(Self { syntax })
2661 } else {
2662 None
2663 }
2664 }
2665 fn syntax(&self) -> &SyntaxNode { &self.syntax }
2666}
2667impl AstNode for ParamList { 2647impl AstNode for ParamList {
2668 fn can_cast(kind: SyntaxKind) -> bool { kind == PARAM_LIST } 2648 fn can_cast(kind: SyntaxKind) -> bool { kind == PARAM_LIST }
2669 fn cast(syntax: SyntaxNode) -> Option<Self> { 2649 fn cast(syntax: SyntaxNode) -> Option<Self> {
@@ -3312,8 +3292,8 @@ impl From<AwaitExpr> for Expr {
3312impl From<TryExpr> for Expr { 3292impl From<TryExpr> for Expr {
3313 fn from(node: TryExpr) -> Expr { Expr::TryExpr(node) } 3293 fn from(node: TryExpr) -> Expr { Expr::TryExpr(node) }
3314} 3294}
3315impl From<TryBlockExpr> for Expr { 3295impl From<EffectExpr> for Expr {
3316 fn from(node: TryBlockExpr) -> Expr { Expr::TryBlockExpr(node) } 3296 fn from(node: EffectExpr) -> Expr { Expr::EffectExpr(node) }
3317} 3297}
3318impl From<CastExpr> for Expr { 3298impl From<CastExpr> for Expr {
3319 fn from(node: CastExpr) -> Expr { Expr::CastExpr(node) } 3299 fn from(node: CastExpr) -> Expr { Expr::CastExpr(node) }
@@ -3345,9 +3325,10 @@ impl AstNode for Expr {
3345 TUPLE_EXPR | ARRAY_EXPR | PAREN_EXPR | PATH_EXPR | LAMBDA_EXPR | IF_EXPR 3325 TUPLE_EXPR | ARRAY_EXPR | PAREN_EXPR | PATH_EXPR | LAMBDA_EXPR | IF_EXPR
3346 | LOOP_EXPR | FOR_EXPR | WHILE_EXPR | CONTINUE_EXPR | BREAK_EXPR | LABEL 3326 | LOOP_EXPR | FOR_EXPR | WHILE_EXPR | CONTINUE_EXPR | BREAK_EXPR | LABEL
3347 | BLOCK_EXPR | RETURN_EXPR | MATCH_EXPR | RECORD_LIT | CALL_EXPR | INDEX_EXPR 3327 | BLOCK_EXPR | RETURN_EXPR | MATCH_EXPR | RECORD_LIT | CALL_EXPR | INDEX_EXPR
3348 | METHOD_CALL_EXPR | FIELD_EXPR | AWAIT_EXPR | TRY_EXPR | TRY_BLOCK_EXPR 3328 | METHOD_CALL_EXPR | FIELD_EXPR | AWAIT_EXPR | TRY_EXPR | EFFECT_EXPR | CAST_EXPR
3349 | CAST_EXPR | REF_EXPR | PREFIX_EXPR | RANGE_EXPR | BIN_EXPR | LITERAL | MACRO_CALL 3329 | REF_EXPR | PREFIX_EXPR | RANGE_EXPR | BIN_EXPR | LITERAL | MACRO_CALL | BOX_EXPR => {
3350 | BOX_EXPR => true, 3330 true
3331 }
3351 _ => false, 3332 _ => false,
3352 } 3333 }
3353 } 3334 }
@@ -3375,7 +3356,7 @@ impl AstNode for Expr {
3375 FIELD_EXPR => Expr::FieldExpr(FieldExpr { syntax }), 3356 FIELD_EXPR => Expr::FieldExpr(FieldExpr { syntax }),
3376 AWAIT_EXPR => Expr::AwaitExpr(AwaitExpr { syntax }), 3357 AWAIT_EXPR => Expr::AwaitExpr(AwaitExpr { syntax }),
3377 TRY_EXPR => Expr::TryExpr(TryExpr { syntax }), 3358 TRY_EXPR => Expr::TryExpr(TryExpr { syntax }),
3378 TRY_BLOCK_EXPR => Expr::TryBlockExpr(TryBlockExpr { syntax }), 3359 EFFECT_EXPR => Expr::EffectExpr(EffectExpr { syntax }),
3379 CAST_EXPR => Expr::CastExpr(CastExpr { syntax }), 3360 CAST_EXPR => Expr::CastExpr(CastExpr { syntax }),
3380 REF_EXPR => Expr::RefExpr(RefExpr { syntax }), 3361 REF_EXPR => Expr::RefExpr(RefExpr { syntax }),
3381 PREFIX_EXPR => Expr::PrefixExpr(PrefixExpr { syntax }), 3362 PREFIX_EXPR => Expr::PrefixExpr(PrefixExpr { syntax }),
@@ -3412,7 +3393,7 @@ impl AstNode for Expr {
3412 Expr::FieldExpr(it) => &it.syntax, 3393 Expr::FieldExpr(it) => &it.syntax,
3413 Expr::AwaitExpr(it) => &it.syntax, 3394 Expr::AwaitExpr(it) => &it.syntax,
3414 Expr::TryExpr(it) => &it.syntax, 3395 Expr::TryExpr(it) => &it.syntax,
3415 Expr::TryBlockExpr(it) => &it.syntax, 3396 Expr::EffectExpr(it) => &it.syntax,
3416 Expr::CastExpr(it) => &it.syntax, 3397 Expr::CastExpr(it) => &it.syntax,
3417 Expr::RefExpr(it) => &it.syntax, 3398 Expr::RefExpr(it) => &it.syntax,
3418 Expr::PrefixExpr(it) => &it.syntax, 3399 Expr::PrefixExpr(it) => &it.syntax,
@@ -3893,7 +3874,7 @@ impl std::fmt::Display for LoopExpr {
3893 std::fmt::Display::fmt(self.syntax(), f) 3874 std::fmt::Display::fmt(self.syntax(), f)
3894 } 3875 }
3895} 3876}
3896impl std::fmt::Display for TryBlockExpr { 3877impl std::fmt::Display for EffectExpr {
3897 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { 3878 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
3898 std::fmt::Display::fmt(self.syntax(), f) 3879 std::fmt::Display::fmt(self.syntax(), f)
3899 } 3880 }
@@ -4208,11 +4189,6 @@ impl std::fmt::Display for Condition {
4208 std::fmt::Display::fmt(self.syntax(), f) 4189 std::fmt::Display::fmt(self.syntax(), f)
4209 } 4190 }
4210} 4191}
4211impl std::fmt::Display for Block {
4212 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
4213 std::fmt::Display::fmt(self.syntax(), f)
4214 }
4215}
4216impl std::fmt::Display for ParamList { 4192impl std::fmt::Display for ParamList {
4217 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { 4193 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
4218 std::fmt::Display::fmt(self.syntax(), f) 4194 std::fmt::Display::fmt(self.syntax(), f)
diff --git a/crates/ra_syntax/src/ast/make.rs b/crates/ra_syntax/src/ast/make.rs
index 492088353..7b17fef49 100644
--- a/crates/ra_syntax/src/ast/make.rs
+++ b/crates/ra_syntax/src/ast/make.rs
@@ -82,14 +82,6 @@ pub fn block_expr(
82 ast_from_text(&format!("fn f() {}", buf)) 82 ast_from_text(&format!("fn f() {}", buf))
83} 83}
84 84
85pub fn block_from_expr(e: ast::Expr) -> ast::Block {
86 return from_text(&format!("{{ {} }}", e));
87
88 fn from_text(text: &str) -> ast::Block {
89 ast_from_text(&format!("fn f() {}", text))
90 }
91}
92
93pub fn expr_unit() -> ast::Expr { 85pub fn expr_unit() -> ast::Expr {
94 expr_from_text("()") 86 expr_from_text("()")
95} 87}
diff --git a/crates/ra_syntax/src/lib.rs b/crates/ra_syntax/src/lib.rs
index ceeb2bde9..d0234cada 100644
--- a/crates/ra_syntax/src/lib.rs
+++ b/crates/ra_syntax/src/lib.rs
@@ -237,8 +237,7 @@ fn api_walkthrough() {
237 237
238 // Let's get the `1 + 1` expression! 238 // Let's get the `1 + 1` expression!
239 let body: ast::BlockExpr = func.body().unwrap(); 239 let body: ast::BlockExpr = func.body().unwrap();
240 let block = body.block().unwrap(); 240 let expr: ast::Expr = body.expr().unwrap();
241 let expr: ast::Expr = block.expr().unwrap();
242 241
243 // Enums are used to group related ast nodes together, and can be used for 242 // Enums are used to group related ast nodes together, and can be used for
244 // matching. However, because there are no public fields, it's possible to 243 // matching. However, because there are no public fields, it's possible to
@@ -274,8 +273,8 @@ fn api_walkthrough() {
274 assert_eq!(text.to_string(), "1 + 1"); 273 assert_eq!(text.to_string(), "1 + 1");
275 274
276 // There's a bunch of traversal methods on `SyntaxNode`: 275 // There's a bunch of traversal methods on `SyntaxNode`:
277 assert_eq!(expr_syntax.parent().as_ref(), Some(block.syntax())); 276 assert_eq!(expr_syntax.parent().as_ref(), Some(body.syntax()));
278 assert_eq!(block.syntax().first_child_or_token().map(|it| it.kind()), Some(T!['{'])); 277 assert_eq!(body.syntax().first_child_or_token().map(|it| it.kind()), Some(T!['{']));
279 assert_eq!( 278 assert_eq!(
280 expr_syntax.next_sibling_or_token().map(|it| it.kind()), 279 expr_syntax.next_sibling_or_token().map(|it| it.kind()),
281 Some(SyntaxKind::WHITESPACE) 280 Some(SyntaxKind::WHITESPACE)
diff --git a/crates/ra_syntax/src/validation/block.rs b/crates/ra_syntax/src/validation/block.rs
index 8e962ab5b..2c08f7e6e 100644
--- a/crates/ra_syntax/src/validation/block.rs
+++ b/crates/ra_syntax/src/validation/block.rs
@@ -6,19 +6,17 @@ use crate::{
6 SyntaxKind::*, 6 SyntaxKind::*,
7}; 7};
8 8
9pub(crate) fn validate_block_expr(expr: ast::BlockExpr, errors: &mut Vec<SyntaxError>) { 9pub(crate) fn validate_block_expr(block: ast::BlockExpr, errors: &mut Vec<SyntaxError>) {
10 if let Some(parent) = expr.syntax().parent() { 10 if let Some(parent) = block.syntax().parent() {
11 match parent.kind() { 11 match parent.kind() {
12 FN_DEF | EXPR_STMT | BLOCK => return, 12 FN_DEF | EXPR_STMT | BLOCK_EXPR => return,
13 _ => {} 13 _ => {}
14 } 14 }
15 } 15 }
16 if let Some(block) = expr.block() { 16 errors.extend(block.attrs().map(|attr| {
17 errors.extend(block.attrs().map(|attr| { 17 SyntaxError::new(
18 SyntaxError::new( 18 "A block in this position cannot accept inner attributes",
19 "A block in this position cannot accept inner attributes", 19 attr.syntax().text_range(),
20 attr.syntax().text_range(), 20 )
21 ) 21 }))
22 }))
23 }
24} 22}
diff --git a/crates/ra_syntax/test_data/parser/err/0005_attribute_recover.rast b/crates/ra_syntax/test_data/parser/err/0005_attribute_recover.rast
index 95cc83caa..375ed45e0 100644
--- a/crates/ra_syntax/test_data/parser/err/0005_attribute_recover.rast
+++ b/crates/ra_syntax/test_data/parser/err/0005_attribute_recover.rast
@@ -28,10 +28,9 @@ [email protected]
28 [email protected] ")" 28 [email protected] ")"
29 [email protected] " " 29 [email protected] " "
30 [email protected] 30 [email protected]
31 [email protected] 31 [email protected] "{"
32 [email protected] "{" 32 [email protected] "\n"
33 [email protected] "\n" 33 [email protected] "}"
34 [email protected] "}"
35 [email protected] "\n\n\n" 34 [email protected] "\n\n\n"
36 [email protected] 35 [email protected]
37 [email protected] "#" 36 [email protected] "#"
diff --git a/crates/ra_syntax/test_data/parser/err/0007_stray_curly_in_file.rast b/crates/ra_syntax/test_data/parser/err/0007_stray_curly_in_file.rast
index dc3e12091..b72c92c33 100644
--- a/crates/ra_syntax/test_data/parser/err/0007_stray_curly_in_file.rast
+++ b/crates/ra_syntax/test_data/parser/err/0007_stray_curly_in_file.rast
@@ -21,9 +21,8 @@ [email protected]
21 [email protected] "(" 21 [email protected] "("
22 [email protected] ")" 22 [email protected] ")"
23 [email protected] 23 [email protected]
24 [email protected] 24 [email protected] "{"
25 [email protected] "{" 25 [email protected] "}"
26 [email protected] "}"
27 [email protected] "\n\n" 26 [email protected] "\n\n"
28 [email protected] 27 [email protected]
29 [email protected] "}" 28 [email protected] "}"
diff --git a/crates/ra_syntax/test_data/parser/err/0008_item_block_recovery.rast b/crates/ra_syntax/test_data/parser/err/0008_item_block_recovery.rast
index 97539fcf2..33953d8d7 100644
--- a/crates/ra_syntax/test_data/parser/err/0008_item_block_recovery.rast
+++ b/crates/ra_syntax/test_data/parser/err/0008_item_block_recovery.rast
@@ -9,10 +9,9 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n"
14 [email protected] "\n" 14 [email protected] "}"
15 [email protected] "}"
16 [email protected] "\n\n" 15 [email protected] "\n\n"
17 [email protected] 16 [email protected]
18 [email protected] 17 [email protected]
@@ -34,30 +33,28 @@ [email protected]
34 [email protected] "true" 33 [email protected] "true"
35 [email protected] " " 34 [email protected] " "
36 [email protected] 35 [email protected]
37 [email protected] 36 [email protected] "{"
38 [email protected] "{" 37 [email protected] "\n "
39 [email protected] "\n " 38 [email protected]
40 [email protected] 39 [email protected] "1"
41 [email protected] "1" 40 [email protected] "\n "
42 [email protected] "\n " 41 [email protected] "}"
43 [email protected] "}"
44 [email protected] " " 42 [email protected] " "
45 [email protected] "else" 43 [email protected] "else"
46 [email protected] " " 44 [email protected] " "
47 [email protected] 45 [email protected]
48 [email protected] 46 [email protected] "{"
49 [email protected] "{" 47 [email protected] "\n "
50 [email protected] "\n " 48 [email protected]
51 [email protected] 49 [email protected]
52 [email protected] 50 [email protected] "2"
53 [email protected] "2" 51 [email protected] " "
54 [email protected] " " 52 [email protected] "+"
55 [email protected] "+" 53 [email protected] " "
56 [email protected] " " 54 [email protected]
57 [email protected] 55 [email protected] "3"
58 [email protected] "3" 56 [email protected] "\n "
59 [email protected] "\n " 57 [email protected] "}"
60 [email protected] "}"
61 [email protected] "\n" 58 [email protected] "\n"
62 [email protected] "}" 59 [email protected] "}"
63 [email protected] "\n\n" 60 [email protected] "\n\n"
@@ -71,10 +68,9 @@ [email protected]
71 [email protected] ")" 68 [email protected] ")"
72 [email protected] " " 69 [email protected] " "
73 [email protected] 70 [email protected]
74 [email protected] 71 [email protected] "{"
75 [email protected] "{" 72 [email protected] "\n"
76 [email protected] "\n" 73 [email protected] "}"
77 [email protected] "}"
78 [email protected] "\n" 74 [email protected] "\n"
79error 17..17: expected BANG 75error 17..17: expected BANG
80error 19..19: expected SEMICOLON 76error 19..19: expected SEMICOLON
diff --git a/crates/ra_syntax/test_data/parser/err/0010_unsafe_lambda_block.rast b/crates/ra_syntax/test_data/parser/err/0010_unsafe_lambda_block.rast
index e10bb8174..06a326d26 100644
--- a/crates/ra_syntax/test_data/parser/err/0010_unsafe_lambda_block.rast
+++ b/crates/ra_syntax/test_data/parser/err/0010_unsafe_lambda_block.rast
@@ -9,37 +9,36 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected] "|"
18 [email protected] "|" 18 [email protected] "|"
19 [email protected] "|" 19 [email protected] " "
20 [email protected] " " 20 [email protected]
21 [email protected] 21 [email protected] "->"
22 [email protected] "->" 22 [email protected] " "
23 [email protected] " " 23 [email protected]
24 [email protected] 24 [email protected] "("
25 [email protected] "(" 25 [email protected] ")"
26 [email protected] ")" 26 [email protected] " "
27 [email protected] " " 27 [email protected]
28 [email protected] 28 [email protected]
29 [email protected] 29 [email protected] "unsafe"
30 [email protected] "unsafe" 30 [email protected] " "
31 [email protected] " " 31 [email protected]
32 [email protected] 32 [email protected] "{"
33 [email protected] "{" 33 [email protected] " "
34 [email protected] " " 34 [email protected]
35 [email protected] 35 [email protected] "("
36 [email protected] "(" 36 [email protected] ")"
37 [email protected] ")" 37 [email protected] " "
38 [email protected] " " 38 [email protected] "}"
39 [email protected] "}" 39 [email protected] ";"
40 [email protected] ";" 40 [email protected] "\n"
41 [email protected] "\n" 41 [email protected] "}"
42 [email protected] "}"
43 [email protected] "\n" 42 [email protected] "\n"
44error 24..24: expected `{` 43error 24..24: expected `{`
45error 24..24: expected SEMICOLON 44error 24..24: expected SEMICOLON
diff --git a/crates/ra_syntax/test_data/parser/err/0014_where_no_bounds.rast b/crates/ra_syntax/test_data/parser/err/0014_where_no_bounds.rast
index 61c361833..9323b7890 100644
--- a/crates/ra_syntax/test_data/parser/err/0014_where_no_bounds.rast
+++ b/crates/ra_syntax/test_data/parser/err/0014_where_no_bounds.rast
@@ -25,8 +25,7 @@ [email protected]
25 [email protected] "T" 25 [email protected] "T"
26 [email protected] " " 26 [email protected] " "
27 [email protected] 27 [email protected]
28 [email protected] 28 [email protected] "{"
29 [email protected] "{" 29 [email protected] "}"
30 [email protected] "}"
31 [email protected] "\n" 30 [email protected] "\n"
32error 19..19: expected colon 31error 19..19: expected colon
diff --git a/crates/ra_syntax/test_data/parser/err/0016_missing_semi.rast b/crates/ra_syntax/test_data/parser/err/0016_missing_semi.rast
index 92bb47316..93434f34f 100644
--- a/crates/ra_syntax/test_data/parser/err/0016_missing_semi.rast
+++ b/crates/ra_syntax/test_data/parser/err/0016_missing_semi.rast
@@ -9,36 +9,35 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected] "foo"
21 [email protected] "foo" 21 [email protected]
22 [email protected] 22 [email protected] "("
23 [email protected] "(" 23 [email protected] "\n "
24 [email protected] "\n " 24 [email protected]
25 [email protected] 25 [email protected] "1"
26 [email protected] "1" 26 [email protected] ","
27 [email protected] "," 27 [email protected] " "
28 [email protected] " " 28 [email protected]
29 [email protected] 29 [email protected] "2"
30 [email protected] "2" 30 [email protected] "\n "
31 [email protected] "\n " 31 [email protected] ")"
32 [email protected] ")" 32 [email protected] "\n "
33 [email protected] "\n " 33 [email protected]
34 [email protected] 34 [email protected]
35 [email protected] 35 [email protected] "return"
36 [email protected] "return" 36 [email protected] " "
37 [email protected] " " 37 [email protected]
38 [email protected] 38 [email protected] "92"
39 [email protected] "92" 39 [email protected] ";"
40 [email protected] ";" 40 [email protected] "\n"
41 [email protected] "\n" 41 [email protected] "}"
42 [email protected] "}"
43 [email protected] "\n" 42 [email protected] "\n"
44error 38..38: expected SEMICOLON 43error 38..38: expected SEMICOLON
diff --git a/crates/ra_syntax/test_data/parser/err/0017_incomplete_binexpr.rast b/crates/ra_syntax/test_data/parser/err/0017_incomplete_binexpr.rast
index 7bc718302..628315c78 100644
--- a/crates/ra_syntax/test_data/parser/err/0017_incomplete_binexpr.rast
+++ b/crates/ra_syntax/test_data/parser/err/0017_incomplete_binexpr.rast
@@ -20,28 +20,27 @@ [email protected]
20 [email protected] ")" 20 [email protected] ")"
21 [email protected] " " 21 [email protected] " "
22 [email protected] 22 [email protected]
23 [email protected] 23 [email protected] "{"
24 [email protected] "{" 24 [email protected] "\n "
25 [email protected] "\n " 25 [email protected]
26 [email protected] 26 [email protected] "let"
27 [email protected] "let" 27 [email protected] " "
28 [email protected] " " 28 [email protected]
29 [email protected] 29 [email protected]
30 [email protected] 30 [email protected] "bar"
31 [email protected] "bar" 31 [email protected] " "
32 [email protected] " " 32 [email protected] "="
33 [email protected] "=" 33 [email protected] " "
34 [email protected] " " 34 [email protected]
35 [email protected] 35 [email protected] "92"
36 [email protected] "92" 36 [email protected] ";"
37 [email protected] ";" 37 [email protected] "\n "
38 [email protected] "\n " 38 [email protected]
39 [email protected] 39 [email protected]
40 [email protected] 40 [email protected] "1"
41 [email protected] "1" 41 [email protected] " "
42 [email protected] " " 42 [email protected] "+"
43 [email protected] "+" 43 [email protected] "\n"
44 [email protected] "\n" 44 [email protected] "}"
45 [email protected] "}"
46 [email protected] "\n" 45 [email protected] "\n"
47error 44..44: expected expression 46error 44..44: expected expression
diff --git a/crates/ra_syntax/test_data/parser/err/0018_incomplete_fn.rast b/crates/ra_syntax/test_data/parser/err/0018_incomplete_fn.rast
index 63194f974..31cc4e551 100644
--- a/crates/ra_syntax/test_data/parser/err/0018_incomplete_fn.rast
+++ b/crates/ra_syntax/test_data/parser/err/0018_incomplete_fn.rast
@@ -33,89 +33,88 @@ [email protected]
33 [email protected] "ScopeId" 33 [email protected] "ScopeId"
34 [email protected] " " 34 [email protected] " "
35 [email protected] 35 [email protected]
36 [email protected] 36 [email protected] "{"
37 [email protected] "{" 37 [email protected] "\n "
38 [email protected] "\n " 38 [email protected]
39 [email protected] 39 [email protected] "let"
40 [email protected] "let" 40 [email protected] " "
41 [email protected] " " 41 [email protected]
42 [email protected] 42 [email protected]
43 [email protected] 43 [email protected] "res"
44 [email protected] "res" 44 [email protected] " "
45 [email protected] " " 45 [email protected] "="
46 [email protected] "=" 46 [email protected] " "
47 [email protected] " " 47 [email protected]
48 [email protected] 48 [email protected]
49 [email protected] 49 [email protected]
50 [email protected] 50 [email protected]
51 [email protected] 51 [email protected]
52 [email protected] 52 [email protected] "self"
53 [email protected] "self" 53 [email protected] "."
54 [email protected] "." 54 [email protected]
55 [email protected] 55 [email protected] "scopes"
56 [email protected] "scopes" 56 [email protected] "."
57 [email protected] "." 57 [email protected]
58 [email protected] 58 [email protected] "len"
59 [email protected] "len" 59 [email protected]
60 [email protected] 60 [email protected] "("
61 [email protected] "(" 61 [email protected] ")"
62 [email protected] ")" 62 [email protected] ";"
63 [email protected] ";" 63 [email protected] "\n "
64 [email protected] "\n " 64 [email protected]
65 [email protected] 65 [email protected]
66 [email protected] 66 [email protected]
67 [email protected] 67 [email protected]
68 [email protected] 68 [email protected]
69 [email protected] 69 [email protected] "self"
70 [email protected] "self" 70 [email protected] "."
71 [email protected] "." 71 [email protected]
72 [email protected] 72 [email protected] "scopes"
73 [email protected] "scopes" 73 [email protected] "."
74 [email protected] "." 74 [email protected]
75 [email protected] 75 [email protected] "push"
76 [email protected] "push" 76 [email protected]
77 [email protected] 77 [email protected] "("
78 [email protected] "(" 78 [email protected]
79 [email protected] 79 [email protected]
80 [email protected] 80 [email protected]
81 [email protected] 81 [email protected]
82 [email protected] 82 [email protected] "ScopeData"
83 [email protected] "ScopeData" 83 [email protected] " "
84 [email protected] " " 84 [email protected]
85 [email protected] 85 [email protected] "{"
86 [email protected] "{" 86 [email protected] " "
87 [email protected] " " 87 [email protected]
88 [email protected] 88 [email protected]
89 [email protected] 89 [email protected] "parent"
90 [email protected] "parent" 90 [email protected] ":"
91 [email protected] ":" 91 [email protected] " "
92 [email protected] " " 92 [email protected]
93 [email protected] 93 [email protected]
94 [email protected] 94 [email protected]
95 [email protected] 95 [email protected]
96 [email protected] 96 [email protected] "None"
97 [email protected] "None" 97 [email protected] ","
98 [email protected] "," 98 [email protected] " "
99 [email protected] " " 99 [email protected]
100 [email protected] 100 [email protected]
101 [email protected] 101 [email protected] "entries"
102 [email protected] "entries" 102 [email protected] ":"
103 [email protected] ":" 103 [email protected] " "
104 [email protected] " " 104 [email protected]
105 [email protected] 105 [email protected]
106 [email protected] 106 [email protected]
107 [email protected] 107 [email protected]
108 [email protected] 108 [email protected] "vec"
109 [email protected] "vec" 109 [email protected] "!"
110 [email protected] "!" 110 [email protected]
111 [email protected] 111 [email protected] "["
112 [email protected] "[" 112 [email protected] "]"
113 [email protected] "]" 113 [email protected] " "
114 [email protected] " " 114 [email protected] "}"
115 [email protected] "}" 115 [email protected] ")"
116 [email protected] ")" 116 [email protected] "\n "
117 [email protected] "\n " 117 [email protected] "}"
118 [email protected] "}"
119 [email protected] "\n\n " 118 [email protected] "\n\n "
120 [email protected] 119 [email protected]
121 [email protected] "fn" 120 [email protected] "fn"
diff --git a/crates/ra_syntax/test_data/parser/err/0019_let_recover.rast b/crates/ra_syntax/test_data/parser/err/0019_let_recover.rast
index d20bb60f1..4ff27f5c8 100644
--- a/crates/ra_syntax/test_data/parser/err/0019_let_recover.rast
+++ b/crates/ra_syntax/test_data/parser/err/0019_let_recover.rast
@@ -9,91 +9,87 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected] "foo"
20 [email protected] "foo" 20 [email protected] " "
21 [email protected] " " 21 [email protected] "="
22 [email protected] "=" 22 [email protected] "\n "
23 [email protected] "\n " 23 [email protected]
24 [email protected] 24 [email protected] "let"
25 [email protected] "let" 25 [email protected] " "
26 [email protected] " " 26 [email protected]
27 [email protected] 27 [email protected]
28 [email protected] 28 [email protected] "bar"
29 [email protected] "bar" 29 [email protected] " "
30 [email protected] " " 30 [email protected] "="
31 [email protected] "=" 31 [email protected] " "
32 [email protected] " " 32 [email protected]
33 [email protected] 33 [email protected] "1"
34 [email protected] "1" 34 [email protected] ";"
35 [email protected] ";" 35 [email protected] "\n "
36 [email protected] "\n " 36 [email protected]
37 [email protected] 37 [email protected] "let"
38 [email protected] "let" 38 [email protected] "\n "
39 [email protected] "\n " 39 [email protected]
40 [email protected] 40 [email protected] "let"
41 [email protected] "let" 41 [email protected] " "
42 [email protected] " " 42 [email protected]
43 [email protected] 43 [email protected]
44 [email protected] 44 [email protected] "baz"
45 [email protected] "baz" 45 [email protected] " "
46 [email protected] " " 46 [email protected] "="
47 [email protected] "=" 47 [email protected] " "
48 [email protected] " " 48 [email protected]
49 [email protected] 49 [email protected] "92"
50 [email protected] "92" 50 [email protected] ";"
51 [email protected] ";" 51 [email protected] "\n "
52 [email protected] "\n " 52 [email protected]
53 [email protected] 53 [email protected] "let"
54 [email protected] "let" 54 [email protected] "\n "
55 [email protected] "\n " 55 [email protected]
56 [email protected] 56 [email protected]
57 [email protected] 57 [email protected] "if"
58 [email protected] "if" 58 [email protected] " "
59 [email protected] " " 59 [email protected]
60 [email protected] 60 [email protected]
61 [email protected] 61 [email protected] "true"
62 [email protected] "true" 62 [email protected] " "
63 [email protected] " " 63 [email protected]
64 [email protected] 64 [email protected] "{"
65 [email protected] 65 [email protected] "}"
66 [email protected] "{" 66 [email protected] "\n "
67 [email protected] "}" 67 [email protected]
68 [email protected] "\n " 68 [email protected] "let"
69 [email protected] 69 [email protected] "\n "
70 [email protected] "let" 70 [email protected]
71 [email protected] "\n " 71 [email protected]
72 [email protected] 72 [email protected] "while"
73 [email protected] 73 [email protected] " "
74 [email protected] "while" 74 [email protected]
75 [email protected] " " 75 [email protected]
76 [email protected] 76 [email protected] "true"
77 [email protected] 77 [email protected] " "
78 [email protected] "true" 78 [email protected]
79 [email protected] " " 79 [email protected] "{"
80 [email protected] 80 [email protected] "}"
81 [email protected] 81 [email protected] "\n "
82 [email protected] "{" 82 [email protected]
83 [email protected] "}" 83 [email protected] "let"
84 [email protected] "\n " 84 [email protected] "\n "
85 [email protected] 85 [email protected]
86 [email protected] "let" 86 [email protected] "loop"
87 [email protected] "\n " 87 [email protected] " "
88 [email protected] 88 [email protected]
89 [email protected] "loop" 89 [email protected] "{"
90 [email protected] " " 90 [email protected] "}"
91 [email protected] 91 [email protected] "\n"
92 [email protected] 92 [email protected] "}"
93 [email protected] "{"
94 [email protected] "}"
95 [email protected] "\n"
96 [email protected] "}"
97 [email protected] "\n" 93 [email protected] "\n"
98error 24..24: expected expression 94error 24..24: expected expression
99error 24..24: expected SEMICOLON 95error 24..24: expected SEMICOLON
diff --git a/crates/ra_syntax/test_data/parser/err/0020_fn_recover.rast b/crates/ra_syntax/test_data/parser/err/0020_fn_recover.rast
index 1185f44f9..5f3a31473 100644
--- a/crates/ra_syntax/test_data/parser/err/0020_fn_recover.rast
+++ b/crates/ra_syntax/test_data/parser/err/0020_fn_recover.rast
@@ -12,9 +12,8 @@ [email protected]
12 [email protected] ")" 12 [email protected] ")"
13 [email protected] " " 13 [email protected] " "
14 [email protected] 14 [email protected]
15 [email protected] 15 [email protected] "{"
16 [email protected] "{" 16 [email protected] "}"
17 [email protected] "}"
18 [email protected] "\n" 17 [email protected] "\n"
19error 2..2: expected a name 18error 2..2: expected a name
20error 2..2: expected function arguments 19error 2..2: expected function arguments
diff --git a/crates/ra_syntax/test_data/parser/err/0021_incomplete_param.rast b/crates/ra_syntax/test_data/parser/err/0021_incomplete_param.rast
index c7bf4caa0..1746bd3c1 100644
--- a/crates/ra_syntax/test_data/parser/err/0021_incomplete_param.rast
+++ b/crates/ra_syntax/test_data/parser/err/0021_incomplete_param.rast
@@ -26,10 +26,9 @@ [email protected]
26 [email protected] ")" 26 [email protected] ")"
27 [email protected] " " 27 [email protected] " "
28 [email protected] 28 [email protected]
29 [email protected] 29 [email protected] "{"
30 [email protected] "{" 30 [email protected] "\n"
31 [email protected] "\n" 31 [email protected] "}"
32 [email protected] "}"
33 [email protected] "\n" 32 [email protected] "\n"
34error 16..16: expected COLON 33error 16..16: expected COLON
35error 16..16: expected type 34error 16..16: expected type
diff --git a/crates/ra_syntax/test_data/parser/err/0022_bad_exprs.rast b/crates/ra_syntax/test_data/parser/err/0022_bad_exprs.rast
index cc0d75cc8..28146f44e 100644
--- a/crates/ra_syntax/test_data/parser/err/0022_bad_exprs.rast
+++ b/crates/ra_syntax/test_data/parser/err/0022_bad_exprs.rast
@@ -9,37 +9,36 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] " "
14 [email protected] " " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "["
17 [email protected] "[" 17 [email protected]
18 [email protected] 18 [email protected] "1"
19 [email protected] "1" 19 [email protected] ","
20 [email protected] "," 20 [email protected] " "
21 [email protected] " " 21 [email protected]
22 [email protected] 22 [email protected] "2"
23 [email protected] "2" 23 [email protected] ","
24 [email protected] "," 24 [email protected] " "
25 [email protected] " " 25 [email protected]
26 [email protected] 26 [email protected] "@"
27 [email protected] "@" 27 [email protected]
28 [email protected] 28 [email protected]
29 [email protected] 29 [email protected] ","
30 [email protected] "," 30 [email protected] " "
31 [email protected] " " 31 [email protected]
32 [email protected] 32 [email protected] "struct"
33 [email protected] "struct" 33 [email protected]
34 [email protected] 34 [email protected] ","
35 [email protected] "," 35 [email protected] " "
36 [email protected] " " 36 [email protected]
37 [email protected] 37 [email protected] "let"
38 [email protected] "let" 38 [email protected]
39 [email protected] 39 [email protected] "]"
40 [email protected] "]" 40 [email protected] " "
41 [email protected] " " 41 [email protected] "}"
42 [email protected] "}"
43 [email protected] "\n" 42 [email protected] "\n"
44 [email protected] 43 [email protected]
45 [email protected] "fn" 44 [email protected] "fn"
@@ -51,44 +50,43 @@ [email protected]
51 [email protected] ")" 50 [email protected] ")"
52 [email protected] " " 51 [email protected] " "
53 [email protected] 52 [email protected]
54 [email protected] 53 [email protected] "{"
55 [email protected] "{" 54 [email protected] " "
56 [email protected] " " 55 [email protected]
57 [email protected] 56 [email protected]
58 [email protected] 57 [email protected]
59 [email protected] 58 [email protected]
60 [email protected] 59 [email protected]
61 [email protected] 60 [email protected]
62 [email protected] 61 [email protected] "foo"
63 [email protected] "foo" 62 [email protected]
64 [email protected] 63 [email protected] "("
65 [email protected] "(" 64 [email protected]
66 [email protected] 65 [email protected] "1"
67 [email protected] "1" 66 [email protected] ","
68 [email protected] "," 67 [email protected] " "
69 [email protected] " " 68 [email protected]
70 [email protected] 69 [email protected] "2"
71 [email protected] "2" 70 [email protected] ","
72 [email protected] "," 71 [email protected] " "
73 [email protected] " " 72 [email protected]
74 [email protected] 73 [email protected] "@"
75 [email protected] "@" 74 [email protected]
76 [email protected] 75 [email protected]
77 [email protected] 76 [email protected] ","
78 [email protected] "," 77 [email protected] " "
79 [email protected] " " 78 [email protected]
80 [email protected] 79 [email protected] "impl"
81 [email protected] "impl" 80 [email protected]
82 [email protected] 81 [email protected]
83 [email protected] 82 [email protected] ","
84 [email protected] "," 83 [email protected] " "
85 [email protected] " " 84 [email protected]
86 [email protected] 85 [email protected] "let"
87 [email protected] "let" 86 [email protected]
88 [email protected] 87 [email protected] ")"
89 [email protected] ")" 88 [email protected] " "
90 [email protected] " " 89 [email protected] "}"
91 [email protected] "}"
92 [email protected] "\n" 90 [email protected] "\n"
93 [email protected] 91 [email protected]
94 [email protected] "fn" 92 [email protected] "fn"
@@ -100,53 +98,52 @@ [email protected]
100 [email protected] ")" 98 [email protected] ")"
101 [email protected] " " 99 [email protected] " "
102 [email protected] 100 [email protected]
103 [email protected] 101 [email protected] "{"
104 [email protected] "{" 102 [email protected] " "
105 [email protected] " " 103 [email protected]
106 [email protected] 104 [email protected]
107 [email protected] 105 [email protected]
108 [email protected] 106 [email protected]
109 [email protected] 107 [email protected]
110 [email protected] 108 [email protected]
111 [email protected] 109 [email protected] "foo"
112 [email protected] "foo" 110 [email protected] "."
113 [email protected] "." 111 [email protected]
114 [email protected] 112 [email protected] "bar"
115 [email protected] "bar" 113 [email protected]
116 [email protected] 114 [email protected] "("
117 [email protected] "(" 115 [email protected]
118 [email protected] 116 [email protected] "1"
119 [email protected] "1" 117 [email protected] ","
120 [email protected] "," 118 [email protected] " "
121 [email protected] " " 119 [email protected]
122 [email protected] 120 [email protected] "2"
123 [email protected] "2" 121 [email protected] ","
124 [email protected] "," 122 [email protected] " "
125 [email protected] " " 123 [email protected]
126 [email protected] 124 [email protected] "@"
127 [email protected] "@" 125 [email protected]
128 [email protected] 126 [email protected]
129 [email protected] 127 [email protected] ","
130 [email protected] "," 128 [email protected] " "
131 [email protected] " " 129 [email protected]
132 [email protected] 130 [email protected]
133 [email protected] 131 [email protected] "]"
134 [email protected] "]" 132 [email protected]
135 [email protected] 133 [email protected]
136 [email protected] 134 [email protected] ","
137 [email protected] "," 135 [email protected] " "
138 [email protected] " " 136 [email protected]
139 [email protected] 137 [email protected] "trait"
140 [email protected] "trait" 138 [email protected]
141 [email protected] 139 [email protected] ","
142 [email protected] "," 140 [email protected] " "
143 [email protected] " " 141 [email protected]
144 [email protected] 142 [email protected] "let"
145 [email protected] "let" 143 [email protected]
146 [email protected] 144 [email protected] ")"
147 [email protected] ")" 145 [email protected] " "
148 [email protected] " " 146 [email protected] "}"
149 [email protected] "}"
150 [email protected] "\n" 147 [email protected] "\n"
151error 16..16: expected expression 148error 16..16: expected expression
152error 17..17: expected R_BRACK 149error 17..17: expected R_BRACK
diff --git a/crates/ra_syntax/test_data/parser/err/0023_mismatched_paren.rast b/crates/ra_syntax/test_data/parser/err/0023_mismatched_paren.rast
index c37594146..9ea9d715e 100644
--- a/crates/ra_syntax/test_data/parser/err/0023_mismatched_paren.rast
+++ b/crates/ra_syntax/test_data/parser/err/0023_mismatched_paren.rast
@@ -9,31 +9,30 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected]
18 [email protected] 18 [email protected] "foo"
19 [email protected] "foo" 19 [email protected] "!"
20 [email protected] "!" 20 [email protected] " "
21 [email protected] " " 21 [email protected]
22 [email protected] 22 [email protected] "("
23 [email protected] "(" 23 [email protected] "\n "
24 [email protected] "\n " 24 [email protected] "bar"
25 [email protected] "bar" 25 [email protected] ","
26 [email protected] "," 26 [email protected] " "
27 [email protected] " " 27 [email protected] "\"baz\""
28 [email protected] "\"baz\"" 28 [email protected] ","
29 [email protected] "," 29 [email protected] " "
30 [email protected] " " 30 [email protected] "1"
31 [email protected] "1" 31 [email protected] ","
32 [email protected] "," 32 [email protected] " "
33 [email protected] " " 33 [email protected] "2.0"
34 [email protected] "2.0" 34 [email protected] "\n "
35 [email protected] "\n " 35 [email protected] "}"
36 [email protected] "}"
37 [email protected] " " 36 [email protected] " "
38 [email protected] "//~ ERROR incorrect c ..." 37 [email protected] "//~ ERROR incorrect c ..."
39 [email protected] "\n" 38 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/err/0024_many_type_parens.rast b/crates/ra_syntax/test_data/parser/err/0024_many_type_parens.rast
index 4296355f2..7c957fdde 100644
--- a/crates/ra_syntax/test_data/parser/err/0024_many_type_parens.rast
+++ b/crates/ra_syntax/test_data/parser/err/0024_many_type_parens.rast
@@ -62,9 +62,8 @@ [email protected]
62 [email protected] ")" 62 [email protected] ")"
63 [email protected] " " 63 [email protected] " "
64 [email protected] 64 [email protected]
65 [email protected] 65 [email protected] "{"
66 [email protected] "{" 66 [email protected] "}"
67 [email protected] "}"
68 [email protected] "\n\n" 67 [email protected] "\n\n"
69 [email protected] 68 [email protected]
70 [email protected] "fn" 69 [email protected] "fn"
@@ -76,219 +75,218 @@ [email protected]
76 [email protected] ")" 75 [email protected] ")"
77 [email protected] " " 76 [email protected] " "
78 [email protected] 77 [email protected]
79 [email protected] 78 [email protected] "{"
80 [email protected] "{" 79 [email protected] "\n "
81 [email protected] "\n " 80 [email protected]
82 [email protected] 81 [email protected] "let"
83 [email protected] "let" 82 [email protected] " "
84 [email protected] " " 83 [email protected]
85 [email protected] 84 [email protected] "_"
86 [email protected] "_" 85 [email protected] ":"
87 [email protected] ":" 86 [email protected] " "
88 [email protected] " " 87 [email protected]
89 [email protected] 88 [email protected]
90 [email protected] 89 [email protected]
91 [email protected] 90 [email protected]
92 [email protected] 91 [email protected]
93 [email protected] 92 [email protected]
94 [email protected] 93 [email protected]
95 [email protected] 94 [email protected] "Box"
96 [email protected] "Box" 95 [email protected]
97 [email protected] 96 [email protected] "<"
98 [email protected] "<" 97 [email protected]
99 [email protected] 98 [email protected]
100 [email protected] 99 [email protected] "("
101 [email protected] "(" 100 [email protected]
102 [email protected] 101 [email protected]
103 [email protected] 102 [email protected]
104 [email protected] 103 [email protected]
105 [email protected] 104 [email protected] "Copy"
106 [email protected] "Copy" 105 [email protected] ")"
107 [email protected] ")" 106 [email protected] " "
108 [email protected] " " 107 [email protected] "+"
109 [email protected] "+" 108 [email protected] " "
110 [email protected] " " 109 [email protected]
111 [email protected] 110 [email protected] "("
112 [email protected] "(" 111 [email protected] "?"
113 [email protected] "?" 112 [email protected]
114 [email protected] 113 [email protected]
115 [email protected] 114 [email protected]
116 [email protected] 115 [email protected]
117 [email protected] 116 [email protected] "Sized"
118 [email protected] "Sized" 117 [email protected] ")"
119 [email protected] ")" 118 [email protected] " "
120 [email protected] " " 119 [email protected] "+"
121 [email protected] "+" 120 [email protected] " "
122 [email protected] " " 121 [email protected]
123 [email protected] 122 [email protected] "("
124 [email protected] "(" 123 [email protected]
125 [email protected] 124 [email protected] "for"
126 [email protected] "for" 125 [email protected]
127 [email protected] 126 [email protected] "<"
128 [email protected] "<" 127 [email protected]
129 [email protected] 128 [email protected] "\'a"
130 [email protected] "\'a" 129 [email protected] ">"
131 [email protected] ">" 130 [email protected] " "
132 [email protected] " " 131 [email protected]
133 [email protected] 132 [email protected]
134 [email protected] 133 [email protected]
135 [email protected] 134 [email protected]
136 [email protected] 135 [email protected] "Trait"
137 [email protected] "Trait" 136 [email protected]
138 [email protected] 137 [email protected] "<"
139 [email protected] "<" 138 [email protected]
140 [email protected] 139 [email protected] "\'a"
141 [email protected] "\'a" 140 [email protected] ">"
142 [email protected] ">" 141 [email protected] ")"
143 [email protected] ")" 142 [email protected]
144 [email protected] 143 [email protected]
145 [email protected] 144 [email protected] ">"
146 [email protected] ">" 145 [email protected] ";"
147 [email protected] ";" 146 [email protected] "\n "
148 [email protected] "\n " 147 [email protected]
149 [email protected] 148 [email protected] "let"
150 [email protected] "let" 149 [email protected] " "
151 [email protected] " " 150 [email protected]
152 [email protected] 151 [email protected] "_"
153 [email protected] "_" 152 [email protected] ":"
154 [email protected] ":" 153 [email protected] " "
155 [email protected] " " 154 [email protected]
156 [email protected] 155 [email protected]
157 [email protected] 156 [email protected]
158 [email protected] 157 [email protected]
159 [email protected] 158 [email protected] "Box"
160 [email protected] "Box" 159 [email protected]
161 [email protected] 160 [email protected] "<"
162 [email protected] "<" 161 [email protected]
163 [email protected] 162 [email protected]
164 [email protected] 163 [email protected] "("
165 [email protected] "(" 164 [email protected]
166 [email protected] 165 [email protected] "?"
167 [email protected] "?" 166 [email protected]
168 [email protected] 167 [email protected]
169 [email protected] 168 [email protected]
170 [email protected] 169 [email protected]
171 [email protected] 170 [email protected]
172 [email protected] 171 [email protected] "Sized"
173 [email protected] "Sized" 172 [email protected]
174 [email protected] 173 [email protected]
175 [email protected] 174 [email protected] ")"
176 [email protected] ")" 175 [email protected] " "
177 [email protected] " " 176 [email protected]
178 [email protected] 177 [email protected]
179 [email protected] 178 [email protected] "+"
180 [email protected] "+" 179 [email protected] " "
181 [email protected] " " 180 [email protected]
182 [email protected] 181 [email protected]
183 [email protected] 182 [email protected] "("
184 [email protected] "(" 183 [email protected]
185 [email protected] 184 [email protected]
186 [email protected] 185 [email protected]
187 [email protected] 186 [email protected]
188 [email protected] 187 [email protected]
189 [email protected] 188 [email protected]
190 [email protected] 189 [email protected] "for"
191 [email protected] "for" 190 [email protected]
192 [email protected] 191 [email protected] "<"
193 [email protected] "<" 192 [email protected]
194 [email protected] 193 [email protected] "\'a"
195 [email protected] "\'a" 194 [email protected] ">"
196 [email protected] ">" 195 [email protected] " "
197 [email protected] " " 196 [email protected]
198 [email protected] 197 [email protected]
199 [email protected] 198 [email protected]
200 [email protected] 199 [email protected]
201 [email protected] 200 [email protected] "Trait"
202 [email protected] "Trait" 201 [email protected] "<"
203 [email protected] "<" 202 [email protected]
204 [email protected] 203 [email protected] "\'a"
205 [email protected] "\'a" 204 [email protected] ">"
206 [email protected] ">" 205 [email protected]
207 [email protected] 206 [email protected] ")"
208 [email protected] ")" 207 [email protected] " "
209 [email protected] " " 208 [email protected] "+"
210 [email protected] "+" 209 [email protected] " "
211 [email protected] " " 210 [email protected]
212 [email protected] 211 [email protected] "("
213 [email protected] "(" 212 [email protected]
214 [email protected] 213 [email protected]
215 [email protected] 214 [email protected]
216 [email protected] 215 [email protected]
217 [email protected] 216 [email protected] "Copy"
218 [email protected] "Copy" 217 [email protected] ")"
219 [email protected] ")" 218 [email protected] ">"
220 [email protected] ">" 219 [email protected]
221 [email protected] 220 [email protected] ";"
222 [email protected] ";" 221 [email protected] "\n "
223 [email protected] "\n " 222 [email protected]
224 [email protected] 223 [email protected] "let"
225 [email protected] "let" 224 [email protected] " "
226 [email protected] " " 225 [email protected]
227 [email protected] 226 [email protected] "_"
228 [email protected] "_" 227 [email protected] ":"
229 [email protected] ":" 228 [email protected] " "
230 [email protected] " " 229 [email protected]
231 [email protected] 230 [email protected]
232 [email protected] 231 [email protected]
233 [email protected] 232 [email protected]
234 [email protected] 233 [email protected]
235 [email protected] 234 [email protected]
236 [email protected] 235 [email protected]
237 [email protected] 236 [email protected] "Box"
238 [email protected] "Box" 237 [email protected]
239 [email protected] 238 [email protected] "<"
240 [email protected] "<" 239 [email protected]
241 [email protected] 240 [email protected]
242 [email protected] 241 [email protected] "("
243 [email protected] "(" 242 [email protected]
244 [email protected] 243 [email protected] "for"
245 [email protected] "for" 244 [email protected]
246 [email protected] 245 [email protected] "<"
247 [email protected] "<" 246 [email protected]
248 [email protected] 247 [email protected] "\'a"
249 [email protected] "\'a" 248 [email protected] ">"
250 [email protected] ">" 249 [email protected] " "
251 [email protected] " " 250 [email protected]
252 [email protected] 251 [email protected]
253 [email protected] 252 [email protected]
254 [email protected] 253 [email protected]
255 [email protected] 254 [email protected] "Trait"
256 [email protected] "Trait" 255 [email protected]
257 [email protected] 256 [email protected] "<"
258 [email protected] "<" 257 [email protected]
259 [email protected] 258 [email protected] "\'a"
260 [email protected] "\'a" 259 [email protected] ">"
261 [email protected] ">" 260 [email protected] ")"
262 [email protected] ")" 261 [email protected] " "
263 [email protected] " " 262 [email protected] "+"
264 [email protected] "+" 263 [email protected] " "
265 [email protected] " " 264 [email protected]
266 [email protected] 265 [email protected] "("
267 [email protected] "(" 266 [email protected]
268 [email protected] 267 [email protected]
269 [email protected] 268 [email protected]
270 [email protected] 269 [email protected]
271 [email protected] 270 [email protected] "Copy"
272 [email protected] "Copy" 271 [email protected] ")"
273 [email protected] ")" 272 [email protected] " "
274 [email protected] " " 273 [email protected] "+"
275 [email protected] "+" 274 [email protected] " "
276 [email protected] " " 275 [email protected]
277 [email protected] 276 [email protected] "("
278 [email protected] "(" 277 [email protected] "?"
279 [email protected] "?" 278 [email protected]
280 [email protected] 279 [email protected]
281 [email protected] 280 [email protected]
282 [email protected] 281 [email protected]
283 [email protected] 282 [email protected] "Sized"
284 [email protected] "Sized" 283 [email protected] ")"
285 [email protected] ")" 284 [email protected]
286 [email protected] 285 [email protected]
287 [email protected] 286 [email protected] ">"
288 [email protected] ">" 287 [email protected] ";"
289 [email protected] ";" 288 [email protected] "\n"
290 [email protected] "\n" 289 [email protected] "}"
291 [email protected] "}"
292 [email protected] "\n" 290 [email protected] "\n"
293error 88..88: expected COMMA 291error 88..88: expected COMMA
294error 88..88: expected R_ANGLE 292error 88..88: expected R_ANGLE
diff --git a/crates/ra_syntax/test_data/parser/err/0025_nope.rast b/crates/ra_syntax/test_data/parser/err/0025_nope.rast
index 195c08bd9..88b086daf 100644
--- a/crates/ra_syntax/test_data/parser/err/0025_nope.rast
+++ b/crates/ra_syntax/test_data/parser/err/0025_nope.rast
@@ -9,187 +9,185 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "enum"
16 [email protected] "enum" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "Test"
19 [email protected] "Test" 19 [email protected] " "
20 [email protected] " " 20 [email protected]
21 [email protected] 21 [email protected] "{"
22 [email protected] "{" 22 [email protected] "\n "
23 [email protected] "\n " 23 [email protected]
24 [email protected] 24 [email protected]
25 [email protected] 25 [email protected] "Var1"
26 [email protected] "Var1" 26 [email protected] ","
27 [email protected] "," 27 [email protected] "\n "
28 [email protected] "\n " 28 [email protected]
29 [email protected] 29 [email protected]
30 [email protected] 30 [email protected] "Var2"
31 [email protected] "Var2" 31 [email protected]
32 [email protected] 32 [email protected] "("
33 [email protected] "(" 33 [email protected]
34 [email protected] 34 [email protected]
35 [email protected] 35 [email protected]
36 [email protected] 36 [email protected]
37 [email protected] 37 [email protected]
38 [email protected] 38 [email protected] "String"
39 [email protected] "String" 39 [email protected] ")"
40 [email protected] ")" 40 [email protected] ","
41 [email protected] "," 41 [email protected] "\n "
42 [email protected] "\n " 42 [email protected]
43 [email protected] 43 [email protected]
44 [email protected] 44 [email protected] "Var3"
45 [email protected] "Var3" 45 [email protected] " "
46 [email protected] " " 46 [email protected]
47 [email protected] 47 [email protected] "{"
48 [email protected] "{" 48 [email protected] "\n "
49 [email protected] "\n " 49 [email protected]
50 [email protected] 50 [email protected]
51 [email protected] 51 [email protected] "abc"
52 [email protected] "abc" 52 [email protected] ":"
53 [email protected] ":" 53 [email protected] " "
54 [email protected] " " 54 [email protected]
55 [email protected] 55 [email protected] "{"
56 [email protected] "{" 56 [email protected] "}"
57 [email protected] "}" 57 [email protected]
58 [email protected] 58 [email protected] ","
59 [email protected] "," 59 [email protected] " "
60 [email protected] " " 60 [email protected] "//~ ERROR: expected t ..."
61 [email protected] "//~ ERROR: expected t ..." 61 [email protected] "\n "
62 [email protected] "\n " 62 [email protected] "}"
63 [email protected] "}" 63 [email protected] ","
64 [email protected] "," 64 [email protected] "\n "
65 [email protected] "\n " 65 [email protected] "}"
66 [email protected] "}" 66 [email protected] "\n\n "
67 [email protected] "\n\n " 67 [email protected] "// recover..."
68 [email protected] "// recover..." 68 [email protected] "\n "
69 [email protected] "\n " 69 [email protected]
70 [email protected] 70 [email protected] "let"
71 [email protected] "let" 71 [email protected] " "
72 [email protected] " " 72 [email protected]
73 [email protected] 73 [email protected]
74 [email protected] 74 [email protected] "a"
75 [email protected] "a" 75 [email protected] " "
76 [email protected] " " 76 [email protected] "="
77 [email protected] "=" 77 [email protected] " "
78 [email protected] " " 78 [email protected]
79 [email protected] 79 [email protected] "1"
80 [email protected] "1" 80 [email protected] ";"
81 [email protected] ";" 81 [email protected] "\n "
82 [email protected] "\n " 82 [email protected]
83 [email protected] 83 [email protected] "enum"
84 [email protected] "enum" 84 [email protected] " "
85 [email protected] " " 85 [email protected]
86 [email protected] 86 [email protected] "Test2"
87 [email protected] "Test2" 87 [email protected] " "
88 [email protected] " " 88 [email protected]
89 [email protected] 89 [email protected] "{"
90 [email protected] "{" 90 [email protected] "\n "
91 [email protected] "\n " 91 [email protected]
92 [email protected] 92 [email protected]
93 [email protected] 93 [email protected] "Fine"
94 [email protected] "Fine" 94 [email protected] ","
95 [email protected] "," 95 [email protected] "\n "
96 [email protected] "\n " 96 [email protected] "}"
97 [email protected] "}" 97 [email protected] "\n\n "
98 [email protected] "\n\n " 98 [email protected]
99 [email protected] 99 [email protected] "enum"
100 [email protected] "enum" 100 [email protected] " "
101 [email protected] " " 101 [email protected]
102 [email protected] 102 [email protected] "Test3"
103 [email protected] "Test3" 103 [email protected] " "
104 [email protected] " " 104 [email protected]
105 [email protected] 105 [email protected] "{"
106 [email protected] "{" 106 [email protected] "\n "
107 [email protected] "\n " 107 [email protected]
108 [email protected] 108 [email protected]
109 [email protected] 109 [email protected] "StillFine"
110 [email protected] "StillFine" 110 [email protected] " "
111 [email protected] " " 111 [email protected]
112 [email protected] 112 [email protected] "{"
113 [email protected] "{" 113 [email protected] "\n "
114 [email protected] "\n " 114 [email protected]
115 [email protected] 115 [email protected]
116 [email protected] 116 [email protected] "def"
117 [email protected] "def" 117 [email protected] ":"
118 [email protected] ":" 118 [email protected] " "
119 [email protected] " " 119 [email protected]
120 [email protected] 120 [email protected]
121 [email protected] 121 [email protected]
122 [email protected] 122 [email protected]
123 [email protected] 123 [email protected] "i32"
124 [email protected] "i32" 124 [email protected] ","
125 [email protected] "," 125 [email protected] "\n "
126 [email protected] "\n " 126 [email protected] "}"
127 [email protected] "}" 127 [email protected] ","
128 [email protected] "," 128 [email protected] "\n "
129 [email protected] "\n " 129 [email protected] "}"
130 [email protected] "}" 130 [email protected] "\n\n "
131 [email protected] "\n\n " 131 [email protected]
132 [email protected] 132 [email protected]
133 [email protected] 133 [email protected] "{"
134 [email protected] 134 [email protected] "\n "
135 [email protected] "{" 135 [email protected]
136 [email protected] "\n " 136 [email protected] "// fail again"
137 [email protected] 137 [email protected] "\n "
138 [email protected] "// fail again" 138 [email protected] "enum"
139 [email protected] "\n " 139 [email protected] " "
140 [email protected] "enum" 140 [email protected]
141 [email protected] " " 141 [email protected] "Test4"
142 [email protected] 142 [email protected] " "
143 [email protected] "Test4" 143 [email protected]
144 [email protected] " " 144 [email protected] "{"
145 [email protected] 145 [email protected] "\n "
146 [email protected] "{" 146 [email protected]
147 [email protected] "\n " 147 [email protected]
148 [email protected] 148 [email protected] "Nope"
149 [email protected] 149 [email protected]
150 [email protected] "Nope" 150 [email protected] "("
151 [email protected] 151 [email protected]
152 [email protected] "(" 152 [email protected]
153 [email protected] 153 [email protected]
154 [email protected] 154 [email protected]
155 [email protected] 155 [email protected]
156 [email protected] 156 [email protected] "i32"
157 [email protected] 157 [email protected] " "
158 [email protected] "i32" 158 [email protected]
159 [email protected] " " 159 [email protected]
160 [email protected] 160 [email protected] "{"
161 [email protected] 161 [email protected] "}"
162 [email protected] "{" 162 [email protected]
163 [email protected] "}" 163 [email protected] ")"
164 [email protected] 164 [email protected] " "
165 [email protected] ")" 165 [email protected] "//~ ERROR: found `{`"
166 [email protected] " " 166 [email protected] "\n ..."
167 [email protected] "//~ ERROR: found `{`" 167 [email protected] "//~^ ERROR: found `{`"
168 [email protected] "\n ..." 168 [email protected] "\n "
169 [email protected] "//~^ ERROR: found `{`" 169 [email protected] "}"
170 [email protected] "\n " 170 [email protected] "\n "
171 [email protected] "}" 171 [email protected] "}"
172 [email protected] "\n " 172 [email protected] "\n "
173 [email protected] "}" 173 [email protected] "// still recover later"
174 [email protected] "\n " 174 [email protected] "\n "
175 [email protected] "// still recover later" 175 [email protected]
176 [email protected] "\n " 176 [email protected] "let"
177 [email protected] 177 [email protected] " "
178 [email protected] "let" 178 [email protected]
179 [email protected] " " 179 [email protected]
180 [email protected] 180 [email protected] "bad_syntax"
181 [email protected] 181 [email protected] " "
182 [email protected] "bad_syntax" 182 [email protected] "="
183 [email protected] " " 183 [email protected] " "
184 [email protected] "=" 184 [email protected]
185 [email protected] " " 185 [email protected] "_"
186 [email protected] 186 [email protected] ";"
187 [email protected] "_" 187 [email protected] " "
188 [email protected] ";" 188 [email protected] "//~ ERROR: expected e ..."
189 [email protected] " " 189 [email protected] "\n"
190 [email protected] "//~ ERROR: expected e ..." 190 [email protected] "}"
191 [email protected] "\n"
192 [email protected] "}"
193 [email protected] "\n" 191 [email protected] "\n"
194error 95..95: expected type 192error 95..95: expected type
195error 95..95: expected COMMA 193error 95..95: expected COMMA
diff --git a/crates/ra_syntax/test_data/parser/err/0027_incomplere_where_for.rast b/crates/ra_syntax/test_data/parser/err/0027_incomplere_where_for.rast
index f2fada510..568a4cc02 100644
--- a/crates/ra_syntax/test_data/parser/err/0027_incomplere_where_for.rast
+++ b/crates/ra_syntax/test_data/parser/err/0027_incomplere_where_for.rast
@@ -21,9 +21,8 @@ [email protected]
21 [email protected] ">" 21 [email protected] ">"
22 [email protected] "\n" 22 [email protected] "\n"
23 [email protected] 23 [email protected]
24 [email protected] 24 [email protected] "{"
25 [email protected] "{" 25 [email protected] "}"
26 [email protected] "}"
27 [email protected] "\n" 26 [email protected] "\n"
28error 26..26: expected a path 27error 26..26: expected a path
29error 26..26: expected colon 28error 26..26: expected colon
diff --git a/crates/ra_syntax/test_data/parser/err/0029_field_completion.rast b/crates/ra_syntax/test_data/parser/err/0029_field_completion.rast
index 56682f966..0da8f59f0 100644
--- a/crates/ra_syntax/test_data/parser/err/0029_field_completion.rast
+++ b/crates/ra_syntax/test_data/parser/err/0029_field_completion.rast
@@ -20,17 +20,16 @@ [email protected]
20 [email protected] ")" 20 [email protected] ")"
21 [email protected] " " 21 [email protected] " "
22 [email protected] 22 [email protected]
23 [email protected] 23 [email protected] "{"
24 [email protected] "{" 24 [email protected] "\n "
25 [email protected] "\n " 25 [email protected]
26 [email protected] 26 [email protected]
27 [email protected] 27 [email protected]
28 [email protected] 28 [email protected]
29 [email protected] 29 [email protected]
30 [email protected] 30 [email protected] "a"
31 [email protected] "a" 31 [email protected] "."
32 [email protected] "." 32 [email protected] "\n"
33 [email protected] "\n" 33 [email protected] "}"
34 [email protected] "}"
35 [email protected] "\n" 34 [email protected] "\n"
36error 21..21: expected field name or number 35error 21..21: expected field name or number
diff --git a/crates/ra_syntax/test_data/parser/err/0031_block_inner_attrs.rast b/crates/ra_syntax/test_data/parser/err/0031_block_inner_attrs.rast
index aac476430..515819e42 100644
--- a/crates/ra_syntax/test_data/parser/err/0031_block_inner_attrs.rast
+++ b/crates/ra_syntax/test_data/parser/err/0031_block_inner_attrs.rast
@@ -9,115 +9,111 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected] "inner"
20 [email protected] "inner" 20 [email protected] " "
21 [email protected] " " 21 [email protected] "="
22 [email protected] "=" 22 [email protected] " "
23 [email protected] " " 23 [email protected]
24 [email protected] 24 [email protected] "{"
25 [email protected] 25 [email protected] "\n "
26 [email protected] "{" 26 [email protected]
27 [email protected] "\n " 27 [email protected] "#"
28 [email protected] 28 [email protected] "!"
29 [email protected] "#" 29 [email protected] "["
30 [email protected] "!" 30 [email protected]
31 [email protected] "[" 31 [email protected]
32 [email protected] 32 [email protected]
33 [email protected] 33 [email protected] "doc"
34 [email protected] 34 [email protected]
35 [email protected] "doc" 35 [email protected] "("
36 [email protected] 36 [email protected] "\"Inner attributes not ..."
37 [email protected] "(" 37 [email protected] ")"
38 [email protected] "\"Inner attributes not ..." 38 [email protected] "]"
39 [email protected] ")" 39 [email protected] "\n "
40 [email protected] "]" 40 [email protected] "//! Nor are ModuleDoc ..."
41 [email protected] "\n " 41 [email protected] "\n "
42 [email protected] "//! Nor are ModuleDoc ..." 42 [email protected] "}"
43 [email protected] "\n " 43 [email protected] ";"
44 [email protected] "}" 44 [email protected] "\n "
45 [email protected] ";" 45 [email protected]
46 [email protected] "\n " 46 [email protected]
47 [email protected] 47 [email protected] "if"
48 [email protected] 48 [email protected] " "
49 [email protected] "if" 49 [email protected]
50 [email protected] " " 50 [email protected]
51 [email protected] 51 [email protected] "true"
52 [email protected] 52 [email protected] " "
53 [email protected] "true" 53 [email protected]
54 [email protected] " " 54 [email protected] "{"
55 [email protected] 55 [email protected] "\n "
56 [email protected] 56 [email protected]
57 [email protected] "{" 57 [email protected] "#"
58 [email protected] "\n " 58 [email protected] "!"
59 [email protected] 59 [email protected] "["
60 [email protected] "#" 60 [email protected]
61 [email protected] "!" 61 [email protected]
62 [email protected] "[" 62 [email protected]
63 [email protected] 63 [email protected] "doc"
64 [email protected] 64 [email protected]
65 [email protected] 65 [email protected] "("
66 [email protected] "doc" 66 [email protected] "\"Nor here\""
67 [email protected] 67 [email protected] ")"
68 [email protected] "(" 68 [email protected] "]"
69 [email protected] "\"Nor here\"" 69 [email protected] "\n "
70 [email protected] ")" 70 [email protected]
71 [email protected] "]" 71 [email protected] "#"
72 [email protected] "\n " 72 [email protected] "!"
73 [email protected] 73 [email protected] "["
74 [email protected] "#" 74 [email protected]
75 [email protected] "!" 75 [email protected]
76 [email protected] "[" 76 [email protected]
77 [email protected] 77 [email protected] "doc"
78 [email protected] 78 [email protected]
79 [email protected] 79 [email protected] "("
80 [email protected] "doc" 80 [email protected] "\"We error on each attr\""
81 [email protected] 81 [email protected] ")"
82 [email protected] "(" 82 [email protected] "]"
83 [email protected] "\"We error on each attr\"" 83 [email protected] "\n "
84 [email protected] ")" 84 [email protected] "//! Nor are ModuleDoc ..."
85 [email protected] "]" 85 [email protected] "\n "
86 [email protected] "\n " 86 [email protected] "}"
87 [email protected] "//! Nor are ModuleDoc ..." 87 [email protected] "\n "
88 [email protected] "\n " 88 [email protected]
89 [email protected] "}" 89 [email protected] "while"
90 [email protected] "\n " 90 [email protected] " "
91 [email protected] 91 [email protected]
92 [email protected] "while" 92 [email protected]
93 [email protected] " " 93 [email protected] "true"
94 [email protected] 94 [email protected] " "
95 [email protected] 95 [email protected]
96 [email protected] "true" 96 [email protected] "{"
97 [email protected] " " 97 [email protected] "\n "
98 [email protected] 98 [email protected]
99 [email protected] 99 [email protected] "#"
100 [email protected] "{" 100 [email protected] "!"
101 [email protected] "\n " 101 [email protected] "["
102 [email protected] 102 [email protected]
103 [email protected] "#" 103 [email protected]
104 [email protected] "!" 104 [email protected]
105 [email protected] "[" 105 [email protected] "doc"
106 [email protected] 106 [email protected]
107 [email protected] 107 [email protected] "("
108 [email protected] 108 [email protected] "\"Nor here\""
109 [email protected] "doc" 109 [email protected] ")"
110 [email protected] 110 [email protected] "]"
111 [email protected] "(" 111 [email protected] "\n "
112 [email protected] "\"Nor here\"" 112 [email protected] "//! Nor are ModuleDoc ..."
113 [email protected] ")" 113 [email protected] "\n "
114 [email protected] "]" 114 [email protected] "}"
115 [email protected] "\n " 115 [email protected] "\n"
116 [email protected] "//! Nor are ModuleDoc ..." 116 [email protected] "}"
117 [email protected] "\n "
118 [email protected] "}"
119 [email protected] "\n"
120 [email protected] "}"
121 [email protected] "\n" 117 [email protected] "\n"
122error 39..83: A block in this position cannot accept inner attributes 118error 39..83: A block in this position cannot accept inner attributes
123error 152..171: A block in this position cannot accept inner attributes 119error 152..171: A block in this position cannot accept inner attributes
diff --git a/crates/ra_syntax/test_data/parser/err/0032_match_arms_inner_attrs.rast b/crates/ra_syntax/test_data/parser/err/0032_match_arms_inner_attrs.rast
index f98de7f15..c6859eca8 100644
--- a/crates/ra_syntax/test_data/parser/err/0032_match_arms_inner_attrs.rast
+++ b/crates/ra_syntax/test_data/parser/err/0032_match_arms_inner_attrs.rast
@@ -9,187 +9,186 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "match"
17 [email protected] "match" 17 [email protected] " "
18 [email protected] " " 18 [email protected]
19 [email protected] 19 [email protected] "("
20 [email protected] "(" 20 [email protected] ")"
21 [email protected] ")" 21 [email protected] " "
22 [email protected] " " 22 [email protected]
23 [email protected] 23 [email protected] "{"
24 [email protected] "{" 24 [email protected] "\n "
25 [email protected] "\n " 25 [email protected]
26 [email protected] 26 [email protected]
27 [email protected] 27 [email protected] "_"
28 [email protected] "_" 28 [email protected] " "
29 [email protected] " " 29 [email protected] "=>"
30 [email protected] "=>" 30 [email protected] " "
31 [email protected] " " 31 [email protected]
32 [email protected] 32 [email protected] "("
33 [email protected] "(" 33 [email protected] ")"
34 [email protected] ")" 34 [email protected] ","
35 [email protected] "," 35 [email protected] "\n "
36 [email protected] "\n " 36 [email protected]
37 [email protected] 37 [email protected]
38 [email protected] 38 [email protected] "#"
39 [email protected] "#" 39 [email protected]
40 [email protected] 40 [email protected] "!"
41 [email protected] "!" 41 [email protected]
42 [email protected] 42 [email protected] "["
43 [email protected] "[" 43 [email protected]
44 [email protected] 44 [email protected]
45 [email protected] 45 [email protected]
46 [email protected] 46 [email protected]
47 [email protected] 47 [email protected]
48 [email protected] 48 [email protected] "doc"
49 [email protected] "doc" 49 [email protected]
50 [email protected] 50 [email protected] "("
51 [email protected] "(" 51 [email protected]
52 [email protected] 52 [email protected] "\"Not allowed here\""
53 [email protected] "\"Not allowed here\"" 53 [email protected] ")"
54 [email protected] ")" 54 [email protected] "]"
55 [email protected] "]" 55 [email protected] "\n "
56 [email protected] "\n " 56 [email protected]
57 [email protected] 57 [email protected]
58 [email protected] 58 [email protected] "_"
59 [email protected] "_" 59 [email protected] " "
60 [email protected] " " 60 [email protected] "=>"
61 [email protected] "=>" 61 [email protected] " "
62 [email protected] " " 62 [email protected]
63 [email protected] 63 [email protected] "("
64 [email protected] "(" 64 [email protected] ")"
65 [email protected] ")" 65 [email protected] ","
66 [email protected] "," 66 [email protected] "\n "
67 [email protected] "\n " 67 [email protected] "}"
68 [email protected] "}" 68 [email protected] "\n\n "
69 [email protected] "\n\n " 69 [email protected]
70 [email protected] 70 [email protected]
71 [email protected] 71 [email protected] "match"
72 [email protected] "match" 72 [email protected] " "
73 [email protected] " " 73 [email protected]
74 [email protected] 74 [email protected] "("
75 [email protected] "(" 75 [email protected] ")"
76 [email protected] ")" 76 [email protected] " "
77 [email protected] " " 77 [email protected]
78 [email protected] 78 [email protected] "{"
79 [email protected] "{" 79 [email protected] "\n "
80 [email protected] "\n " 80 [email protected]
81 [email protected] 81 [email protected]
82 [email protected] 82 [email protected] "_"
83 [email protected] "_" 83 [email protected] " "
84 [email protected] " " 84 [email protected] "=>"
85 [email protected] "=>" 85 [email protected] " "
86 [email protected] " " 86 [email protected]
87 [email protected] 87 [email protected] "("
88 [email protected] "(" 88 [email protected] ")"
89 [email protected] ")" 89 [email protected] ","
90 [email protected] "," 90 [email protected] "\n "
91 [email protected] "\n " 91 [email protected]
92 [email protected] 92 [email protected]
93 [email protected] 93 [email protected] "_"
94 [email protected] "_" 94 [email protected] " "
95 [email protected] " " 95 [email protected] "=>"
96 [email protected] "=>" 96 [email protected] " "
97 [email protected] " " 97 [email protected]
98 [email protected] 98 [email protected] "("
99 [email protected] "(" 99 [email protected] ")"
100 [email protected] ")" 100 [email protected] ","
101 [email protected] "," 101 [email protected] "\n "
102 [email protected] "\n " 102 [email protected]
103 [email protected] 103 [email protected]
104 [email protected] 104 [email protected] "#"
105 [email protected] "#" 105 [email protected]
106 [email protected] 106 [email protected] "!"
107 [email protected] "!" 107 [email protected]
108 [email protected] 108 [email protected] "["
109 [email protected] "[" 109 [email protected]
110 [email protected] 110 [email protected]
111 [email protected] 111 [email protected]
112 [email protected] 112 [email protected]
113 [email protected] 113 [email protected]
114 [email protected] 114 [email protected] "doc"
115 [email protected] "doc" 115 [email protected]
116 [email protected] 116 [email protected] "("
117 [email protected] "(" 117 [email protected]
118 [email protected] 118 [email protected] "\"Nor here\""
119 [email protected] "\"Nor here\"" 119 [email protected] ")"
120 [email protected] ")" 120 [email protected] "]"
121 [email protected] "]" 121 [email protected] "\n "
122 [email protected] "\n " 122 [email protected] "}"
123 [email protected] "}" 123 [email protected] "\n\n "
124 [email protected] "\n\n " 124 [email protected]
125 [email protected] 125 [email protected] "match"
126 [email protected] "match" 126 [email protected] " "
127 [email protected] " " 127 [email protected]
128 [email protected] 128 [email protected] "("
129 [email protected] "(" 129 [email protected] ")"
130 [email protected] ")" 130 [email protected] " "
131 [email protected] " " 131 [email protected]
132 [email protected] 132 [email protected] "{"
133 [email protected] "{" 133 [email protected] "\n "
134 [email protected] "\n " 134 [email protected]
135 [email protected] 135 [email protected]
136 [email protected] 136 [email protected] "#"
137 [email protected] "#" 137 [email protected] "["
138 [email protected] "[" 138 [email protected]
139 [email protected] 139 [email protected]
140 [email protected] 140 [email protected]
141 [email protected] 141 [email protected] "cfg"
142 [email protected] "cfg" 142 [email protected]
143 [email protected] 143 [email protected] "("
144 [email protected] "(" 144 [email protected] "test"
145 [email protected] "test" 145 [email protected] ")"
146 [email protected] ")" 146 [email protected] "]"
147 [email protected] "]" 147 [email protected] "\n "
148 [email protected] "\n " 148 [email protected]
149 [email protected] 149 [email protected] "#"
150 [email protected] "#" 150 [email protected]
151 [email protected] 151 [email protected] "!"
152 [email protected] "!" 152 [email protected]
153 [email protected] 153 [email protected] "["
154 [email protected] "[" 154 [email protected]
155 [email protected] 155 [email protected]
156 [email protected] 156 [email protected]
157 [email protected] 157 [email protected]
158 [email protected] 158 [email protected]
159 [email protected] 159 [email protected] "doc"
160 [email protected] "doc" 160 [email protected]
161 [email protected] 161 [email protected] "("
162 [email protected] "(" 162 [email protected]
163 [email protected] 163 [email protected] "\"Nor here\""
164 [email protected] "\"Nor here\"" 164 [email protected] ")"
165 [email protected] ")" 165 [email protected] "]"
166 [email protected] "]" 166 [email protected] "\n "
167 [email protected] "\n " 167 [email protected]
168 [email protected] 168 [email protected]
169 [email protected] 169 [email protected] "_"
170 [email protected] "_" 170 [email protected] " "
171 [email protected] " " 171 [email protected] "=>"
172 [email protected] "=>" 172 [email protected] " "
173 [email protected] " " 173 [email protected]
174 [email protected] 174 [email protected] "("
175 [email protected] "(" 175 [email protected] ")"
176 [email protected] ")" 176 [email protected] ","
177 [email protected] "," 177 [email protected] "\n "
178 [email protected] "\n " 178 [email protected]
179 [email protected] 179 [email protected]
180 [email protected] 180 [email protected] "_"
181 [email protected] "_" 181 [email protected] " "
182 [email protected] " " 182 [email protected] "=>"
183 [email protected] "=>" 183 [email protected] " "
184 [email protected] " " 184 [email protected]
185 [email protected] 185 [email protected] "("
186 [email protected] "(" 186 [email protected] ")"
187 [email protected] ")" 187 [email protected] ","
188 [email protected] "," 188 [email protected] "\n "
189 [email protected] "\n " 189 [email protected] "}"
190 [email protected] "}" 190 [email protected] "\n"
191 [email protected] "\n" 191 [email protected] "}"
192 [email protected] "}"
193 [email protected] "\n" 192 [email protected] "\n"
194error 52..52: expected `[` 193error 52..52: expected `[`
195error 52..52: expected pattern 194error 52..52: expected pattern
diff --git a/crates/ra_syntax/test_data/parser/err/0033_match_arms_outer_attrs.rast b/crates/ra_syntax/test_data/parser/err/0033_match_arms_outer_attrs.rast
index d0017c883..53e445459 100644
--- a/crates/ra_syntax/test_data/parser/err/0033_match_arms_outer_attrs.rast
+++ b/crates/ra_syntax/test_data/parser/err/0033_match_arms_outer_attrs.rast
@@ -9,58 +9,57 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "match"
16 [email protected] "match" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "("
19 [email protected] "(" 19 [email protected] ")"
20 [email protected] ")" 20 [email protected] " "
21 [email protected] " " 21 [email protected]
22 [email protected] 22 [email protected] "{"
23 [email protected] "{" 23 [email protected] "\n "
24 [email protected] "\n " 24 [email protected]
25 [email protected] 25 [email protected]
26 [email protected] 26 [email protected] "_"
27 [email protected] "_" 27 [email protected] " "
28 [email protected] " " 28 [email protected] "=>"
29 [email protected] "=>" 29 [email protected] " "
30 [email protected] " " 30 [email protected]
31 [email protected] 31 [email protected] "("
32 [email protected] "(" 32 [email protected] ")"
33 [email protected] ")" 33 [email protected] ","
34 [email protected] "," 34 [email protected] "\n "
35 [email protected] "\n " 35 [email protected]
36 [email protected] 36 [email protected]
37 [email protected] 37 [email protected] "_"
38 [email protected] "_" 38 [email protected] " "
39 [email protected] " " 39 [email protected] "=>"
40 [email protected] "=>" 40 [email protected] " "
41 [email protected] " " 41 [email protected]
42 [email protected] 42 [email protected] "("
43 [email protected] "(" 43 [email protected] ")"
44 [email protected] ")" 44 [email protected] ","
45 [email protected] "," 45 [email protected] "\n "
46 [email protected] "\n " 46 [email protected]
47 [email protected] 47 [email protected]
48 [email protected] 48 [email protected] "#"
49 [email protected] "#" 49 [email protected] "["
50 [email protected] "[" 50 [email protected]
51 [email protected] 51 [email protected]
52 [email protected] 52 [email protected]
53 [email protected] 53 [email protected] "cfg"
54 [email protected] "cfg" 54 [email protected]
55 [email protected] 55 [email protected] "("
56 [email protected] "(" 56 [email protected] "test"
57 [email protected] "test" 57 [email protected] ")"
58 [email protected] ")" 58 [email protected] "]"
59 [email protected] "]" 59 [email protected] "\n "
60 [email protected] "\n " 60 [email protected] "}"
61 [email protected] "}" 61 [email protected] "\n"
62 [email protected] "\n" 62 [email protected] "}"
63 [email protected] "}"
64 [email protected] "\n" 63 [email protected] "\n"
65error 80..80: expected pattern 64error 80..80: expected pattern
66error 80..80: expected FAT_ARROW 65error 80..80: expected FAT_ARROW
diff --git a/crates/ra_syntax/test_data/parser/err/0034_bad_box_pattern.rast b/crates/ra_syntax/test_data/parser/err/0034_bad_box_pattern.rast
index 2c0bddec8..1b2ac5011 100644
--- a/crates/ra_syntax/test_data/parser/err/0034_bad_box_pattern.rast
+++ b/crates/ra_syntax/test_data/parser/err/0034_bad_box_pattern.rast
@@ -9,84 +9,83 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "ref"
19 [email protected] "ref" 19 [email protected] " "
20 [email protected] " " 20 [email protected]
21 [email protected] 21 [email protected] "box"
22 [email protected] "box" 22 [email protected] " "
23 [email protected] " " 23 [email protected]
24 [email protected] 24 [email protected]
25 [email protected] 25 [email protected]
26 [email protected] 26 [email protected]
27 [email protected] 27 [email protected]
28 [email protected] 28 [email protected]
29 [email protected] 29 [email protected] "i"
30 [email protected] "i" 30 [email protected] " "
31 [email protected] " " 31 [email protected] "="
32 [email protected] "=" 32 [email protected] " "
33 [email protected] " " 33 [email protected]
34 [email protected] 34 [email protected] "("
35 [email protected] "(" 35 [email protected] ")"
36 [email protected] ")" 36 [email protected] ";"
37 [email protected] ";" 37 [email protected] "\n "
38 [email protected] "\n " 38 [email protected]
39 [email protected] 39 [email protected] "let"
40 [email protected] "let" 40 [email protected] " "
41 [email protected] " " 41 [email protected]
42 [email protected] 42 [email protected] "mut"
43 [email protected] "mut" 43 [email protected] " "
44 [email protected] " " 44 [email protected]
45 [email protected] 45 [email protected] "box"
46 [email protected] "box" 46 [email protected] " "
47 [email protected] " " 47 [email protected]
48 [email protected] 48 [email protected]
49 [email protected] 49 [email protected]
50 [email protected] 50 [email protected]
51 [email protected] 51 [email protected]
52 [email protected] 52 [email protected]
53 [email protected] 53 [email protected] "i"
54 [email protected] "i" 54 [email protected] " "
55 [email protected] " " 55 [email protected] "="
56 [email protected] "=" 56 [email protected] " "
57 [email protected] " " 57 [email protected]
58 [email protected] 58 [email protected] "("
59 [email protected] "(" 59 [email protected] ")"
60 [email protected] ")" 60 [email protected] ";"
61 [email protected] ";" 61 [email protected] "\n "
62 [email protected] "\n " 62 [email protected]
63 [email protected] 63 [email protected] "let"
64 [email protected] "let" 64 [email protected] " "
65 [email protected] " " 65 [email protected]
66 [email protected] 66 [email protected] "ref"
67 [email protected] "ref" 67 [email protected] " "
68 [email protected] " " 68 [email protected] "mut"
69 [email protected] "mut" 69 [email protected] " "
70 [email protected] " " 70 [email protected]
71 [email protected] 71 [email protected] "box"
72 [email protected] "box" 72 [email protected] " "
73 [email protected] " " 73 [email protected]
74 [email protected] 74 [email protected]
75 [email protected] 75 [email protected]
76 [email protected] 76 [email protected]
77 [email protected] 77 [email protected]
78 [email protected] 78 [email protected]
79 [email protected] 79 [email protected] "i"
80 [email protected] "i" 80 [email protected] " "
81 [email protected] " " 81 [email protected] "="
82 [email protected] "=" 82 [email protected] " "
83 [email protected] " " 83 [email protected]
84 [email protected] 84 [email protected] "("
85 [email protected] "(" 85 [email protected] ")"
86 [email protected] ")" 86 [email protected] ";"
87 [email protected] ";" 87 [email protected] "\n"
88 [email protected] "\n" 88 [email protected] "}"
89 [email protected] "}"
90 [email protected] "\n\n" 89 [email protected] "\n\n"
91error 24..24: expected a name 90error 24..24: expected a name
92error 27..27: expected SEMICOLON 91error 27..27: expected SEMICOLON
diff --git a/crates/ra_syntax/test_data/parser/err/0035_use_recover.rast b/crates/ra_syntax/test_data/parser/err/0035_use_recover.rast
index 83851f5d2..9588cf3b3 100644
--- a/crates/ra_syntax/test_data/parser/err/0035_use_recover.rast
+++ b/crates/ra_syntax/test_data/parser/err/0035_use_recover.rast
@@ -44,9 +44,8 @@ [email protected]
44 [email protected] ")" 44 [email protected] ")"
45 [email protected] " " 45 [email protected] " "
46 [email protected] 46 [email protected]
47 [email protected] 47 [email protected] "{"
48 [email protected] "{" 48 [email protected] "}"
49 [email protected] "}"
50 [email protected] "\n" 49 [email protected] "\n"
51error 17..17: expected one of `*`, `::`, `{`, `self`, `super` or an identifier 50error 17..17: expected one of `*`, `::`, `{`, `self`, `super` or an identifier
52error 17..17: expected SEMICOLON 51error 17..17: expected SEMICOLON
diff --git a/crates/ra_syntax/test_data/parser/err/0037_visibility_in_traits.rast b/crates/ra_syntax/test_data/parser/err/0037_visibility_in_traits.rast
index a328222aa..e3cda7c43 100644
--- a/crates/ra_syntax/test_data/parser/err/0037_visibility_in_traits.rast
+++ b/crates/ra_syntax/test_data/parser/err/0037_visibility_in_traits.rast
@@ -27,9 +27,8 @@ [email protected]
27 [email protected] ")" 27 [email protected] ")"
28 [email protected] " " 28 [email protected] " "
29 [email protected] 29 [email protected]
30 [email protected] 30 [email protected] "{"
31 [email protected] "{" 31 [email protected] "}"
32 [email protected] "}"
33 [email protected] "\n " 32 [email protected] "\n "
34 [email protected] 33 [email protected]
35 [email protected] 34 [email protected]
@@ -44,9 +43,8 @@ [email protected]
44 [email protected] ")" 43 [email protected] ")"
45 [email protected] " " 44 [email protected] " "
46 [email protected] 45 [email protected]
47 [email protected] 46 [email protected] "{"
48 [email protected] "{" 47 [email protected] "}"
49 [email protected] "}"
50 [email protected] "\n " 48 [email protected] "\n "
51 [email protected] 49 [email protected]
52 [email protected] 50 [email protected]
diff --git a/crates/ra_syntax/test_data/parser/err/0038_endless_inclusive_range.rast b/crates/ra_syntax/test_data/parser/err/0038_endless_inclusive_range.rast
index bcd1fad69..21db9ee85 100644
--- a/crates/ra_syntax/test_data/parser/err/0038_endless_inclusive_range.rast
+++ b/crates/ra_syntax/test_data/parser/err/0038_endless_inclusive_range.rast
@@ -9,22 +9,21 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected] "0"
18 [email protected] "0" 18 [email protected] "..="
19 [email protected] "..=" 19 [email protected] ";"
20 [email protected] ";" 20 [email protected] "\n "
21 [email protected] "\n " 21 [email protected]
22 [email protected] 22 [email protected]
23 [email protected] 23 [email protected] "..="
24 [email protected] "..=" 24 [email protected] ";"
25 [email protected] ";" 25 [email protected] "\n"
26 [email protected] "\n" 26 [email protected] "}"
27 [email protected] "}"
28 [email protected] "\n" 27 [email protected] "\n"
29error 16..20: An inclusive range must have an end expression 28error 16..20: An inclusive range must have an end expression
30error 26..29: An inclusive range must have an end expression 29error 26..29: An inclusive range must have an end expression
diff --git a/crates/ra_syntax/test_data/parser/err/0039_lambda_recovery.rast b/crates/ra_syntax/test_data/parser/err/0039_lambda_recovery.rast
index 433ea7bad..ec950381b 100644
--- a/crates/ra_syntax/test_data/parser/err/0039_lambda_recovery.rast
+++ b/crates/ra_syntax/test_data/parser/err/0039_lambda_recovery.rast
@@ -18,66 +18,65 @@ [email protected]
18 [email protected] "i32" 18 [email protected] "i32"
19 [email protected] " " 19 [email protected] " "
20 [email protected] 20 [email protected]
21 [email protected] 21 [email protected] "{"
22 [email protected] "{" 22 [email protected] "\n "
23 [email protected] "\n " 23 [email protected]
24 [email protected] 24 [email protected]
25 [email protected] 25 [email protected]
26 [email protected] 26 [email protected]
27 [email protected] 27 [email protected]
28 [email protected] 28 [email protected] "["
29 [email protected] "[" 29 [email protected]
30 [email protected] 30 [email protected] "1"
31 [email protected] "1" 31 [email protected] ","
32 [email protected] "," 32 [email protected] " "
33 [email protected] " " 33 [email protected]
34 [email protected] 34 [email protected] "2"
35 [email protected] "2" 35 [email protected] ","
36 [email protected] "," 36 [email protected] " "
37 [email protected] " " 37 [email protected]
38 [email protected] 38 [email protected] "3"
39 [email protected] "3" 39 [email protected] "]"
40 [email protected] "]" 40 [email protected] "."
41 [email protected] "." 41 [email protected]
42 [email protected] 42 [email protected] "iter"
43 [email protected] "iter" 43 [email protected]
44 [email protected] 44 [email protected] "("
45 [email protected] "(" 45 [email protected] ")"
46 [email protected] ")" 46 [email protected] "\n "
47 [email protected] "\n " 47 [email protected] "."
48 [email protected] "." 48 [email protected]
49 [email protected] 49 [email protected] "map"
50 [email protected] "map" 50 [email protected]
51 [email protected] 51 [email protected] "("
52 [email protected] "(" 52 [email protected]
53 [email protected] 53 [email protected]
54 [email protected] 54 [email protected] "|"
55 [email protected] "|" 55 [email protected]
56 [email protected] 56 [email protected]
57 [email protected] 57 [email protected]
58 [email protected] 58 [email protected] "it"
59 [email protected] "it" 59 [email protected] "|"
60 [email protected] "|" 60 [email protected] ")"
61 [email protected] ")" 61 [email protected] "\n "
62 [email protected] "\n " 62 [email protected] "."
63 [email protected] "." 63 [email protected]
64 [email protected] 64 [email protected] "max"
65 [email protected] "max" 65 [email protected]
66 [email protected] 66 [email protected] "::"
67 [email protected] "::" 67 [email protected] "<"
68 [email protected] "<" 68 [email protected]
69 [email protected] 69 [email protected]
70 [email protected] 70 [email protected]
71 [email protected] 71 [email protected]
72 [email protected] 72 [email protected]
73 [email protected] 73 [email protected] "i32"
74 [email protected] "i32" 74 [email protected] ">"
75 [email protected] ">" 75 [email protected]
76 [email protected] 76 [email protected] "("
77 [email protected] "(" 77 [email protected] ")"
78 [email protected] ")" 78 [email protected] ";"
79 [email protected] ";" 79 [email protected] "\n"
80 [email protected] "\n" 80 [email protected] "}"
81 [email protected] "}"
82 [email protected] "\n" 81 [email protected] "\n"
83error 56..56: expected expression 82error 56..56: expected expression
diff --git a/crates/ra_syntax/test_data/parser/inline/err/0002_misplaced_label_err.rast b/crates/ra_syntax/test_data/parser/inline/err/0002_misplaced_label_err.rast
index 85bf276a0..75668c818 100644
--- a/crates/ra_syntax/test_data/parser/inline/err/0002_misplaced_label_err.rast
+++ b/crates/ra_syntax/test_data/parser/inline/err/0002_misplaced_label_err.rast
@@ -9,19 +9,18 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected] "\'loop"
18 [email protected] "\'loop" 18 [email protected] ":"
19 [email protected] ":" 19 [email protected] " "
20 [email protected] " " 20 [email protected]
21 [email protected] 21 [email protected] "impl"
22 [email protected] "impl" 22 [email protected] "\n"
23 [email protected] "\n" 23 [email protected] "}"
24 [email protected] "}"
25 [email protected] "\n" 24 [email protected] "\n"
26error 22..22: expected a loop 25error 22..22: expected a loop
27error 22..22: expected SEMICOLON 26error 22..22: expected SEMICOLON
diff --git a/crates/ra_syntax/test_data/parser/inline/err/0006_unsafe_block_in_mod.rast b/crates/ra_syntax/test_data/parser/inline/err/0006_unsafe_block_in_mod.rast
index b901c17f7..c789e8d82 100644
--- a/crates/ra_syntax/test_data/parser/inline/err/0006_unsafe_block_in_mod.rast
+++ b/crates/ra_syntax/test_data/parser/inline/err/0006_unsafe_block_in_mod.rast
@@ -8,9 +8,8 @@ [email protected]
8 [email protected] "(" 8 [email protected] "("
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] 10 [email protected]
11 [email protected] 11 [email protected] "{"
12 [email protected] "{" 12 [email protected] "}"
13 [email protected] "}"
14 [email protected] " " 13 [email protected] " "
15 [email protected] 14 [email protected]
16 [email protected] "unsafe" 15 [email protected] "unsafe"
@@ -29,9 +28,8 @@ [email protected]
29 [email protected] "(" 28 [email protected] "("
30 [email protected] ")" 29 [email protected] ")"
31 [email protected] 30 [email protected]
32 [email protected] 31 [email protected] "{"
33 [email protected] "{" 32 [email protected] "}"
34 [email protected] "}"
35 [email protected] "\n" 33 [email protected] "\n"
36error 11..11: expected an item 34error 11..11: expected an item
37error 18..18: expected an item 35error 18..18: expected an item
diff --git a/crates/ra_syntax/test_data/parser/inline/err/0007_async_without_semicolon.rast b/crates/ra_syntax/test_data/parser/inline/err/0007_async_without_semicolon.rast
index 3f48b86ed..cd24313d4 100644
--- a/crates/ra_syntax/test_data/parser/inline/err/0007_async_without_semicolon.rast
+++ b/crates/ra_syntax/test_data/parser/inline/err/0007_async_without_semicolon.rast
@@ -9,24 +9,23 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] " "
14 [email protected] " " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "_"
19 [email protected] "_" 19 [email protected] " "
20 [email protected] " " 20 [email protected] "="
21 [email protected] "=" 21 [email protected] " "
22 [email protected] " " 22 [email protected]
23 [email protected] 23 [email protected] "async"
24 [email protected] "async" 24 [email protected] " "
25 [email protected] " " 25 [email protected]
26 [email protected] 26 [email protected] "{"
27 [email protected] "{" 27 [email protected] "}"
28 [email protected] "}" 28 [email protected] " "
29 [email protected] " " 29 [email protected] "}"
30 [email protected] "}"
31 [email protected] "\n" 30 [email protected] "\n"
32error 27..27: expected SEMICOLON 31error 27..27: expected SEMICOLON
diff --git a/crates/ra_syntax/test_data/parser/inline/err/0008_pub_expr.rast b/crates/ra_syntax/test_data/parser/inline/err/0008_pub_expr.rast
index be02eaeeb..c5fa7a404 100644
--- a/crates/ra_syntax/test_data/parser/inline/err/0008_pub_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/err/0008_pub_expr.rast
@@ -9,18 +9,17 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] " "
14 [email protected] " " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "pub"
17 [email protected] "pub" 17 [email protected] " "
18 [email protected] " " 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected] "92"
21 [email protected] "92" 21 [email protected] ";"
22 [email protected] ";" 22 [email protected] " "
23 [email protected] " " 23 [email protected] "}"
24 [email protected] "}"
25 [email protected] "\n" 24 [email protected] "\n"
26error 14..14: expected an item 25error 14..14: expected an item
diff --git a/crates/ra_syntax/test_data/parser/inline/err/0009_attr_on_expr_not_allowed.rast b/crates/ra_syntax/test_data/parser/inline/err/0009_attr_on_expr_not_allowed.rast
index b344e4f7f..0656fdf73 100644
--- a/crates/ra_syntax/test_data/parser/inline/err/0009_attr_on_expr_not_allowed.rast
+++ b/crates/ra_syntax/test_data/parser/inline/err/0009_attr_on_expr_not_allowed.rast
@@ -9,53 +9,51 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "#"
17 [email protected] "#" 17 [email protected] "["
18 [email protected] "[" 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected]
21 [email protected] 21 [email protected] "A"
22 [email protected] "A" 22 [email protected] "]"
23 [email protected] "]" 23 [email protected] " "
24 [email protected] " " 24 [email protected]
25 [email protected] 25 [email protected]
26 [email protected] 26 [email protected] "1"
27 [email protected] "1" 27 [email protected] " "
28 [email protected] " " 28 [email protected] "+"
29 [email protected] "+" 29 [email protected] " "
30 [email protected] " " 30 [email protected]
31 [email protected] 31 [email protected] "2"
32 [email protected] "2" 32 [email protected] ";"
33 [email protected] ";" 33 [email protected] "\n "
34 [email protected] "\n " 34 [email protected]
35 [email protected] 35 [email protected]
36 [email protected] 36 [email protected] "#"
37 [email protected] "#" 37 [email protected] "["
38 [email protected] "[" 38 [email protected]
39 [email protected] 39 [email protected]
40 [email protected] 40 [email protected]
41 [email protected] 41 [email protected] "B"
42 [email protected] "B" 42 [email protected] "]"
43 [email protected] "]" 43 [email protected] " "
44 [email protected] " " 44 [email protected]
45 [email protected] 45 [email protected] "if"
46 [email protected] "if" 46 [email protected] " "
47 [email protected] " " 47 [email protected]
48 [email protected] 48 [email protected]
49 [email protected] 49 [email protected] "true"
50 [email protected] "true" 50 [email protected] " "
51 [email protected] " " 51 [email protected]
52 [email protected] 52 [email protected] "{"
53 [email protected] 53 [email protected] "}"
54 [email protected] "{" 54 [email protected] ";"
55 [email protected] "}" 55 [email protected] "\n"
56 [email protected] ";" 56 [email protected] "}"
57 [email protected] "\n"
58 [email protected] "}"
59 [email protected] "\n" 57 [email protected] "\n"
60error 24..24: attributes are not allowed on BIN_EXPR 58error 24..24: attributes are not allowed on BIN_EXPR
61error 44..44: attributes are not allowed on IF_EXPR 59error 44..44: attributes are not allowed on IF_EXPR
diff --git a/crates/ra_syntax/test_data/parser/inline/err/0010_bad_tuple_index_expr.rast b/crates/ra_syntax/test_data/parser/inline/err/0010_bad_tuple_index_expr.rast
index 5339a84d7..e1abc5633 100644
--- a/crates/ra_syntax/test_data/parser/inline/err/0010_bad_tuple_index_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/err/0010_bad_tuple_index_expr.rast
@@ -9,45 +9,44 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected] "x"
21 [email protected] "x" 21 [email protected] "."
22 [email protected] "." 22 [email protected] "0."
23 [email protected] "0." 23 [email protected] ";"
24 [email protected] ";" 24 [email protected] "\n "
25 [email protected] "\n " 25 [email protected]
26 [email protected] 26 [email protected]
27 [email protected] 27 [email protected]
28 [email protected] 28 [email protected]
29 [email protected] 29 [email protected]
30 [email protected] 30 [email protected]
31 [email protected] 31 [email protected] "x"
32 [email protected] "x" 32 [email protected] "."
33 [email protected] "." 33 [email protected]
34 [email protected] 34 [email protected] "1i32"
35 [email protected] "1i32" 35 [email protected] ";"
36 [email protected] ";" 36 [email protected] "\n "
37 [email protected] "\n " 37 [email protected]
38 [email protected] 38 [email protected]
39 [email protected] 39 [email protected]
40 [email protected] 40 [email protected]
41 [email protected] 41 [email protected]
42 [email protected] 42 [email protected]
43 [email protected] 43 [email protected] "x"
44 [email protected] "x" 44 [email protected] "."
45 [email protected] "." 45 [email protected]
46 [email protected] 46 [email protected] "0x01"
47 [email protected] "0x01" 47 [email protected] ";"
48 [email protected] ";" 48 [email protected] "\n"
49 [email protected] "\n" 49 [email protected] "}"
50 [email protected] "}"
51 [email protected] "\n" 50 [email protected] "\n"
52error 27..31: Tuple (struct) field access is only allowed through decimal integers with no underscores or suffix 51error 27..31: Tuple (struct) field access is only allowed through decimal integers with no underscores or suffix
53error 39..43: Tuple (struct) field access is only allowed through decimal integers with no underscores or suffix 52error 39..43: Tuple (struct) field access is only allowed through decimal integers with no underscores or suffix
diff --git a/crates/ra_syntax/test_data/parser/inline/err/0010_wrong_order_fns.rast b/crates/ra_syntax/test_data/parser/inline/err/0010_wrong_order_fns.rast
index 20ed39046..9be441110 100644
--- a/crates/ra_syntax/test_data/parser/inline/err/0010_wrong_order_fns.rast
+++ b/crates/ra_syntax/test_data/parser/inline/err/0010_wrong_order_fns.rast
@@ -14,9 +14,8 @@ [email protected]
14 [email protected] ")" 14 [email protected] ")"
15 [email protected] " " 15 [email protected] " "
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected] "{"
18 [email protected] "{" 18 [email protected] "}"
19 [email protected] "}"
20 [email protected] "\n" 19 [email protected] "\n"
21 [email protected] 20 [email protected]
22 [email protected] "unsafe" 21 [email protected] "unsafe"
@@ -33,9 +32,8 @@ [email protected]
33 [email protected] ")" 32 [email protected] ")"
34 [email protected] " " 33 [email protected] " "
35 [email protected] 34 [email protected]
36 [email protected] 35 [email protected] "{"
37 [email protected] "{" 36 [email protected] "}"
38 [email protected] "}"
39 [email protected] "\n" 37 [email protected] "\n"
40error 6..6: expected existential, fn, trait or impl 38error 6..6: expected existential, fn, trait or impl
41error 31..31: expected existential, fn, trait or impl 39error 31..31: expected existential, fn, trait or impl
diff --git a/crates/ra_syntax/test_data/parser/inline/err/0014_default_fn_type.rast b/crates/ra_syntax/test_data/parser/inline/err/0014_default_fn_type.rast
index 88567263e..b8cd0587d 100644
--- a/crates/ra_syntax/test_data/parser/inline/err/0014_default_fn_type.rast
+++ b/crates/ra_syntax/test_data/parser/inline/err/0014_default_fn_type.rast
@@ -45,9 +45,8 @@ [email protected]
45 [email protected] ")" 45 [email protected] ")"
46 [email protected] " " 46 [email protected] " "
47 [email protected] 47 [email protected]
48 [email protected] 48 [email protected] "{"
49 [email protected] "{" 49 [email protected] "}"
50 [email protected] "}"
51 [email protected] "\n" 50 [email protected] "\n"
52 [email protected] "}" 51 [email protected] "}"
53 [email protected] "\n" 52 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/err/0014_record_literal_before_ellipsis_recovery.rast b/crates/ra_syntax/test_data/parser/inline/err/0014_record_literal_before_ellipsis_recovery.rast
index 578befa56..a9de44b57 100644
--- a/crates/ra_syntax/test_data/parser/inline/err/0014_record_literal_before_ellipsis_recovery.rast
+++ b/crates/ra_syntax/test_data/parser/inline/err/0014_record_literal_before_ellipsis_recovery.rast
@@ -9,41 +9,40 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected]
18 [email protected] 18 [email protected] "S"
19 [email protected] "S" 19 [email protected] " "
20 [email protected] " " 20 [email protected]
21 [email protected] 21 [email protected] "{"
22 [email protected] "{" 22 [email protected] " "
23 [email protected] " " 23 [email protected]
24 [email protected] 24 [email protected]
25 [email protected] 25 [email protected] "field"
26 [email protected] "field" 26 [email protected] " "
27 [email protected] " " 27 [email protected]
28 [email protected] 28 [email protected] ".."
29 [email protected] ".." 29 [email protected]
30 [email protected] 30 [email protected]
31 [email protected] 31 [email protected]
32 [email protected] 32 [email protected]
33 [email protected] 33 [email protected]
34 [email protected] 34 [email protected]
35 [email protected] 35 [email protected] "S"
36 [email protected] "S" 36 [email protected] "::"
37 [email protected] "::" 37 [email protected]
38 [email protected] 38 [email protected]
39 [email protected] 39 [email protected] "default"
40 [email protected] "default" 40 [email protected]
41 [email protected] 41 [email protected] "("
42 [email protected] "(" 42 [email protected] ")"
43 [email protected] ")" 43 [email protected] " "
44 [email protected] " " 44 [email protected] "}"
45 [email protected] "}" 45 [email protected] "\n"
46 [email protected] "\n" 46 [email protected] "}"
47 [email protected] "}"
48 [email protected] "\n" 47 [email protected] "\n"
49error 25..25: expected COLON 48error 25..25: expected COLON
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0001_trait_item_list.rast b/crates/ra_syntax/test_data/parser/inline/ok/0001_trait_item_list.rast
index a1fabb557..a38b4f573 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0001_trait_item_list.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0001_trait_item_list.rast
@@ -51,9 +51,8 @@ [email protected]
51 [email protected] ")" 51 [email protected] ")"
52 [email protected] " " 52 [email protected] " "
53 [email protected] 53 [email protected]
54 [email protected] 54 [email protected] "{"
55 [email protected] "{" 55 [email protected] "}"
56 [email protected] "}"
57 [email protected] "\n " 56 [email protected] "\n "
58 [email protected] 57 [email protected]
59 [email protected] "fn" 58 [email protected] "fn"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0003_where_pred_for.rast b/crates/ra_syntax/test_data/parser/inline/ok/0003_where_pred_for.rast
index a46d76fde..9dc473e43 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0003_where_pred_for.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0003_where_pred_for.rast
@@ -55,8 +55,7 @@ [email protected]
55 [email protected] ")" 55 [email protected] ")"
56 [email protected] "\n" 56 [email protected] "\n"
57 [email protected] 57 [email protected]
58 [email protected] 58 [email protected] "{"
59 [email protected] "{" 59 [email protected] " "
60 [email protected] " " 60 [email protected] "}"
61 [email protected] "}"
62 [email protected] "\n" 61 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0005_function_type_params.rast b/crates/ra_syntax/test_data/parser/inline/ok/0005_function_type_params.rast
index 5181fcd2b..6c8c1e24b 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0005_function_type_params.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0005_function_type_params.rast
@@ -32,7 +32,6 @@ [email protected]
32 [email protected] "(" 32 [email protected] "("
33 [email protected] ")" 33 [email protected] ")"
34 [email protected] 34 [email protected]
35 [email protected] 35 [email protected] "{"
36 [email protected] "{" 36 [email protected] "}"
37 [email protected] "}"
38 [email protected] "\n" 37 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0006_self_param.rast b/crates/ra_syntax/test_data/parser/inline/ok/0006_self_param.rast
index dd41b44e1..9f4a9e69b 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0006_self_param.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0006_self_param.rast
@@ -23,9 +23,8 @@ [email protected]
23 [email protected] ")" 23 [email protected] ")"
24 [email protected] " " 24 [email protected] " "
25 [email protected] 25 [email protected]
26 [email protected] 26 [email protected] "{"
27 [email protected] "{" 27 [email protected] "}"
28 [email protected] "}"
29 [email protected] "\n " 28 [email protected] "\n "
30 [email protected] 29 [email protected]
31 [email protected] "fn" 30 [email protected] "fn"
@@ -41,9 +40,8 @@ [email protected]
41 [email protected] ")" 40 [email protected] ")"
42 [email protected] " " 41 [email protected] " "
43 [email protected] 42 [email protected]
44 [email protected] 43 [email protected] "{"
45 [email protected] "{" 44 [email protected] "}"
46 [email protected] "}"
47 [email protected] "\n " 45 [email protected] "\n "
48 [email protected] 46 [email protected]
49 [email protected] "fn" 47 [email protected] "fn"
@@ -61,9 +59,8 @@ [email protected]
61 [email protected] ")" 59 [email protected] ")"
62 [email protected] " " 60 [email protected] " "
63 [email protected] 61 [email protected]
64 [email protected] 62 [email protected] "{"
65 [email protected] "{" 63 [email protected] "}"
66 [email protected] "}"
67 [email protected] "\n " 64 [email protected] "\n "
68 [email protected] 65 [email protected]
69 [email protected] "fn" 66 [email protected] "fn"
@@ -95,9 +92,8 @@ [email protected]
95 [email protected] ")" 92 [email protected] ")"
96 [email protected] " " 93 [email protected] " "
97 [email protected] 94 [email protected]
98 [email protected] 95 [email protected] "{"
99 [email protected] "{" 96 [email protected] "}"
100 [email protected] "}"
101 [email protected] "\n " 97 [email protected] "\n "
102 [email protected] 98 [email protected]
103 [email protected] "fn" 99 [email protected] "fn"
@@ -113,9 +109,8 @@ [email protected]
113 [email protected] ")" 109 [email protected] ")"
114 [email protected] " " 110 [email protected] " "
115 [email protected] 111 [email protected]
116 [email protected] 112 [email protected] "{"
117 [email protected] "{" 113 [email protected] "}"
118 [email protected] "}"
119 [email protected] "\n" 114 [email protected] "\n"
120 [email protected] "}" 115 [email protected] "}"
121 [email protected] "\n" 116 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0008_path_part.rast b/crates/ra_syntax/test_data/parser/inline/ok/0008_path_part.rast
index a8ddd20c9..10eb31d68 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0008_path_part.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0008_path_part.rast
@@ -9,89 +9,88 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected]
21 [email protected] 21 [email protected]
22 [email protected] 22 [email protected] "foo"
23 [email protected] "foo" 23 [email protected] "::"
24 [email protected] "::" 24 [email protected]
25 [email protected] 25 [email protected]
26 [email protected] 26 [email protected] "Bar"
27 [email protected] "Bar" 27 [email protected] " "
28 [email protected] " " 28 [email protected] "="
29 [email protected] "=" 29 [email protected] " "
30 [email protected] " " 30 [email protected]
31 [email protected] 31 [email protected] "("
32 [email protected] "(" 32 [email protected] ")"
33 [email protected] ")" 33 [email protected] ";"
34 [email protected] ";" 34 [email protected] "\n "
35 [email protected] "\n " 35 [email protected]
36 [email protected] 36 [email protected] "let"
37 [email protected] "let" 37 [email protected] " "
38 [email protected] " " 38 [email protected]
39 [email protected] 39 [email protected]
40 [email protected] 40 [email protected]
41 [email protected] 41 [email protected] "::"
42 [email protected] "::" 42 [email protected]
43 [email protected] 43 [email protected] "Bar"
44 [email protected] "Bar" 44 [email protected] " "
45 [email protected] " " 45 [email protected] "="
46 [email protected] "=" 46 [email protected] " "
47 [email protected] " " 47 [email protected]
48 [email protected] 48 [email protected] "("
49 [email protected] "(" 49 [email protected] ")"
50 [email protected] ")" 50 [email protected] ";"
51 [email protected] ";" 51 [email protected] "\n "
52 [email protected] "\n " 52 [email protected]
53 [email protected] 53 [email protected] "let"
54 [email protected] "let" 54 [email protected] " "
55 [email protected] " " 55 [email protected]
56 [email protected] 56 [email protected]
57 [email protected] 57 [email protected]
58 [email protected] 58 [email protected]
59 [email protected] 59 [email protected] "Bar"
60 [email protected] "Bar" 60 [email protected] " "
61 [email protected] " " 61 [email protected]
62 [email protected] 62 [email protected] "{"
63 [email protected] "{" 63 [email protected] " "
64 [email protected] " " 64 [email protected] ".."
65 [email protected] ".." 65 [email protected] " "
66 [email protected] " " 66 [email protected] "}"
67 [email protected] "}" 67 [email protected] " "
68 [email protected] " " 68 [email protected] "="
69 [email protected] "=" 69 [email protected] " "
70 [email protected] " " 70 [email protected]
71 [email protected] 71 [email protected] "("
72 [email protected] "(" 72 [email protected] ")"
73 [email protected] ")" 73 [email protected] ";"
74 [email protected] ";" 74 [email protected] "\n "
75 [email protected] "\n " 75 [email protected]
76 [email protected] 76 [email protected] "let"
77 [email protected] "let" 77 [email protected] " "
78 [email protected] " " 78 [email protected]
79 [email protected] 79 [email protected]
80 [email protected] 80 [email protected]
81 [email protected] 81 [email protected]
82 [email protected] 82 [email protected] "Bar"
83 [email protected] "Bar" 83 [email protected] "("
84 [email protected] "(" 84 [email protected]
85 [email protected] 85 [email protected] ".."
86 [email protected] ".." 86 [email protected] ")"
87 [email protected] ")" 87 [email protected] " "
88 [email protected] " " 88 [email protected] "="
89 [email protected] "=" 89 [email protected] " "
90 [email protected] " " 90 [email protected]
91 [email protected] 91 [email protected] "("
92 [email protected] "(" 92 [email protected] ")"
93 [email protected] ")" 93 [email protected] ";"
94 [email protected] ";" 94 [email protected] "\n"
95 [email protected] "\n" 95 [email protected] "}"
96 [email protected] "}"
97 [email protected] "\n" 96 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0009_loop_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0009_loop_expr.rast
index df8ada62a..425e5196c 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0009_loop_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0009_loop_expr.rast
@@ -9,18 +9,16 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "loop"
17 [email protected] "loop" 17 [email protected] " "
18 [email protected] " " 18 [email protected]
19 [email protected] 19 [email protected] "{"
20 [email protected] 20 [email protected] "}"
21 [email protected] "{" 21 [email protected] ";"
22 [email protected] "}" 22 [email protected] "\n"
23 [email protected] ";" 23 [email protected] "}"
24 [email protected] "\n"
25 [email protected] "}"
26 [email protected] "\n" 24 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0011_field_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0011_field_expr.rast
index de01cc79e..d823c08fc 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0011_field_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0011_field_expr.rast
@@ -9,52 +9,51 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected] "x"
21 [email protected] "x" 21 [email protected] "."
22 [email protected] "." 22 [email protected]
23 [email protected] 23 [email protected] "foo"
24 [email protected] "foo" 24 [email protected] ";"
25 [email protected] ";" 25 [email protected] "\n "
26 [email protected] "\n " 26 [email protected]
27 [email protected] 27 [email protected]
28 [email protected] 28 [email protected]
29 [email protected] 29 [email protected]
30 [email protected] 30 [email protected]
31 [email protected] 31 [email protected]
32 [email protected] 32 [email protected]
33 [email protected] 33 [email protected] "x"
34 [email protected] "x" 34 [email protected] "."
35 [email protected] "." 35 [email protected]
36 [email protected] 36 [email protected] "0"
37 [email protected] "0" 37 [email protected] "."
38 [email protected] "." 38 [email protected]
39 [email protected] 39 [email protected] "bar"
40 [email protected] "bar" 40 [email protected] ";"
41 [email protected] ";" 41 [email protected] "\n "
42 [email protected] "\n " 42 [email protected]
43 [email protected] 43 [email protected]
44 [email protected] 44 [email protected]
45 [email protected] 45 [email protected]
46 [email protected] 46 [email protected]
47 [email protected] 47 [email protected]
48 [email protected] 48 [email protected]
49 [email protected] 49 [email protected] "x"
50 [email protected] "x" 50 [email protected] "."
51 [email protected] "." 51 [email protected]
52 [email protected] 52 [email protected] "0"
53 [email protected] "0" 53 [email protected]
54 [email protected] 54 [email protected] "("
55 [email protected] "(" 55 [email protected] ")"
56 [email protected] ")" 56 [email protected] ";"
57 [email protected] ";" 57 [email protected] "\n"
58 [email protected] "\n" 58 [email protected] "}"
59 [email protected] "}"
60 [email protected] "\n" 59 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0015_continue_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0015_continue_expr.rast
index 8ac307cb3..422912e3c 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0015_continue_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0015_continue_expr.rast
@@ -9,29 +9,27 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "loop"
16 [email protected] "loop" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "{"
19 [email protected] 19 [email protected] "\n "
20 [email protected] "{" 20 [email protected]
21 [email protected] "\n " 21 [email protected]
22 [email protected] 22 [email protected] "continue"
23 [email protected] 23 [email protected] ";"
24 [email protected] "continue" 24 [email protected] "\n "
25 [email protected] ";" 25 [email protected]
26 [email protected] "\n " 26 [email protected]
27 [email protected] 27 [email protected] "continue"
28 [email protected] 28 [email protected] " "
29 [email protected] "continue" 29 [email protected] "\'l"
30 [email protected] " " 30 [email protected] ";"
31 [email protected] "\'l" 31 [email protected] "\n "
32 [email protected] ";" 32 [email protected] "}"
33 [email protected] "\n " 33 [email protected] "\n"
34 [email protected] "}" 34 [email protected] "}"
35 [email protected] "\n"
36 [email protected] "}"
37 [email protected] "\n" 35 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0018_arb_self_types.rast b/crates/ra_syntax/test_data/parser/inline/ok/0018_arb_self_types.rast
index 6f6400d00..15da6fdd6 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0018_arb_self_types.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0018_arb_self_types.rast
@@ -32,9 +32,8 @@ [email protected]
32 [email protected] ")" 32 [email protected] ")"
33 [email protected] " " 33 [email protected] " "
34 [email protected] 34 [email protected]
35 [email protected] 35 [email protected] "{"
36 [email protected] "{" 36 [email protected] "}"
37 [email protected] "}"
38 [email protected] "\n " 37 [email protected] "\n "
39 [email protected] 38 [email protected]
40 [email protected] "fn" 39 [email protected] "fn"
@@ -66,9 +65,8 @@ [email protected]
66 [email protected] ")" 65 [email protected] ")"
67 [email protected] " " 66 [email protected] " "
68 [email protected] 67 [email protected]
69 [email protected] 68 [email protected] "{"
70 [email protected] "{" 69 [email protected] "}"
71 [email protected] "}"
72 [email protected] "\n" 70 [email protected] "\n"
73 [email protected] "}" 71 [email protected] "}"
74 [email protected] "\n" 72 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0019_unary_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0019_unary_expr.rast
index ba422f1ae..10d6b2fde 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0019_unary_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0019_unary_expr.rast
@@ -9,37 +9,36 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "*"
17 [email protected] "*" 17 [email protected]
18 [email protected] 18 [email protected] "*"
19 [email protected] "*" 19 [email protected]
20 [email protected] 20 [email protected] "&"
21 [email protected] "&" 21 [email protected]
22 [email protected] 22 [email protected] "1"
23 [email protected] "1" 23 [email protected] ";"
24 [email protected] ";" 24 [email protected] "\n "
25 [email protected] "\n " 25 [email protected]
26 [email protected] 26 [email protected]
27 [email protected] 27 [email protected] "!"
28 [email protected] "!" 28 [email protected]
29 [email protected] 29 [email protected] "!"
30 [email protected] "!" 30 [email protected]
31 [email protected] 31 [email protected] "true"
32 [email protected] "true" 32 [email protected] ";"
33 [email protected] ";" 33 [email protected] "\n "
34 [email protected] "\n " 34 [email protected]
35 [email protected] 35 [email protected]
36 [email protected] 36 [email protected] "-"
37 [email protected] "-" 37 [email protected]
38 [email protected] 38 [email protected] "-"
39 [email protected] "-" 39 [email protected]
40 [email protected] 40 [email protected] "1"
41 [email protected] "1" 41 [email protected] ";"
42 [email protected] ";" 42 [email protected] "\n"
43 [email protected] "\n" 43 [email protected] "}"
44 [email protected] "}"
45 [email protected] "\n" 44 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0021_impl_item_list.rast b/crates/ra_syntax/test_data/parser/inline/ok/0021_impl_item_list.rast
index de22b22dd..c204aeb63 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0021_impl_item_list.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0021_impl_item_list.rast
@@ -55,9 +55,8 @@ [email protected]
55 [email protected] ")" 55 [email protected] ")"
56 [email protected] " " 56 [email protected] " "
57 [email protected] 57 [email protected]
58 [email protected] 58 [email protected] "{"
59 [email protected] "{" 59 [email protected] "}"
60 [email protected] "}"
61 [email protected] "\n " 60 [email protected] "\n "
62 [email protected] 61 [email protected]
63 [email protected] "fn" 62 [email protected] "fn"
@@ -72,9 +71,8 @@ [email protected]
72 [email protected] ")" 71 [email protected] ")"
73 [email protected] " " 72 [email protected] " "
74 [email protected] 73 [email protected]
75 [email protected] 74 [email protected] "{"
76 [email protected] "{" 75 [email protected] "}"
77 [email protected] "}"
78 [email protected] "\n" 76 [email protected] "\n"
79 [email protected] "}" 77 [email protected] "}"
80 [email protected] "\n" 78 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0024_slice_pat.rast b/crates/ra_syntax/test_data/parser/inline/ok/0024_slice_pat.rast
index 7da292a2d..7eb27d5e1 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0024_slice_pat.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0024_slice_pat.rast
@@ -9,34 +9,33 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "["
19 [email protected] "[" 19 [email protected]
20 [email protected] 20 [email protected]
21 [email protected] 21 [email protected] "a"
22 [email protected] "a" 22 [email protected] ","
23 [email protected] "," 23 [email protected] " "
24 [email protected] " " 24 [email protected]
25 [email protected] 25 [email protected]
26 [email protected] 26 [email protected] "b"
27 [email protected] "b" 27 [email protected] ","
28 [email protected] "," 28 [email protected] " "
29 [email protected] " " 29 [email protected]
30 [email protected] 30 [email protected] ".."
31 [email protected] ".." 31 [email protected] "]"
32 [email protected] "]" 32 [email protected] " "
33 [email protected] " " 33 [email protected] "="
34 [email protected] "=" 34 [email protected] " "
35 [email protected] " " 35 [email protected]
36 [email protected] 36 [email protected] "["
37 [email protected] "[" 37 [email protected] "]"
38 [email protected] "]" 38 [email protected] ";"
39 [email protected] ";" 39 [email protected] "\n"
40 [email protected] "\n" 40 [email protected] "}"
41 [email protected] "}"
42 [email protected] "\n" 41 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0026_tuple_pat_fields.rast b/crates/ra_syntax/test_data/parser/inline/ok/0026_tuple_pat_fields.rast
index 574942f06..b4598768e 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0026_tuple_pat_fields.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0026_tuple_pat_fields.rast
@@ -9,97 +9,96 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected]
21 [email protected] 21 [email protected] "S"
22 [email protected] "S" 22 [email protected] "("
23 [email protected] "(" 23 [email protected] ")"
24 [email protected] ")" 24 [email protected] " "
25 [email protected] " " 25 [email protected] "="
26 [email protected] "=" 26 [email protected] " "
27 [email protected] " " 27 [email protected]
28 [email protected] 28 [email protected] "("
29 [email protected] "(" 29 [email protected] ")"
30 [email protected] ")" 30 [email protected] ";"
31 [email protected] ";" 31 [email protected] "\n "
32 [email protected] "\n " 32 [email protected]
33 [email protected] 33 [email protected] "let"
34 [email protected] "let" 34 [email protected] " "
35 [email protected] " " 35 [email protected]
36 [email protected] 36 [email protected]
37 [email protected] 37 [email protected]
38 [email protected] 38 [email protected]
39 [email protected] 39 [email protected] "S"
40 [email protected] "S" 40 [email protected] "("
41 [email protected] "(" 41 [email protected]
42 [email protected] 42 [email protected] "_"
43 [email protected] "_" 43 [email protected] ")"
44 [email protected] ")" 44 [email protected] " "
45 [email protected] " " 45 [email protected] "="
46 [email protected] "=" 46 [email protected] " "
47 [email protected] " " 47 [email protected]
48 [email protected] 48 [email protected] "("
49 [email protected] "(" 49 [email protected] ")"
50 [email protected] ")" 50 [email protected] ";"
51 [email protected] ";" 51 [email protected] "\n "
52 [email protected] "\n " 52 [email protected]
53 [email protected] 53 [email protected] "let"
54 [email protected] "let" 54 [email protected] " "
55 [email protected] " " 55 [email protected]
56 [email protected] 56 [email protected]
57 [email protected] 57 [email protected]
58 [email protected] 58 [email protected]
59 [email protected] 59 [email protected] "S"
60 [email protected] "S" 60 [email protected] "("
61 [email protected] "(" 61 [email protected]
62 [email protected] 62 [email protected] "_"
63 [email protected] "_" 63 [email protected] ","
64 [email protected] "," 64 [email protected] ")"
65 [email protected] ")" 65 [email protected] " "
66 [email protected] " " 66 [email protected] "="
67 [email protected] "=" 67 [email protected] " "
68 [email protected] " " 68 [email protected]
69 [email protected] 69 [email protected] "("
70 [email protected] "(" 70 [email protected] ")"
71 [email protected] ")" 71 [email protected] ";"
72 [email protected] ";" 72 [email protected] "\n "
73 [email protected] "\n " 73 [email protected]
74 [email protected] 74 [email protected] "let"
75 [email protected] "let" 75 [email protected] " "
76 [email protected] " " 76 [email protected]
77 [email protected] 77 [email protected]
78 [email protected] 78 [email protected]
79 [email protected] 79 [email protected]
80 [email protected] 80 [email protected] "S"
81 [email protected] "S" 81 [email protected] "("
82 [email protected] "(" 82 [email protected]
83 [email protected] 83 [email protected] "_"
84 [email protected] "_" 84 [email protected] ","
85 [email protected] "," 85 [email protected] " "
86 [email protected] " " 86 [email protected]
87 [email protected] 87 [email protected] ".."
88 [email protected] ".." 88 [email protected] " "
89 [email protected] " " 89 [email protected] ","
90 [email protected] "," 90 [email protected] " "
91 [email protected] " " 91 [email protected]
92 [email protected] 92 [email protected]
93 [email protected] 93 [email protected] "x"
94 [email protected] "x" 94 [email protected] ")"
95 [email protected] ")" 95 [email protected] " "
96 [email protected] " " 96 [email protected] "="
97 [email protected] "=" 97 [email protected] " "
98 [email protected] " " 98 [email protected]
99 [email protected] 99 [email protected] "("
100 [email protected] "(" 100 [email protected] ")"
101 [email protected] ")" 101 [email protected] ";"
102 [email protected] ";" 102 [email protected] "\n"
103 [email protected] "\n" 103 [email protected] "}"
104 [email protected] "}"
105 [email protected] "\n" 104 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0027_ref_pat.rast b/crates/ra_syntax/test_data/parser/inline/ok/0027_ref_pat.rast
index 1927438bb..b824c10a8 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0027_ref_pat.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0027_ref_pat.rast
@@ -9,42 +9,41 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "&"
19 [email protected] "&" 19 [email protected]
20 [email protected] 20 [email protected]
21 [email protected] 21 [email protected] "a"
22 [email protected] "a" 22 [email protected] " "
23 [email protected] " " 23 [email protected] "="
24 [email protected] "=" 24 [email protected] " "
25 [email protected] " " 25 [email protected]
26 [email protected] 26 [email protected] "("
27 [email protected] "(" 27 [email protected] ")"
28 [email protected] ")" 28 [email protected] ";"
29 [email protected] ";" 29 [email protected] "\n "
30 [email protected] "\n " 30 [email protected]
31 [email protected] 31 [email protected] "let"
32 [email protected] "let" 32 [email protected] " "
33 [email protected] " " 33 [email protected]
34 [email protected] 34 [email protected] "&"
35 [email protected] "&" 35 [email protected] "mut"
36 [email protected] "mut" 36 [email protected] " "
37 [email protected] " " 37 [email protected]
38 [email protected] 38 [email protected]
39 [email protected] 39 [email protected] "b"
40 [email protected] "b" 40 [email protected] " "
41 [email protected] " " 41 [email protected] "="
42 [email protected] "=" 42 [email protected] " "
43 [email protected] " " 43 [email protected]
44 [email protected] 44 [email protected] "("
45 [email protected] "(" 45 [email protected] ")"
46 [email protected] ")" 46 [email protected] ";"
47 [email protected] ";" 47 [email protected] "\n"
48 [email protected] "\n" 48 [email protected] "}"
49 [email protected] "}"
50 [email protected] "\n" 49 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0029_cast_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0029_cast_expr.rast
index 9effb345f..fabb09937 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0029_cast_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0029_cast_expr.rast
@@ -9,82 +9,81 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected] "82"
18 [email protected] "82" 18 [email protected] " "
19 [email protected] " " 19 [email protected] "as"
20 [email protected] "as" 20 [email protected] " "
21 [email protected] " " 21 [email protected]
22 [email protected] 22 [email protected]
23 [email protected] 23 [email protected]
24 [email protected] 24 [email protected]
25 [email protected] 25 [email protected] "i32"
26 [email protected] "i32" 26 [email protected] ";"
27 [email protected] ";" 27 [email protected] "\n "
28 [email protected] "\n " 28 [email protected]
29 [email protected] 29 [email protected]
30 [email protected] 30 [email protected]
31 [email protected] 31 [email protected]
32 [email protected] 32 [email protected] "81"
33 [email protected] "81" 33 [email protected] " "
34 [email protected] " " 34 [email protected] "as"
35 [email protected] "as" 35 [email protected] " "
36 [email protected] " " 36 [email protected]
37 [email protected] 37 [email protected]
38 [email protected] 38 [email protected]
39 [email protected] 39 [email protected]
40 [email protected] 40 [email protected] "i8"
41 [email protected] "i8" 41 [email protected] " "
42 [email protected] " " 42 [email protected] "+"
43 [email protected] "+" 43 [email protected] " "
44 [email protected] " " 44 [email protected]
45 [email protected] 45 [email protected] "1"
46 [email protected] "1" 46 [email protected] ";"
47 [email protected] ";" 47 [email protected] "\n "
48 [email protected] "\n " 48 [email protected]
49 [email protected] 49 [email protected]
50 [email protected] 50 [email protected]
51 [email protected] 51 [email protected]
52 [email protected] 52 [email protected] "79"
53 [email protected] "79" 53 [email protected] " "
54 [email protected] " " 54 [email protected] "as"
55 [email protected] "as" 55 [email protected] " "
56 [email protected] " " 56 [email protected]
57 [email protected] 57 [email protected]
58 [email protected] 58 [email protected]
59 [email protected] 59 [email protected]
60 [email protected] 60 [email protected] "i16"
61 [email protected] "i16" 61 [email protected] " "
62 [email protected] " " 62 [email protected] "-"
63 [email protected] "-" 63 [email protected] " "
64 [email protected] " " 64 [email protected]
65 [email protected] 65 [email protected] "1"
66 [email protected] "1" 66 [email protected] ";"
67 [email protected] ";" 67 [email protected] "\n "
68 [email protected] "\n " 68 [email protected]
69 [email protected] 69 [email protected]
70 [email protected] 70 [email protected]
71 [email protected] 71 [email protected]
72 [email protected] 72 [email protected] "0x36"
73 [email protected] "0x36" 73 [email protected] " "
74 [email protected] " " 74 [email protected] "as"
75 [email protected] "as" 75 [email protected] " "
76 [email protected] " " 76 [email protected]
77 [email protected] 77 [email protected]
78 [email protected] 78 [email protected]
79 [email protected] 79 [email protected]
80 [email protected] 80 [email protected] "u8"
81 [email protected] "u8" 81 [email protected] " "
82 [email protected] " " 82 [email protected] "<="
83 [email protected] "<=" 83 [email protected] " "
84 [email protected] " " 84 [email protected]
85 [email protected] 85 [email protected] "0x37"
86 [email protected] "0x37" 86 [email protected] ";"
87 [email protected] ";" 87 [email protected] "\n"
88 [email protected] "\n" 88 [email protected] "}"
89 [email protected] "}"
90 [email protected] "\n" 89 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0030_cond.rast b/crates/ra_syntax/test_data/parser/inline/ok/0030_cond.rast
index b6759541e..3aed26732 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0030_cond.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0030_cond.rast
@@ -9,39 +9,37 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] " "
14 [email protected] " " 14 [email protected]
15 [email protected] 15 [email protected] "if"
16 [email protected] "if" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "let"
19 [email protected] "let" 19 [email protected] " "
20 [email protected] " " 20 [email protected]
21 [email protected] 21 [email protected]
22 [email protected] 22 [email protected]
23 [email protected] 23 [email protected]
24 [email protected] 24 [email protected] "Some"
25 [email protected] "Some" 25 [email protected] "("
26 [email protected] "(" 26 [email protected]
27 [email protected] 27 [email protected] "_"
28 [email protected] "_" 28 [email protected] ")"
29 [email protected] ")" 29 [email protected] " "
30 [email protected] " " 30 [email protected] "="
31 [email protected] "=" 31 [email protected] " "
32 [email protected] " " 32 [email protected]
33 [email protected] 33 [email protected]
34 [email protected] 34 [email protected]
35 [email protected] 35 [email protected]
36 [email protected] 36 [email protected] "None"
37 [email protected] "None" 37 [email protected] " "
38 [email protected] " " 38 [email protected]
39 [email protected] 39 [email protected] "{"
40 [email protected] 40 [email protected] "}"
41 [email protected] "{" 41 [email protected] " "
42 [email protected] "}" 42 [email protected] "}"
43 [email protected] " "
44 [email protected] "}"
45 [email protected] "\n" 43 [email protected] "\n"
46 [email protected] 44 [email protected]
47 [email protected] "fn" 45 [email protected] "fn"
@@ -53,157 +51,152 @@ [email protected]
53 [email protected] ")" 51 [email protected] ")"
54 [email protected] " " 52 [email protected] " "
55 [email protected] 53 [email protected]
56 [email protected] 54 [email protected] "{"
57 [email protected] "{" 55 [email protected] "\n "
58 [email protected] "\n " 56 [email protected]
59 [email protected] 57 [email protected]
60 [email protected] 58 [email protected] "if"
61 [email protected] "if" 59 [email protected] " "
62 [email protected] " " 60 [email protected]
63 [email protected] 61 [email protected] "let"
64 [email protected] "let" 62 [email protected] " "
65 [email protected] " " 63 [email protected]
66 [email protected] 64 [email protected]
67 [email protected] 65 [email protected]
68 [email protected] 66 [email protected]
69 [email protected] 67 [email protected]
70 [email protected] 68 [email protected] "Some"
71 [email protected] "Some" 69 [email protected] "("
72 [email protected] "(" 70 [email protected]
73 [email protected] 71 [email protected] "_"
74 [email protected] "_" 72 [email protected] ")"
75 [email protected] ")" 73 [email protected] " "
76 [email protected] " " 74 [email protected] "|"
77 [email protected] "|" 75 [email protected] " "
78 [email protected] " " 76 [email protected]
79 [email protected] 77 [email protected]
80 [email protected] 78 [email protected]
81 [email protected] 79 [email protected]
82 [email protected] 80 [email protected] "Some"
83 [email protected] "Some" 81 [email protected] "("
84 [email protected] "(" 82 [email protected]
85 [email protected] 83 [email protected] "_"
86 [email protected] "_" 84 [email protected] ")"
87 [email protected] ")" 85 [email protected] " "
88 [email protected] " " 86 [email protected] "="
89 [email protected] "=" 87 [email protected] " "
90 [email protected] " " 88 [email protected]
91 [email protected] 89 [email protected]
92 [email protected] 90 [email protected]
93 [email protected] 91 [email protected]
94 [email protected] 92 [email protected] "None"
95 [email protected] "None" 93 [email protected] " "
96 [email protected] " " 94 [email protected]
97 [email protected] 95 [email protected] "{"
98 [email protected] 96 [email protected] "}"
99 [email protected] "{" 97 [email protected] "\n "
100 [email protected] "}" 98 [email protected]
101 [email protected] "\n " 99 [email protected]
102 [email protected] 100 [email protected] "if"
103 [email protected] 101 [email protected] " "
104 [email protected] "if" 102 [email protected]
105 [email protected] " " 103 [email protected] "let"
106 [email protected] 104 [email protected] " "
107 [email protected] "let" 105 [email protected] "|"
108 [email protected] " " 106 [email protected] " "
109 [email protected] "|" 107 [email protected]
110 [email protected] " " 108 [email protected]
111 [email protected] 109 [email protected]
112 [email protected] 110 [email protected]
113 [email protected] 111 [email protected] "Some"
114 [email protected] 112 [email protected] "("
115 [email protected] "Some" 113 [email protected]
116 [email protected] "(" 114 [email protected] "_"
117 [email protected] 115 [email protected] ")"
118 [email protected] "_" 116 [email protected] " "
119 [email protected] ")" 117 [email protected] "="
120 [email protected] " " 118 [email protected] " "
121 [email protected] "=" 119 [email protected]
122 [email protected] " " 120 [email protected]
123 [email protected] 121 [email protected]
124 [email protected] 122 [email protected]
125 [email protected] 123 [email protected] "None"
126 [email protected] 124 [email protected] " "
127 [email protected] "None" 125 [email protected]
128 [email protected] " " 126 [email protected] "{"
129 [email protected] 127 [email protected] "}"
130 [email protected] 128 [email protected] "\n "
131 [email protected] "{" 129 [email protected]
132 [email protected] "}" 130 [email protected]
133 [email protected] "\n " 131 [email protected] "while"
134 [email protected] 132 [email protected] " "
135 [email protected] 133 [email protected]
136 [email protected] "while" 134 [email protected] "let"
137 [email protected] " " 135 [email protected] " "
138 [email protected] 136 [email protected]
139 [email protected] "let" 137 [email protected]
140 [email protected] " " 138 [email protected]
141 [email protected] 139 [email protected]
142 [email protected] 140 [email protected]
143 [email protected] 141 [email protected] "Some"
144 [email protected] 142 [email protected] "("
145 [email protected] 143 [email protected]
146 [email protected] "Some" 144 [email protected] "_"
147 [email protected] "(" 145 [email protected] ")"
148 [email protected] 146 [email protected] " "
149 [email protected] "_" 147 [email protected] "|"
150 [email protected] ")" 148 [email protected] " "
151 [email protected] " " 149 [email protected]
152 [email protected] "|" 150 [email protected]
153 [email protected] " " 151 [email protected]
154 [email protected] 152 [email protected]
155 [email protected] 153 [email protected] "Some"
156 [email protected] 154 [email protected] "("
157 [email protected] 155 [email protected]
158 [email protected] "Some" 156 [email protected] "_"
159 [email protected] "(" 157 [email protected] ")"
160 [email protected] 158 [email protected] " "
161 [email protected] "_" 159 [email protected] "="
162 [email protected] ")" 160 [email protected] " "
163 [email protected] " " 161 [email protected]
164 [email protected] "=" 162 [email protected]
165 [email protected] " " 163 [email protected]
166 [email protected] 164 [email protected]
167 [email protected] 165 [email protected] "None"
168 [email protected] 166 [email protected] " "
169 [email protected] 167 [email protected]
170 [email protected] "None" 168 [email protected] "{"
171 [email protected] " " 169 [email protected] "}"
172 [email protected] 170 [email protected] "\n "
173 [email protected] 171 [email protected]
174 [email protected] "{" 172 [email protected] "while"
175 [email protected] "}" 173 [email protected] " "
176 [email protected] "\n " 174 [email protected]
177 [email protected] 175 [email protected] "let"
178 [email protected] "while" 176 [email protected] " "
179 [email protected] " " 177 [email protected] "|"
180 [email protected] 178 [email protected] " "
181 [email protected] "let" 179 [email protected]
182 [email protected] " " 180 [email protected]
183 [email protected] "|" 181 [email protected]
184 [email protected] " " 182 [email protected]
185 [email protected] 183 [email protected] "Some"
186 [email protected] 184 [email protected] "("
187 [email protected] 185 [email protected]
188 [email protected] 186 [email protected] "_"
189 [email protected] "Some" 187 [email protected] ")"
190 [email protected] "(" 188 [email protected] " "
191 [email protected] 189 [email protected] "="
192 [email protected] "_" 190 [email protected] " "
193 [email protected] ")" 191 [email protected]
194 [email protected] " " 192 [email protected]
195 [email protected] "=" 193 [email protected]
196 [email protected] " " 194 [email protected]
197 [email protected] 195 [email protected] "None"
198 [email protected] 196 [email protected] " "
199 [email protected] 197 [email protected]
200 [email protected] 198 [email protected] "{"
201 [email protected] "None" 199 [email protected] "}"
202 [email protected] " " 200 [email protected] "\n"
203 [email protected] 201 [email protected] "}"
204 [email protected]
205 [email protected] "{"
206 [email protected] "}"
207 [email protected] "\n"
208 [email protected] "}"
209 [email protected] "\n" 202 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0031_while_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0031_while_expr.rast
index e5138a599..899b63aac 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0031_while_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0031_while_expr.rast
@@ -9,81 +9,76 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "while"
17 [email protected] "while" 17 [email protected] " "
18 [email protected] " " 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected] "true"
21 [email protected] "true" 21 [email protected] " "
22 [email protected] " " 22 [email protected]
23 [email protected] 23 [email protected] "{"
24 [email protected] 24 [email protected] "}"
25 [email protected] "{" 25 [email protected] ";"
26 [email protected] "}" 26 [email protected] "\n "
27 [email protected] ";" 27 [email protected]
28 [email protected] "\n " 28 [email protected]
29 [email protected] 29 [email protected] "while"
30 [email protected] 30 [email protected] " "
31 [email protected] "while" 31 [email protected]
32 [email protected] " " 32 [email protected] "let"
33 [email protected] 33 [email protected] " "
34 [email protected] "let" 34 [email protected]
35 [email protected] " " 35 [email protected]
36 [email protected] 36 [email protected]
37 [email protected] 37 [email protected]
38 [email protected] 38 [email protected] "Some"
39 [email protected] 39 [email protected] "("
40 [email protected] "Some" 40 [email protected]
41 [email protected] "(" 41 [email protected]
42 [email protected] 42 [email protected] "x"
43 [email protected] 43 [email protected] ")"
44 [email protected] "x" 44 [email protected] " "
45 [email protected] ")" 45 [email protected] "="
46 [email protected] " " 46 [email protected] " "
47 [email protected] "=" 47 [email protected]
48 [email protected] " " 48 [email protected]
49 [email protected] 49 [email protected]
50 [email protected] 50 [email protected]
51 [email protected] 51 [email protected]
52 [email protected] 52 [email protected] "it"
53 [email protected] 53 [email protected] "."
54 [email protected] "it" 54 [email protected]
55 [email protected] "." 55 [email protected] "next"
56 [email protected] 56 [email protected]
57 [email protected] "next" 57 [email protected] "("
58 [email protected] 58 [email protected] ")"
59 [email protected] "(" 59 [email protected] " "
60 [email protected] ")" 60 [email protected]
61 [email protected] " " 61 [email protected] "{"
62 [email protected] 62 [email protected] "}"
63 [email protected] 63 [email protected] ";"
64 [email protected] "{" 64 [email protected] "\n "
65 [email protected] "}" 65 [email protected]
66 [email protected] ";" 66 [email protected]
67 [email protected] "\n " 67 [email protected] "while"
68 [email protected] 68 [email protected] " "
69 [email protected] 69 [email protected]
70 [email protected] "while" 70 [email protected]
71 [email protected] " " 71 [email protected] "{"
72 [email protected] 72 [email protected] " "
73 [email protected] 73 [email protected]
74 [email protected] 74 [email protected] "true"
75 [email protected] "{" 75 [email protected] " "
76 [email protected] " " 76 [email protected] "}"
77 [email protected] 77 [email protected] " "
78 [email protected] "true" 78 [email protected]
79 [email protected] " " 79 [email protected] "{"
80 [email protected] "}" 80 [email protected] "}"
81 [email protected] " " 81 [email protected] ";"
82 [email protected] 82 [email protected] "\n"
83 [email protected] 83 [email protected] "}"
84 [email protected] "{"
85 [email protected] "}"
86 [email protected] ";"
87 [email protected] "\n"
88 [email protected] "}"
89 [email protected] "\n" 84 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0034_break_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0034_break_expr.rast
index 52644da8f..e064aafaf 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0034_break_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0034_break_expr.rast
@@ -9,47 +9,45 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "loop"
16 [email protected] "loop" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "{"
19 [email protected] 19 [email protected] "\n "
20 [email protected] "{" 20 [email protected]
21 [email protected] "\n " 21 [email protected]
22 [email protected] 22 [email protected] "break"
23 [email protected] 23 [email protected] ";"
24 [email protected] "break" 24 [email protected] "\n "
25 [email protected] ";" 25 [email protected]
26 [email protected] "\n " 26 [email protected]
27 [email protected] 27 [email protected] "break"
28 [email protected] 28 [email protected] " "
29 [email protected] "break" 29 [email protected] "\'l"
30 [email protected] " " 30 [email protected] ";"
31 [email protected] "\'l" 31 [email protected] "\n "
32 [email protected] ";" 32 [email protected]
33 [email protected] "\n " 33 [email protected]
34 [email protected] 34 [email protected] "break"
35 [email protected] 35 [email protected] " "
36 [email protected] "break" 36 [email protected]
37 [email protected] " " 37 [email protected] "92"
38 [email protected] 38 [email protected] ";"
39 [email protected] "92" 39 [email protected] "\n "
40 [email protected] ";" 40 [email protected]
41 [email protected] "\n " 41 [email protected]
42 [email protected] 42 [email protected] "break"
43 [email protected] 43 [email protected] " "
44 [email protected] "break" 44 [email protected] "\'l"
45 [email protected] " " 45 [email protected] " "
46 [email protected] "\'l" 46 [email protected]
47 [email protected] " " 47 [email protected] "92"
48 [email protected] 48 [email protected] ";"
49 [email protected] "92" 49 [email protected] "\n "
50 [email protected] ";" 50 [email protected] "}"
51 [email protected] "\n " 51 [email protected] "\n"
52 [email protected] "}" 52 [email protected] "}"
53 [email protected] "\n"
54 [email protected] "}"
55 [email protected] "\n" 53 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0036_unsafe_extern_fn.rast b/crates/ra_syntax/test_data/parser/inline/ok/0036_unsafe_extern_fn.rast
index f061c0cac..cf5825593 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0036_unsafe_extern_fn.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0036_unsafe_extern_fn.rast
@@ -16,7 +16,6 @@ [email protected]
16 [email protected] ")" 16 [email protected] ")"
17 [email protected] " " 17 [email protected] " "
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected] "{"
20 [email protected] "{" 20 [email protected] "}"
21 [email protected] "}"
22 [email protected] "\n" 21 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0037_qual_paths.rast b/crates/ra_syntax/test_data/parser/inline/ok/0037_qual_paths.rast
index e25fc8c3e..fbd90bc0f 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0037_qual_paths.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0037_qual_paths.rast
@@ -42,38 +42,37 @@ [email protected]
42 [email protected] ")" 42 [email protected] ")"
43 [email protected] " " 43 [email protected] " "
44 [email protected] 44 [email protected]
45 [email protected] 45 [email protected] "{"
46 [email protected] "{" 46 [email protected] " "
47 [email protected] " " 47 [email protected]
48 [email protected] 48 [email protected]
49 [email protected] 49 [email protected]
50 [email protected] 50 [email protected]
51 [email protected] 51 [email protected]
52 [email protected] 52 [email protected]
53 [email protected] 53 [email protected] "<"
54 [email protected] "<" 54 [email protected]
55 [email protected] 55 [email protected]
56 [email protected] 56 [email protected]
57 [email protected] 57 [email protected]
58 [email protected] 58 [email protected] "usize"
59 [email protected] "usize" 59 [email protected] " "
60 [email protected] " " 60 [email protected] "as"
61 [email protected] "as" 61 [email protected] " "
62 [email protected] " " 62 [email protected]
63 [email protected] 63 [email protected]
64 [email protected] 64 [email protected]
65 [email protected] 65 [email protected]
66 [email protected] 66 [email protected] "Default"
67 [email protected] "Default" 67 [email protected] ">"
68 [email protected] ">" 68 [email protected] "::"
69 [email protected] "::" 69 [email protected]
70 [email protected] 70 [email protected]
71 [email protected] 71 [email protected] "default"
72 [email protected] "default" 72 [email protected]
73 [email protected] 73 [email protected] "("
74 [email protected] "(" 74 [email protected] ")"
75 [email protected] ")" 75 [email protected] ";"
76 [email protected] ";" 76 [email protected] " "
77 [email protected] " " 77 [email protected] "}"
78 [email protected] "}"
79 [email protected] "\n" 78 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0038_full_range_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0038_full_range_expr.rast
index a1238d610..a767f145d 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0038_full_range_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0038_full_range_expr.rast
@@ -9,21 +9,20 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] " "
14 [email protected] " " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected] "xs"
21 [email protected] "xs" 21 [email protected] "["
22 [email protected] "[" 22 [email protected]
23 [email protected] 23 [email protected] ".."
24 [email protected] ".." 24 [email protected] "]"
25 [email protected] "]" 25 [email protected] ";"
26 [email protected] ";" 26 [email protected] " "
27 [email protected] " " 27 [email protected] "}"
28 [email protected] "}"
29 [email protected] "\n" 28 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0039_type_arg.rast b/crates/ra_syntax/test_data/parser/inline/ok/0039_type_arg.rast
index 69e5fe4bc..e92ea2bf2 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0039_type_arg.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0039_type_arg.rast
@@ -32,13 +32,12 @@ [email protected]
32 [email protected] " " 32 [email protected] " "
33 [email protected] 33 [email protected]
34 [email protected] 34 [email protected]
35 [email protected] 35 [email protected] "{"
36 [email protected] "{" 36 [email protected] " "
37 [email protected] " " 37 [email protected]
38 [email protected] 38 [email protected] "2"
39 [email protected] "2" 39 [email protected] " "
40 [email protected] " " 40 [email protected] "}"
41 [email protected] "}"
42 [email protected] "," 41 [email protected] ","
43 [email protected] " " 42 [email protected] " "
44 [email protected] 43 [email protected]
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0040_crate_keyword_vis.rast b/crates/ra_syntax/test_data/parser/inline/ok/0040_crate_keyword_vis.rast
index 1a98e2610..aa582516a 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0040_crate_keyword_vis.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0040_crate_keyword_vis.rast
@@ -12,10 +12,9 @@ [email protected]
12 [email protected] ")" 12 [email protected] ")"
13 [email protected] " " 13 [email protected] " "
14 [email protected] 14 [email protected]
15 [email protected] 15 [email protected] "{"
16 [email protected] "{" 16 [email protected] " "
17 [email protected] " " 17 [email protected] "}"
18 [email protected] "}"
19 [email protected] "\n" 18 [email protected] "\n"
20 [email protected] 19 [email protected]
21 [email protected] "struct" 20 [email protected] "struct"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0042_call_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0042_call_expr.rast
index bbf6dc494..0c1c6e877 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0042_call_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0042_call_expr.rast
@@ -9,140 +9,139 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "_"
19 [email protected] "_" 19 [email protected] " "
20 [email protected] " " 20 [email protected] "="
21 [email protected] "=" 21 [email protected] " "
22 [email protected] " " 22 [email protected]
23 [email protected] 23 [email protected]
24 [email protected] 24 [email protected]
25 [email protected] 25 [email protected]
26 [email protected] 26 [email protected]
27 [email protected] 27 [email protected] "f"
28 [email protected] "f" 28 [email protected]
29 [email protected] 29 [email protected] "("
30 [email protected] "(" 30 [email protected] ")"
31 [email protected] ")" 31 [email protected] ";"
32 [email protected] ";" 32 [email protected] "\n "
33 [email protected] "\n " 33 [email protected]
34 [email protected] 34 [email protected] "let"
35 [email protected] "let" 35 [email protected] " "
36 [email protected] " " 36 [email protected]
37 [email protected] 37 [email protected] "_"
38 [email protected] "_" 38 [email protected] " "
39 [email protected] " " 39 [email protected] "="
40 [email protected] "=" 40 [email protected] " "
41 [email protected] " " 41 [email protected]
42 [email protected] 42 [email protected]
43 [email protected] 43 [email protected]
44 [email protected] 44 [email protected]
45 [email protected] 45 [email protected]
46 [email protected] 46 [email protected]
47 [email protected] 47 [email protected]
48 [email protected] 48 [email protected] "f"
49 [email protected] "f" 49 [email protected]
50 [email protected] 50 [email protected] "("
51 [email protected] "(" 51 [email protected] ")"
52 [email protected] ")" 52 [email protected]
53 [email protected] 53 [email protected] "("
54 [email protected] "(" 54 [email protected]
55 [email protected] 55 [email protected] "1"
56 [email protected] "1" 56 [email protected] ")"
57 [email protected] ")" 57 [email protected]
58 [email protected] 58 [email protected] "("
59 [email protected] "(" 59 [email protected]
60 [email protected] 60 [email protected] "1"
61 [email protected] "1" 61 [email protected] ","
62 [email protected] "," 62 [email protected] " "
63 [email protected] " " 63 [email protected]
64 [email protected] 64 [email protected] "2"
65 [email protected] "2" 65 [email protected] ","
66 [email protected] "," 66 [email protected] ")"
67 [email protected] ")" 67 [email protected] ";"
68 [email protected] ";" 68 [email protected] "\n "
69 [email protected] "\n " 69 [email protected]
70 [email protected] 70 [email protected] "let"
71 [email protected] "let" 71 [email protected] " "
72 [email protected] " " 72 [email protected]
73 [email protected] 73 [email protected] "_"
74 [email protected] "_" 74 [email protected] " "
75 [email protected] " " 75 [email protected] "="
76 [email protected] "=" 76 [email protected] " "
77 [email protected] " " 77 [email protected]
78 [email protected] 78 [email protected]
79 [email protected] 79 [email protected]
80 [email protected] 80 [email protected]
81 [email protected] 81 [email protected]
82 [email protected] 82 [email protected] "f"
83 [email protected] "f" 83 [email protected]
84 [email protected] 84 [email protected] "("
85 [email protected] "(" 85 [email protected]
86 [email protected] 86 [email protected]
87 [email protected] 87 [email protected]
88 [email protected] 88 [email protected]
89 [email protected] 89 [email protected]
90 [email protected] 90 [email protected] "<"
91 [email protected] "<" 91 [email protected]
92 [email protected] 92 [email protected]
93 [email protected] 93 [email protected]
94 [email protected] 94 [email protected]
95 [email protected] 95 [email protected] "Foo"
96 [email protected] "Foo" 96 [email protected] ">"
97 [email protected] ">" 97 [email protected] "::"
98 [email protected] "::" 98 [email protected]
99 [email protected] 99 [email protected]
100 [email protected] 100 [email protected] "func"
101 [email protected] "func" 101 [email protected]
102 [email protected] 102 [email protected] "("
103 [email protected] "(" 103 [email protected] ")"
104 [email protected] ")" 104 [email protected] ")"
105 [email protected] ")" 105 [email protected] ";"
106 [email protected] ";" 106 [email protected] "\n "
107 [email protected] "\n " 107 [email protected]
108 [email protected] 108 [email protected]
109 [email protected] 109 [email protected]
110 [email protected] 110 [email protected]
111 [email protected] 111 [email protected]
112 [email protected] 112 [email protected]
113 [email protected] 113 [email protected] "f"
114 [email protected] "f" 114 [email protected]
115 [email protected] 115 [email protected] "("
116 [email protected] "(" 116 [email protected]
117 [email protected] 117 [email protected]
118 [email protected] 118 [email protected]
119 [email protected] 119 [email protected]
120 [email protected] 120 [email protected]
121 [email protected] 121 [email protected] "<"
122 [email protected] "<" 122 [email protected]
123 [email protected] 123 [email protected]
124 [email protected] 124 [email protected]
125 [email protected] 125 [email protected]
126 [email protected] 126 [email protected] "Foo"
127 [email protected] "Foo" 127 [email protected] " "
128 [email protected] " " 128 [email protected] "as"
129 [email protected] "as" 129 [email protected] " "
130 [email protected] " " 130 [email protected]
131 [email protected] 131 [email protected]
132 [email protected] 132 [email protected]
133 [email protected] 133 [email protected]
134 [email protected] 134 [email protected] "Trait"
135 [email protected] "Trait" 135 [email protected] ">"
136 [email protected] ">" 136 [email protected] "::"
137 [email protected] "::" 137 [email protected]
138 [email protected] 138 [email protected]
139 [email protected] 139 [email protected] "func"
140 [email protected] "func" 140 [email protected]
141 [email protected] 141 [email protected] "("
142 [email protected] "(" 142 [email protected] ")"
143 [email protected] ")" 143 [email protected] ")"
144 [email protected] ")" 144 [email protected] ";"
145 [email protected] ";" 145 [email protected] "\n"
146 [email protected] "\n" 146 [email protected] "}"
147 [email protected] "}"
148 [email protected] "\n" 147 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0044_block_items.rast b/crates/ra_syntax/test_data/parser/inline/ok/0044_block_items.rast
index a454dfc3a..c23b3b67c 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0044_block_items.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0044_block_items.rast
@@ -9,22 +9,20 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] " "
14 [email protected] " " 14 [email protected]
15 [email protected] 15 [email protected] "fn"
16 [email protected] "fn" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "b"
19 [email protected] "b" 19 [email protected]
20 [email protected] 20 [email protected] "("
21 [email protected] "(" 21 [email protected] ")"
22 [email protected] ")" 22 [email protected] " "
23 [email protected] " " 23 [email protected]
24 [email protected] 24 [email protected] "{"
25 [email protected] 25 [email protected] "}"
26 [email protected] "{" 26 [email protected] " "
27 [email protected] "}" 27 [email protected] "}"
28 [email protected] " "
29 [email protected] "}"
30 [email protected] "\n" 28 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0045_param_list_opt_patterns.rast b/crates/ra_syntax/test_data/parser/inline/ok/0045_param_list_opt_patterns.rast
index 2a50f796c..9ca2165ba 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0045_param_list_opt_patterns.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0045_param_list_opt_patterns.rast
@@ -41,7 +41,6 @@ [email protected]
41 [email protected] "(" 41 [email protected] "("
42 [email protected] ")" 42 [email protected] ")"
43 [email protected] 43 [email protected]
44 [email protected] 44 [email protected] "{"
45 [email protected] "{" 45 [email protected] "}"
46 [email protected] "}"
47 [email protected] "\n" 46 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0048_path_type_with_bounds.rast b/crates/ra_syntax/test_data/parser/inline/ok/0048_path_type_with_bounds.rast
index 7f87e05ec..b209f67f8 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0048_path_type_with_bounds.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0048_path_type_with_bounds.rast
@@ -35,9 +35,8 @@ [email protected]
35 [email protected] ">" 35 [email protected] ">"
36 [email protected] " " 36 [email protected] " "
37 [email protected] 37 [email protected]
38 [email protected] 38 [email protected] "{"
39 [email protected] "{" 39 [email protected] "}"
40 [email protected] "}"
41 [email protected] "\n" 40 [email protected] "\n"
42 [email protected] 41 [email protected]
43 [email protected] "fn" 42 [email protected] "fn"
@@ -77,7 +76,6 @@ [email protected]
77 [email protected] ">" 76 [email protected] ">"
78 [email protected] " " 77 [email protected] " "
79 [email protected] 78 [email protected]
80 [email protected] 79 [email protected] "{"
81 [email protected] "{" 80 [email protected] "}"
82 [email protected] "}"
83 [email protected] "\n" 81 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0053_path_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0053_path_expr.rast
index 5f846177e..70232a3b2 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0053_path_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0053_path_expr.rast
@@ -9,88 +9,87 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "_"
19 [email protected] "_" 19 [email protected] " "
20 [email protected] " " 20 [email protected] "="
21 [email protected] "=" 21 [email protected] " "
22 [email protected] " " 22 [email protected]
23 [email protected] 23 [email protected]
24 [email protected] 24 [email protected]
25 [email protected] 25 [email protected]
26 [email protected] 26 [email protected] "a"
27 [email protected] "a" 27 [email protected] ";"
28 [email protected] ";" 28 [email protected] "\n "
29 [email protected] "\n " 29 [email protected]
30 [email protected] 30 [email protected] "let"
31 [email protected] "let" 31 [email protected] " "
32 [email protected] " " 32 [email protected]
33 [email protected] 33 [email protected] "_"
34 [email protected] "_" 34 [email protected] " "
35 [email protected] " " 35 [email protected] "="
36 [email protected] "=" 36 [email protected] " "
37 [email protected] " " 37 [email protected]
38 [email protected] 38 [email protected]
39 [email protected] 39 [email protected]
40 [email protected] 40 [email protected]
41 [email protected] 41 [email protected]
42 [email protected] 42 [email protected] "a"
43 [email protected] "a" 43 [email protected] "::"
44 [email protected] "::" 44 [email protected]
45 [email protected] 45 [email protected]
46 [email protected] 46 [email protected] "b"
47 [email protected] "b" 47 [email protected] ";"
48 [email protected] ";" 48 [email protected] "\n "
49 [email protected] "\n " 49 [email protected]
50 [email protected] 50 [email protected] "let"
51 [email protected] "let" 51 [email protected] " "
52 [email protected] " " 52 [email protected]
53 [email protected] 53 [email protected] "_"
54 [email protected] "_" 54 [email protected] " "
55 [email protected] " " 55 [email protected] "="
56 [email protected] "=" 56 [email protected] " "
57 [email protected] " " 57 [email protected]
58 [email protected] 58 [email protected]
59 [email protected] 59 [email protected]
60 [email protected] 60 [email protected] "::"
61 [email protected] "::" 61 [email protected]
62 [email protected] 62 [email protected] "a"
63 [email protected] "a" 63 [email protected]
64 [email protected] 64 [email protected] "::"
65 [email protected] "::" 65 [email protected] "<"
66 [email protected] "<" 66 [email protected]
67 [email protected] 67 [email protected]
68 [email protected] 68 [email protected]
69 [email protected] 69 [email protected]
70 [email protected] 70 [email protected]
71 [email protected] 71 [email protected] "b"
72 [email protected] "b" 72 [email protected] ">"
73 [email protected] ">" 73 [email protected] ";"
74 [email protected] ";" 74 [email protected] "\n "
75 [email protected] "\n " 75 [email protected]
76 [email protected] 76 [email protected] "let"
77 [email protected] "let" 77 [email protected] " "
78 [email protected] " " 78 [email protected]
79 [email protected] 79 [email protected] "_"
80 [email protected] "_" 80 [email protected] " "
81 [email protected] " " 81 [email protected] "="
82 [email protected] "=" 82 [email protected] " "
83 [email protected] " " 83 [email protected]
84 [email protected] 84 [email protected]
85 [email protected] 85 [email protected]
86 [email protected] 86 [email protected]
87 [email protected] 87 [email protected] "format"
88 [email protected] "format" 88 [email protected] "!"
89 [email protected] "!" 89 [email protected]
90 [email protected] 90 [email protected] "("
91 [email protected] "(" 91 [email protected] ")"
92 [email protected] ")" 92 [email protected] ";"
93 [email protected] ";" 93 [email protected] "\n"
94 [email protected] "\n" 94 [email protected] "}"
95 [email protected] "}"
96 [email protected] "\n" 95 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0055_literal_pattern.rast b/crates/ra_syntax/test_data/parser/inline/ok/0055_literal_pattern.rast
index d9310e82e..03c52525e 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0055_literal_pattern.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0055_literal_pattern.rast
@@ -9,69 +9,68 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "match"
16 [email protected] "match" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "("
19 [email protected] "(" 19 [email protected] ")"
20 [email protected] ")" 20 [email protected] " "
21 [email protected] " " 21 [email protected]
22 [email protected] 22 [email protected] "{"
23 [email protected] "{" 23 [email protected] "\n "
24 [email protected] "\n " 24 [email protected]
25 [email protected] 25 [email protected]
26 [email protected] 26 [email protected] "-"
27 [email protected] "-" 27 [email protected]
28 [email protected] 28 [email protected] "1"
29 [email protected] "1" 29 [email protected] " "
30 [email protected] " " 30 [email protected] "=>"
31 [email protected] "=>" 31 [email protected] " "
32 [email protected] " " 32 [email protected]
33 [email protected] 33 [email protected] "("
34 [email protected] "(" 34 [email protected] ")"
35 [email protected] ")" 35 [email protected] ","
36 [email protected] "," 36 [email protected] "\n "
37 [email protected] "\n " 37 [email protected]
38 [email protected] 38 [email protected]
39 [email protected] 39 [email protected]
40 [email protected] 40 [email protected] "92"
41 [email protected] "92" 41 [email protected] " "
42 [email protected] " " 42 [email protected] "=>"
43 [email protected] "=>" 43 [email protected] " "
44 [email protected] " " 44 [email protected]
45 [email protected] 45 [email protected] "("
46 [email protected] "(" 46 [email protected] ")"
47 [email protected] ")" 47 [email protected] ","
48 [email protected] "," 48 [email protected] "\n "
49 [email protected] "\n " 49 [email protected]
50 [email protected] 50 [email protected]
51 [email protected] 51 [email protected]
52 [email protected] 52 [email protected] "\'c\'"
53 [email protected] "\'c\'" 53 [email protected] " "
54 [email protected] " " 54 [email protected] "=>"
55 [email protected] "=>" 55 [email protected] " "
56 [email protected] " " 56 [email protected]
57 [email protected] 57 [email protected] "("
58 [email protected] "(" 58 [email protected] ")"
59 [email protected] ")" 59 [email protected] ","
60 [email protected] "," 60 [email protected] "\n "
61 [email protected] "\n " 61 [email protected]
62 [email protected] 62 [email protected]
63 [email protected] 63 [email protected]
64 [email protected] 64 [email protected] "\"hello\""
65 [email protected] "\"hello\"" 65 [email protected] " "
66 [email protected] " " 66 [email protected] "=>"
67 [email protected] "=>" 67 [email protected] " "
68 [email protected] " " 68 [email protected]
69 [email protected] 69 [email protected] "("
70 [email protected] "(" 70 [email protected] ")"
71 [email protected] ")" 71 [email protected] ","
72 [email protected] "," 72 [email protected] "\n "
73 [email protected] "\n " 73 [email protected] "}"
74 [email protected] "}" 74 [email protected] "\n"
75 [email protected] "\n" 75 [email protected] "}"
76 [email protected] "}"
77 [email protected] "\n" 76 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0056_where_clause.rast b/crates/ra_syntax/test_data/parser/inline/ok/0056_where_clause.rast
index 2e727c1ef..24f89b83f 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0056_where_clause.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0056_where_clause.rast
@@ -105,7 +105,6 @@ [email protected]
105 [email protected] "\'a" 105 [email protected] "\'a"
106 [email protected] "\n" 106 [email protected] "\n"
107 [email protected] 107 [email protected]
108 [email protected] 108 [email protected] "{"
109 [email protected] "{" 109 [email protected] "}"
110 [email protected] "}"
111 [email protected] "\n" 110 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0057_const_fn.rast b/crates/ra_syntax/test_data/parser/inline/ok/0057_const_fn.rast
index c1e58f9bf..bb43d1eaf 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0057_const_fn.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0057_const_fn.rast
@@ -11,7 +11,6 @@ [email protected]
11 [email protected] ")" 11 [email protected] ")"
12 [email protected] " " 12 [email protected] " "
13 [email protected] 13 [email protected]
14 [email protected] 14 [email protected] "{"
15 [email protected] "{" 15 [email protected] "}"
16 [email protected] "}"
17 [email protected] "\n" 16 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0058_range_pat.rast b/crates/ra_syntax/test_data/parser/inline/ok/0058_range_pat.rast
index 9bdf2379f..8bd94a868 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0058_range_pat.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0058_range_pat.rast
@@ -9,75 +9,74 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "match"
16 [email protected] "match" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "92"
19 [email protected] "92" 19 [email protected] " "
20 [email protected] " " 20 [email protected]
21 [email protected] 21 [email protected] "{"
22 [email protected] "{" 22 [email protected] "\n "
23 [email protected] "\n " 23 [email protected]
24 [email protected] 24 [email protected]
25 [email protected] 25 [email protected]
26 [email protected] 26 [email protected]
27 [email protected] 27 [email protected] "0"
28 [email protected] "0" 28 [email protected] " "
29 [email protected] " " 29 [email protected] "..."
30 [email protected] "..." 30 [email protected] " "
31 [email protected] " " 31 [email protected]
32 [email protected] 32 [email protected]
33 [email protected] 33 [email protected] "100"
34 [email protected] "100" 34 [email protected] " "
35 [email protected] " " 35 [email protected] "=>"
36 [email protected] "=>" 36 [email protected] " "
37 [email protected] " " 37 [email protected]
38 [email protected] 38 [email protected] "("
39 [email protected] "(" 39 [email protected] ")"
40 [email protected] ")" 40 [email protected] ","
41 [email protected] "," 41 [email protected] "\n "
42 [email protected] "\n " 42 [email protected]
43 [email protected] 43 [email protected]
44 [email protected] 44 [email protected]
45 [email protected] 45 [email protected]
46 [email protected] 46 [email protected] "101"
47 [email protected] "101" 47 [email protected] " "
48 [email protected] " " 48 [email protected] "..="
49 [email protected] "..=" 49 [email protected] " "
50 [email protected] " " 50 [email protected]
51 [email protected] 51 [email protected]
52 [email protected] 52 [email protected] "200"
53 [email protected] "200" 53 [email protected] " "
54 [email protected] " " 54 [email protected] "=>"
55 [email protected] "=>" 55 [email protected] " "
56 [email protected] " " 56 [email protected]
57 [email protected] 57 [email protected] "("
58 [email protected] "(" 58 [email protected] ")"
59 [email protected] ")" 59 [email protected] ","
60 [email protected] "," 60 [email protected] "\n "
61 [email protected] "\n " 61 [email protected]
62 [email protected] 62 [email protected]
63 [email protected] 63 [email protected]
64 [email protected] 64 [email protected]
65 [email protected] 65 [email protected] "200"
66 [email protected] "200" 66 [email protected] " "
67 [email protected] " " 67 [email protected] ".."
68 [email protected] ".." 68 [email protected] " "
69 [email protected] " " 69 [email protected]
70 [email protected] 70 [email protected]
71 [email protected] 71 [email protected] "301"
72 [email protected] "301" 72 [email protected] "=>"
73 [email protected] "=>" 73 [email protected] " "
74 [email protected] " " 74 [email protected]
75 [email protected] 75 [email protected] "("
76 [email protected] "(" 76 [email protected] ")"
77 [email protected] ")" 77 [email protected] ","
78 [email protected] "," 78 [email protected] "\n "
79 [email protected] "\n " 79 [email protected] "}"
80 [email protected] "}" 80 [email protected] "\n"
81 [email protected] "\n" 81 [email protected] "}"
82 [email protected] "}"
83 [email protected] "\n" 82 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0059_match_arms_commas.rast b/crates/ra_syntax/test_data/parser/inline/ok/0059_match_arms_commas.rast
index e9ca92364..9210f155c 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0059_match_arms_commas.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0059_match_arms_commas.rast
@@ -9,52 +9,50 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "match"
16 [email protected] "match" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "("
19 [email protected] "(" 19 [email protected] ")"
20 [email protected] ")" 20 [email protected] " "
21 [email protected] " " 21 [email protected]
22 [email protected] 22 [email protected] "{"
23 [email protected] "{" 23 [email protected] "\n "
24 [email protected] "\n " 24 [email protected]
25 [email protected] 25 [email protected]
26 [email protected] 26 [email protected] "_"
27 [email protected] "_" 27 [email protected] " "
28 [email protected] " " 28 [email protected] "=>"
29 [email protected] "=>" 29 [email protected] " "
30 [email protected] " " 30 [email protected]
31 [email protected] 31 [email protected] "("
32 [email protected] "(" 32 [email protected] ")"
33 [email protected] ")" 33 [email protected] ","
34 [email protected] "," 34 [email protected] "\n "
35 [email protected] "\n " 35 [email protected]
36 [email protected] 36 [email protected]
37 [email protected] 37 [email protected] "_"
38 [email protected] "_" 38 [email protected] " "
39 [email protected] " " 39 [email protected] "=>"
40 [email protected] "=>" 40 [email protected] " "
41 [email protected] " " 41 [email protected]
42 [email protected] 42 [email protected] "{"
43 [email protected] 43 [email protected] "}"
44 [email protected] "{" 44 [email protected] "\n "
45 [email protected] "}" 45 [email protected]
46 [email protected] "\n " 46 [email protected]
47 [email protected] 47 [email protected] "_"
48 [email protected] 48 [email protected] " "
49 [email protected] "_" 49 [email protected] "=>"
50 [email protected] " " 50 [email protected] " "
51 [email protected] "=>" 51 [email protected]
52 [email protected] " " 52 [email protected] "("
53 [email protected] 53 [email protected] ")"
54 [email protected] "(" 54 [email protected] "\n "
55 [email protected] ")" 55 [email protected] "}"
56 [email protected] "\n " 56 [email protected] "\n"
57 [email protected] "}" 57 [email protected] "}"
58 [email protected] "\n"
59 [email protected] "}"
60 [email protected] "\n" 58 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0061_record_lit.rast b/crates/ra_syntax/test_data/parser/inline/ok/0061_record_lit.rast
index 15d332938..850465d82 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0061_record_lit.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0061_record_lit.rast
@@ -9,117 +9,116 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected] "S"
20 [email protected] "S" 20 [email protected] " "
21 [email protected] " " 21 [email protected]
22 [email protected] 22 [email protected] "{"
23 [email protected] "{" 23 [email protected] "}"
24 [email protected] "}" 24 [email protected] ";"
25 [email protected] ";" 25 [email protected] "\n "
26 [email protected] "\n " 26 [email protected]
27 [email protected] 27 [email protected]
28 [email protected] 28 [email protected]
29 [email protected] 29 [email protected]
30 [email protected] 30 [email protected]
31 [email protected] 31 [email protected] "S"
32 [email protected] "S" 32 [email protected] " "
33 [email protected] " " 33 [email protected]
34 [email protected] 34 [email protected] "{"
35 [email protected] "{" 35 [email protected] " "
36 [email protected] " " 36 [email protected]
37 [email protected] 37 [email protected]
38 [email protected] 38 [email protected]
39 [email protected] 39 [email protected]
40 [email protected] 40 [email protected]
41 [email protected] 41 [email protected] "x"
42 [email protected] "x" 42 [email protected] ","
43 [email protected] "," 43 [email protected] " "
44 [email protected] " " 44 [email protected]
45 [email protected] 45 [email protected]
46 [email protected] 46 [email protected] "y"
47 [email protected] "y" 47 [email protected] ":"
48 [email protected] ":" 48 [email protected] " "
49 [email protected] " " 49 [email protected]
50 [email protected] 50 [email protected] "32"
51 [email protected] "32" 51 [email protected] ","
52 [email protected] "," 52 [email protected] " "
53 [email protected] " " 53 [email protected] "}"
54 [email protected] "}" 54 [email protected] ";"
55 [email protected] ";" 55 [email protected] "\n "
56 [email protected] "\n " 56 [email protected]
57 [email protected] 57 [email protected]
58 [email protected] 58 [email protected]
59 [email protected] 59 [email protected]
60 [email protected] 60 [email protected]
61 [email protected] 61 [email protected] "S"
62 [email protected] "S" 62 [email protected] " "
63 [email protected] " " 63 [email protected]
64 [email protected] 64 [email protected] "{"
65 [email protected] "{" 65 [email protected] " "
66 [email protected] " " 66 [email protected]
67 [email protected] 67 [email protected]
68 [email protected] 68 [email protected]
69 [email protected] 69 [email protected]
70 [email protected] 70 [email protected]
71 [email protected] 71 [email protected] "x"
72 [email protected] "x" 72 [email protected] ","
73 [email protected] "," 73 [email protected] " "
74 [email protected] " " 74 [email protected]
75 [email protected] 75 [email protected]
76 [email protected] 76 [email protected] "y"
77 [email protected] "y" 77 [email protected] ":"
78 [email protected] ":" 78 [email protected] " "
79 [email protected] " " 79 [email protected]
80 [email protected] 80 [email protected] "32"
81 [email protected] "32" 81 [email protected] ","
82 [email protected] "," 82 [email protected] " "
83 [email protected] " " 83 [email protected] ".."
84 [email protected] ".." 84 [email protected]
85 [email protected] 85 [email protected]
86 [email protected] 86 [email protected]
87 [email protected] 87 [email protected]
88 [email protected] 88 [email protected]
89 [email protected] 89 [email protected]
90 [email protected] 90 [email protected] "Default"
91 [email protected] "Default" 91 [email protected] "::"
92 [email protected] "::" 92 [email protected]
93 [email protected] 93 [email protected]
94 [email protected] 94 [email protected] "default"
95 [email protected] "default" 95 [email protected]
96 [email protected] 96 [email protected] "("
97 [email protected] "(" 97 [email protected] ")"
98 [email protected] ")" 98 [email protected] " "
99 [email protected] " " 99 [email protected] "}"
100 [email protected] "}" 100 [email protected] ";"
101 [email protected] ";" 101 [email protected] "\n "
102 [email protected] "\n " 102 [email protected]
103 [email protected] 103 [email protected]
104 [email protected] 104 [email protected]
105 [email protected] 105 [email protected]
106 [email protected] 106 [email protected]
107 [email protected] 107 [email protected] "TupleStruct"
108 [email protected] "TupleStruct" 108 [email protected] " "
109 [email protected] " " 109 [email protected]
110 [email protected] 110 [email protected] "{"
111 [email protected] "{" 111 [email protected] " "
112 [email protected] " " 112 [email protected]
113 [email protected] 113 [email protected]
114 [email protected] 114 [email protected] "0"
115 [email protected] "0" 115 [email protected] ":"
116 [email protected] ":" 116 [email protected] " "
117 [email protected] " " 117 [email protected]
118 [email protected] 118 [email protected] "1"
119 [email protected] "1" 119 [email protected] " "
120 [email protected] " " 120 [email protected] "}"
121 [email protected] "}" 121 [email protected] ";"
122 [email protected] ";" 122 [email protected] "\n"
123 [email protected] "\n" 123 [email protected] "}"
124 [email protected] "}"
125 [email protected] "\n" 124 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0062_mod_contents.rast b/crates/ra_syntax/test_data/parser/inline/ok/0062_mod_contents.rast
index 3cce106e4..02656df31 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0062_mod_contents.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0062_mod_contents.rast
@@ -9,9 +9,8 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "}"
14 [email protected] "}"
15 [email protected] "\n" 14 [email protected] "\n"
16 [email protected] 15 [email protected]
17 [email protected] 16 [email protected]
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0064_if_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0064_if_expr.rast
index 5e1b4cc68..445d8d309 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0064_if_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0064_if_expr.rast
@@ -9,124 +9,113 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "if"
17 [email protected] "if" 17 [email protected] " "
18 [email protected] " " 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected] "true"
21 [email protected] "true" 21 [email protected] " "
22 [email protected] " " 22 [email protected]
23 [email protected] 23 [email protected] "{"
24 [email protected] 24 [email protected] "}"
25 [email protected] "{" 25 [email protected] ";"
26 [email protected] "}" 26 [email protected] "\n "
27 [email protected] ";" 27 [email protected]
28 [email protected] "\n " 28 [email protected]
29 [email protected] 29 [email protected] "if"
30 [email protected] 30 [email protected] " "
31 [email protected] "if" 31 [email protected]
32 [email protected] " " 32 [email protected]
33 [email protected] 33 [email protected] "true"
34 [email protected] 34 [email protected] " "
35 [email protected] "true" 35 [email protected]
36 [email protected] " " 36 [email protected] "{"
37 [email protected] 37 [email protected] "}"
38 [email protected] 38 [email protected] " "
39 [email protected] "{" 39 [email protected] "else"
40 [email protected] "}" 40 [email protected] " "
41 [email protected] " " 41 [email protected]
42 [email protected] "else" 42 [email protected] "{"
43 [email protected] " " 43 [email protected] "}"
44 [email protected] 44 [email protected] ";"
45 [email protected] 45 [email protected] "\n "
46 [email protected] "{" 46 [email protected]
47 [email protected] "}" 47 [email protected]
48 [email protected] ";" 48 [email protected] "if"
49 [email protected] "\n " 49 [email protected] " "
50 [email protected] 50 [email protected]
51 [email protected] 51 [email protected]
52 [email protected] "if" 52 [email protected] "true"
53 [email protected] " " 53 [email protected] " "
54 [email protected] 54 [email protected]
55 [email protected] 55 [email protected] "{"
56 [email protected] "true" 56 [email protected] "}"
57 [email protected] " " 57 [email protected] " "
58 [email protected] 58 [email protected] "else"
59 [email protected] 59 [email protected] " "
60 [email protected] "{" 60 [email protected]
61 [email protected] "}" 61 [email protected] "if"
62 [email protected] " " 62 [email protected] " "
63 [email protected] "else" 63 [email protected]
64 [email protected] " " 64 [email protected]
65 [email protected] 65 [email protected] "false"
66 [email protected] "if" 66 [email protected] " "
67 [email protected] " " 67 [email protected]
68 [email protected] 68 [email protected] "{"
69 [email protected] 69 [email protected] "}"
70 [email protected] "false" 70 [email protected] " "
71 [email protected] " " 71 [email protected] "else"
72 [email protected] 72 [email protected] " "
73 [email protected] 73 [email protected]
74 [email protected] "{" 74 [email protected] "{"
75 [email protected] "}" 75 [email protected] "}"
76 [email protected] " " 76 [email protected] ";"
77 [email protected] "else" 77 [email protected] "\n "
78 [email protected] " " 78 [email protected]
79 [email protected] 79 [email protected]
80 [email protected] 80 [email protected] "if"
81 [email protected] "{" 81 [email protected] " "
82 [email protected] "}" 82 [email protected]
83 [email protected] ";" 83 [email protected]
84 [email protected] "\n " 84 [email protected]
85 [email protected] 85 [email protected]
86 [email protected] 86 [email protected]
87 [email protected] "if" 87 [email protected] "S"
88 [email protected] " " 88 [email protected] " "
89 [email protected] 89 [email protected]
90 [email protected] 90 [email protected] "{"
91 [email protected] 91 [email protected] "}"
92 [email protected] 92 [email protected] ";"
93 [email protected] 93 [email protected] "\n "
94 [email protected] "S" 94 [email protected]
95 [email protected] " " 95 [email protected]
96 [email protected] 96 [email protected] "if"
97 [email protected] 97 [email protected] " "
98 [email protected] "{" 98 [email protected]
99 [email protected] "}" 99 [email protected]
100 [email protected] ";" 100 [email protected] "{"
101 [email protected] "\n " 101 [email protected] " "
102 [email protected] 102 [email protected]
103 [email protected] 103 [email protected] "true"
104 [email protected] "if" 104 [email protected] " "
105 [email protected] " " 105 [email protected] "}"
106 [email protected] 106 [email protected] " "
107 [email protected] 107 [email protected]
108 [email protected] 108 [email protected] "{"
109 [email protected] "{" 109 [email protected] " "
110 [email protected] " " 110 [email protected] "}"
111 [email protected] 111 [email protected] " "
112 [email protected] "true" 112 [email protected] "else"
113 [email protected] " " 113 [email protected] " "
114 [email protected] "}" 114 [email protected]
115 [email protected] " " 115 [email protected] "{"
116 [email protected] 116 [email protected] " "
117 [email protected] 117 [email protected] "}"
118 [email protected] "{" 118 [email protected] ";"
119 [email protected] " " 119 [email protected] "\n"
120 [email protected] "}" 120 [email protected] "}"
121 [email protected] " "
122 [email protected] "else"
123 [email protected] " "
124 [email protected]
125 [email protected]
126 [email protected] "{"
127 [email protected] " "
128 [email protected] "}"
129 [email protected] ";"
130 [email protected] "\n"
131 [email protected] "}"
132 [email protected] "\n" 121 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0066_match_arm.rast b/crates/ra_syntax/test_data/parser/inline/ok/0066_match_arm.rast
index 108e5c5cc..177bb5514 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0066_match_arm.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0066_match_arm.rast
@@ -9,144 +9,143 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "match"
17 [email protected] "match" 17 [email protected] " "
18 [email protected] " " 18 [email protected]
19 [email protected] 19 [email protected] "("
20 [email protected] "(" 20 [email protected] ")"
21 [email protected] ")" 21 [email protected] " "
22 [email protected] " " 22 [email protected]
23 [email protected] 23 [email protected] "{"
24 [email protected] "{" 24 [email protected] "\n "
25 [email protected] "\n " 25 [email protected]
26 [email protected] 26 [email protected]
27 [email protected] 27 [email protected] "_"
28 [email protected] "_" 28 [email protected] " "
29 [email protected] " " 29 [email protected] "=>"
30 [email protected] "=>" 30 [email protected] " "
31 [email protected] " " 31 [email protected]
32 [email protected] 32 [email protected] "("
33 [email protected] "(" 33 [email protected] ")"
34 [email protected] ")" 34 [email protected] ","
35 [email protected] "," 35 [email protected] "\n "
36 [email protected] "\n " 36 [email protected]
37 [email protected] 37 [email protected]
38 [email protected] 38 [email protected] "_"
39 [email protected] "_" 39 [email protected] " "
40 [email protected] " " 40 [email protected]
41 [email protected] 41 [email protected] "if"
42 [email protected] "if" 42 [email protected] " "
43 [email protected] " " 43 [email protected]
44 [email protected] 44 [email protected]
45 [email protected] 45 [email protected]
46 [email protected] 46 [email protected]
47 [email protected] 47 [email protected]
48 [email protected] 48 [email protected] "Test"
49 [email protected] "Test" 49 [email protected] " "
50 [email protected] " " 50 [email protected] ">"
51 [email protected] ">" 51 [email protected] " "
52 [email protected] " " 52 [email protected]
53 [email protected] 53 [email protected]
54 [email protected] 54 [email protected]
55 [email protected] 55 [email protected]
56 [email protected] 56 [email protected] "Test"
57 [email protected] "Test" 57 [email protected]
58 [email protected] 58 [email protected] "{"
59 [email protected] "{" 59 [email protected]
60 [email protected] 60 [email protected]
61 [email protected] 61 [email protected] "field"
62 [email protected] "field" 62 [email protected] ":"
63 [email protected] ":" 63 [email protected] " "
64 [email protected] " " 64 [email protected]
65 [email protected] 65 [email protected] "0"
66 [email protected] "0" 66 [email protected] "}"
67 [email protected] "}" 67 [email protected] " "
68 [email protected] " " 68 [email protected] "=>"
69 [email protected] "=>" 69 [email protected] " "
70 [email protected] " " 70 [email protected]
71 [email protected] 71 [email protected] "("
72 [email protected] "(" 72 [email protected] ")"
73 [email protected] ")" 73 [email protected] ","
74 [email protected] "," 74 [email protected] "\n "
75 [email protected] "\n " 75 [email protected]
76 [email protected] 76 [email protected]
77 [email protected] 77 [email protected]
78 [email protected] 78 [email protected]
79 [email protected] 79 [email protected] "X"
80 [email protected] "X" 80 [email protected] " "
81 [email protected] " " 81 [email protected] "|"
82 [email protected] "|" 82 [email protected] " "
83 [email protected] " " 83 [email protected]
84 [email protected] 84 [email protected]
85 [email protected] 85 [email protected] "Y"
86 [email protected] "Y" 86 [email protected] " "
87 [email protected] " " 87 [email protected]
88 [email protected] 88 [email protected] "if"
89 [email protected] "if" 89 [email protected] " "
90 [email protected] " " 90 [email protected]
91 [email protected] 91 [email protected]
92 [email protected] 92 [email protected]
93 [email protected] 93 [email protected]
94 [email protected] 94 [email protected] "Z"
95 [email protected] "Z" 95 [email protected] " "
96 [email protected] " " 96 [email protected] "=>"
97 [email protected] "=>" 97 [email protected] " "
98 [email protected] " " 98 [email protected]
99 [email protected] 99 [email protected] "("
100 [email protected] "(" 100 [email protected] ")"
101 [email protected] ")" 101 [email protected] ","
102 [email protected] "," 102 [email protected] "\n "
103 [email protected] "\n " 103 [email protected]
104 [email protected] 104 [email protected] "|"
105 [email protected] "|" 105 [email protected] " "
106 [email protected] " " 106 [email protected]
107 [email protected] 107 [email protected]
108 [email protected] 108 [email protected]
109 [email protected] 109 [email protected] "X"
110 [email protected] "X" 110 [email protected] " "
111 [email protected] " " 111 [email protected] "|"
112 [email protected] "|" 112 [email protected] " "
113 [email protected] " " 113 [email protected]
114 [email protected] 114 [email protected]
115 [email protected] 115 [email protected] "Y"
116 [email protected] "Y" 116 [email protected] " "
117 [email protected] " " 117 [email protected]
118 [email protected] 118 [email protected] "if"
119 [email protected] "if" 119 [email protected] " "
120 [email protected] " " 120 [email protected]
121 [email protected] 121 [email protected]
122 [email protected] 122 [email protected]
123 [email protected] 123 [email protected]
124 [email protected] 124 [email protected] "Z"
125 [email protected] "Z" 125 [email protected] " "
126 [email protected] " " 126 [email protected] "=>"
127 [email protected] "=>" 127 [email protected] " "
128 [email protected] " " 128 [email protected]
129 [email protected] 129 [email protected] "("
130 [email protected] "(" 130 [email protected] ")"
131 [email protected] ")" 131 [email protected] ","
132 [email protected] "," 132 [email protected] "\n "
133 [email protected] "\n " 133 [email protected]
134 [email protected] 134 [email protected] "|"
135 [email protected] "|" 135 [email protected] " "
136 [email protected] " " 136 [email protected]
137 [email protected] 137 [email protected]
138 [email protected] 138 [email protected] "X"
139 [email protected] "X" 139 [email protected] " "
140 [email protected] " " 140 [email protected] "=>"
141 [email protected] "=>" 141 [email protected] " "
142 [email protected] " " 142 [email protected]
143 [email protected] 143 [email protected] "("
144 [email protected] "(" 144 [email protected] ")"
145 [email protected] ")" 145 [email protected] ","
146 [email protected] "," 146 [email protected] "\n "
147 [email protected] "\n " 147 [email protected] "}"
148 [email protected] "}" 148 [email protected] ";"
149 [email protected] ";" 149 [email protected] "\n"
150 [email protected] "\n" 150 [email protected] "}"
151 [email protected] "}"
152 [email protected] "\n" 151 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0070_stmt_bin_expr_ambiguity.rast b/crates/ra_syntax/test_data/parser/inline/ok/0070_stmt_bin_expr_ambiguity.rast
index 1e888063e..f8ff7079b 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0070_stmt_bin_expr_ambiguity.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0070_stmt_bin_expr_ambiguity.rast
@@ -9,45 +9,42 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "_"
19 [email protected] "_" 19 [email protected] " "
20 [email protected] " " 20 [email protected] "="
21 [email protected] "=" 21 [email protected] " "
22 [email protected] " " 22 [email protected]
23 [email protected] 23 [email protected]
24 [email protected] 24 [email protected] "{"
25 [email protected] 25 [email protected]
26 [email protected] "{" 26 [email protected] "1"
27 [email protected] 27 [email protected] "}"
28 [email protected] "1" 28 [email protected] " "
29 [email protected] "}" 29 [email protected] "&"
30 [email protected] " " 30 [email protected] " "
31 [email protected] "&" 31 [email protected]
32 [email protected] " " 32 [email protected] "2"
33 [email protected] 33 [email protected] ";"
34 [email protected] "2" 34 [email protected] "\n "
35 [email protected] ";" 35 [email protected]
36 [email protected] "\n " 36 [email protected]
37 [email protected] 37 [email protected] "{"
38 [email protected] 38 [email protected]
39 [email protected] 39 [email protected] "1"
40 [email protected] "{" 40 [email protected] "}"
41 [email protected] 41 [email protected] " "
42 [email protected] "1" 42 [email protected]
43 [email protected] "}" 43 [email protected]
44 [email protected] " " 44 [email protected] "&"
45 [email protected] 45 [email protected]
46 [email protected] 46 [email protected] "2"
47 [email protected] "&" 47 [email protected] ";"
48 [email protected] 48 [email protected] "\n"
49 [email protected] "2" 49 [email protected] "}"
50 [email protected] ";"
51 [email protected] "\n"
52 [email protected] "}"
53 [email protected] "\n" 50 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0071_match_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0071_match_expr.rast
index 218b3ec9e..07b3d1435 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0071_match_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0071_match_expr.rast
@@ -9,88 +9,85 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "match"
17 [email protected] "match" 17 [email protected] " "
18 [email protected] " " 18 [email protected]
19 [email protected] 19 [email protected] "("
20 [email protected] "(" 20 [email protected] ")"
21 [email protected] ")" 21 [email protected] " "
22 [email protected] " " 22 [email protected]
23 [email protected] 23 [email protected] "{"
24 [email protected] "{" 24 [email protected] " "
25 [email protected] " " 25 [email protected] "}"
26 [email protected] "}" 26 [email protected] ";"
27 [email protected] ";" 27 [email protected] "\n "
28 [email protected] "\n " 28 [email protected]
29 [email protected] 29 [email protected]
30 [email protected] 30 [email protected] "match"
31 [email protected] "match" 31 [email protected] " "
32 [email protected] " " 32 [email protected]
33 [email protected] 33 [email protected]
34 [email protected] 34 [email protected]
35 [email protected] 35 [email protected]
36 [email protected] 36 [email protected] "S"
37 [email protected] "S" 37 [email protected] " "
38 [email protected] " " 38 [email protected]
39 [email protected] 39 [email protected] "{"
40 [email protected] "{" 40 [email protected] "}"
41 [email protected] "}" 41 [email protected] ";"
42 [email protected] ";" 42 [email protected] "\n "
43 [email protected] "\n " 43 [email protected]
44 [email protected] 44 [email protected]
45 [email protected] 45 [email protected] "match"
46 [email protected] "match" 46 [email protected] " "
47 [email protected] " " 47 [email protected]
48 [email protected] 48 [email protected] "{"
49 [email protected] 49 [email protected] " "
50 [email protected] "{" 50 [email protected] "}"
51 [email protected] " " 51 [email protected] " "
52 [email protected] "}" 52 [email protected]
53 [email protected] " " 53 [email protected] "{"
54 [email protected] 54 [email protected] " "
55 [email protected] "{" 55 [email protected]
56 [email protected] " " 56 [email protected]
57 [email protected] 57 [email protected] "_"
58 [email protected] 58 [email protected] " "
59 [email protected] "_" 59 [email protected] "=>"
60 [email protected] " " 60 [email protected] " "
61 [email protected] "=>" 61 [email protected]
62 [email protected] " " 62 [email protected] "("
63 [email protected] 63 [email protected] ")"
64 [email protected] "(" 64 [email protected] " "
65 [email protected] ")" 65 [email protected] "}"
66 [email protected] " " 66 [email protected] ";"
67 [email protected] "}" 67 [email protected] "\n "
68 [email protected] ";" 68 [email protected]
69 [email protected] "\n " 69 [email protected]
70 [email protected] 70 [email protected] "match"
71 [email protected] 71 [email protected] " "
72 [email protected] "match" 72 [email protected]
73 [email protected] " " 73 [email protected] "{"
74 [email protected] 74 [email protected] " "
75 [email protected] 75 [email protected]
76 [email protected] "{" 76 [email protected]
77 [email protected] " " 77 [email protected]
78 [email protected] 78 [email protected]
79 [email protected] 79 [email protected] "S"
80 [email protected] 80 [email protected] " "
81 [email protected] 81 [email protected]
82 [email protected] "S" 82 [email protected] "{"
83 [email protected] " " 83 [email protected] "}"
84 [email protected] 84 [email protected] " "
85 [email protected] "{" 85 [email protected] "}"
86 [email protected] "}" 86 [email protected] " "
87 [email protected] " " 87 [email protected]
88 [email protected] "}" 88 [email protected] "{"
89 [email protected] " " 89 [email protected] "}"
90 [email protected] 90 [email protected] ";"
91 [email protected] "{" 91 [email protected] "\n"
92 [email protected] "}" 92 [email protected] "}"
93 [email protected] ";"
94 [email protected] "\n"
95 [email protected] "}"
96 [email protected] "\n" 93 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0072_return_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0072_return_expr.rast
index b8171dc9c..665f716a8 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0072_return_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0072_return_expr.rast
@@ -9,21 +9,20 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "return"
17 [email protected] "return" 17 [email protected] ";"
18 [email protected] ";" 18 [email protected] "\n "
19 [email protected] "\n " 19 [email protected]
20 [email protected] 20 [email protected]
21 [email protected] 21 [email protected] "return"
22 [email protected] "return" 22 [email protected] " "
23 [email protected] " " 23 [email protected]
24 [email protected] 24 [email protected] "92"
25 [email protected] "92" 25 [email protected] ";"
26 [email protected] ";" 26 [email protected] "\n"
27 [email protected] "\n" 27 [email protected] "}"
28 [email protected] "}"
29 [email protected] "\n" 28 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0074_stmt_postfix_expr_ambiguity.rast b/crates/ra_syntax/test_data/parser/inline/ok/0074_stmt_postfix_expr_ambiguity.rast
index c2a73ef25..3fd3a4391 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0074_stmt_postfix_expr_ambiguity.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0074_stmt_postfix_expr_ambiguity.rast
@@ -9,55 +9,51 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "match"
16 [email protected] "match" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "("
19 [email protected] "(" 19 [email protected] ")"
20 [email protected] ")" 20 [email protected] " "
21 [email protected] " " 21 [email protected]
22 [email protected] 22 [email protected] "{"
23 [email protected] "{" 23 [email protected] "\n "
24 [email protected] "\n " 24 [email protected]
25 [email protected] 25 [email protected]
26 [email protected] 26 [email protected] "_"
27 [email protected] "_" 27 [email protected] " "
28 [email protected] " " 28 [email protected] "=>"
29 [email protected] "=>" 29 [email protected] " "
30 [email protected] " " 30 [email protected]
31 [email protected] 31 [email protected] "{"
32 [email protected] 32 [email protected] "}"
33 [email protected] "{" 33 [email protected] "\n "
34 [email protected] "}" 34 [email protected]
35 [email protected] "\n " 35 [email protected]
36 [email protected] 36 [email protected] "("
37 [email protected] 37 [email protected] ")"
38 [email protected] "(" 38 [email protected] " "
39 [email protected] ")" 39 [email protected] "=>"
40 [email protected] " " 40 [email protected] " "
41 [email protected] "=>" 41 [email protected]
42 [email protected] " " 42 [email protected] "{"
43 [email protected] 43 [email protected] "}"
44 [email protected] 44 [email protected] "\n "
45 [email protected] "{" 45 [email protected]
46 [email protected] "}" 46 [email protected]
47 [email protected] "\n " 47 [email protected] "["
48 [email protected] 48 [email protected] "]"
49 [email protected] 49 [email protected] " "
50 [email protected] "[" 50 [email protected] "=>"
51 [email protected] "]" 51 [email protected] " "
52 [email protected] " " 52 [email protected]
53 [email protected] "=>" 53 [email protected] "{"
54 [email protected] " " 54 [email protected] "}"
55 [email protected] 55 [email protected] "\n "
56 [email protected] 56 [email protected] "}"
57 [email protected] "{" 57 [email protected] "\n"
58 [email protected] "}" 58 [email protected] "}"
59 [email protected] "\n "
60 [email protected] "}"
61 [email protected] "\n"
62 [email protected] "}"
63 [email protected] "\n" 59 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0075_block.rast b/crates/ra_syntax/test_data/parser/inline/ok/0075_block.rast
index 39a86d002..97c6e6a9d 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0075_block.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0075_block.rast
@@ -9,9 +9,8 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "}"
14 [email protected] "}"
15 [email protected] "\n" 14 [email protected] "\n"
16 [email protected] 15 [email protected]
17 [email protected] "fn" 16 [email protected] "fn"
@@ -23,22 +22,21 @@ [email protected]
23 [email protected] ")" 22 [email protected] ")"
24 [email protected] " " 23 [email protected] " "
25 [email protected] 24 [email protected]
26 [email protected] 25 [email protected] "{"
27 [email protected] "{" 26 [email protected] " "
28 [email protected] " " 27 [email protected]
29 [email protected] 28 [email protected] "let"
30 [email protected] "let" 29 [email protected] " "
31 [email protected] " " 30 [email protected]
32 [email protected] 31 [email protected] "_"
33 [email protected] "_" 32 [email protected] " "
34 [email protected] " " 33 [email protected] "="
35 [email protected] "=" 34 [email protected] " "
36 [email protected] " " 35 [email protected]
37 [email protected] 36 [email protected] "1"
38 [email protected] "1" 37 [email protected] ";"
39 [email protected] ";" 38 [email protected] " "
40 [email protected] " " 39 [email protected] "}"
41 [email protected] "}"
42 [email protected] "\n" 40 [email protected] "\n"
43 [email protected] 41 [email protected]
44 [email protected] "fn" 42 [email protected] "fn"
@@ -50,20 +48,19 @@ [email protected]
50 [email protected] ")" 48 [email protected] ")"
51 [email protected] " " 49 [email protected] " "
52 [email protected] 50 [email protected]
53 [email protected] 51 [email protected] "{"
54 [email protected] "{" 52 [email protected] " "
55 [email protected] " " 53 [email protected]
56 [email protected] 54 [email protected]
57 [email protected] 55 [email protected] "1"
58 [email protected] "1" 56 [email protected] ";"
59 [email protected] ";" 57 [email protected] " "
60 [email protected] " " 58 [email protected]
61 [email protected] 59 [email protected]
62 [email protected] 60 [email protected] "2"
63 [email protected] "2" 61 [email protected] ";"
64 [email protected] ";" 62 [email protected] " "
65 [email protected] " " 63 [email protected] "}"
66 [email protected] "}"
67 [email protected] "\n" 64 [email protected] "\n"
68 [email protected] 65 [email protected]
69 [email protected] "fn" 66 [email protected] "fn"
@@ -75,16 +72,15 @@ [email protected]
75 [email protected] ")" 72 [email protected] ")"
76 [email protected] " " 73 [email protected] " "
77 [email protected] 74 [email protected]
78 [email protected] 75 [email protected] "{"
79 [email protected] "{" 76 [email protected] " "
80 [email protected] " " 77 [email protected]
81 [email protected] 78 [email protected]
82 [email protected] 79 [email protected] "1"
83 [email protected] "1" 80 [email protected] ";"
84 [email protected] ";" 81 [email protected] " "
85 [email protected] " " 82 [email protected]
86 [email protected] 83 [email protected] "2"
87 [email protected] "2" 84 [email protected] " "
88 [email protected] " " 85 [email protected] "}"
89 [email protected] "}"
90 [email protected] "\n" 86 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0076_function_where_clause.rast b/crates/ra_syntax/test_data/parser/inline/ok/0076_function_where_clause.rast
index 9621ba59e..e2c1a507d 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0076_function_where_clause.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0076_function_where_clause.rast
@@ -34,7 +34,6 @@ [email protected]
34 [email protected] "Copy" 34 [email protected] "Copy"
35 [email protected] " " 35 [email protected] " "
36 [email protected] 36 [email protected]
37 [email protected] 37 [email protected] "{"
38 [email protected] "{" 38 [email protected] "}"
39 [email protected] "}"
40 [email protected] "\n" 39 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0077_try_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0077_try_expr.rast
index ed9d62c5f..4f3a8ed24 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0077_try_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0077_try_expr.rast
@@ -9,18 +9,17 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected] "x"
21 [email protected] "x" 21 [email protected] "?"
22 [email protected] "?" 22 [email protected] ";"
23 [email protected] ";" 23 [email protected] "\n"
24 [email protected] "\n" 24 [email protected] "}"
25 [email protected] "}"
26 [email protected] "\n" 25 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0080_postfix_range.rast b/crates/ra_syntax/test_data/parser/inline/ok/0080_postfix_range.rast
index 5141ce70d..462d1a8bb 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0080_postfix_range.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0080_postfix_range.rast
@@ -9,88 +9,87 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected] "x"
20 [email protected] "x" 20 [email protected] " "
21 [email protected] " " 21 [email protected] "="
22 [email protected] "=" 22 [email protected] " "
23 [email protected] " " 23 [email protected]
24 [email protected] 24 [email protected]
25 [email protected] 25 [email protected] "1"
26 [email protected] "1" 26 [email protected] ".."
27 [email protected] ".." 27 [email protected] ";"
28 [email protected] ";" 28 [email protected] "\n "
29 [email protected] "\n " 29 [email protected]
30 [email protected] 30 [email protected]
31 [email protected] 31 [email protected] "match"
32 [email protected] "match" 32 [email protected] " "
33 [email protected] " " 33 [email protected]
34 [email protected] 34 [email protected]
35 [email protected] 35 [email protected] "1"
36 [email protected] "1" 36 [email protected] ".."
37 [email protected] ".." 37 [email protected] " "
38 [email protected] " " 38 [email protected]
39 [email protected] 39 [email protected] "{"
40 [email protected] "{" 40 [email protected] " "
41 [email protected] " " 41 [email protected]
42 [email protected] 42 [email protected]
43 [email protected] 43 [email protected] "_"
44 [email protected] "_" 44 [email protected] " "
45 [email protected] " " 45 [email protected] "=>"
46 [email protected] "=>" 46 [email protected] " "
47 [email protected] " " 47 [email protected]
48 [email protected] 48 [email protected] "("
49 [email protected] "(" 49 [email protected] ")"
50 [email protected] ")" 50 [email protected] " "
51 [email protected] " " 51 [email protected] "}"
52 [email protected] "}" 52 [email protected] ";"
53 [email protected] ";" 53 [email protected] "\n "
54 [email protected] "\n " 54 [email protected]
55 [email protected] 55 [email protected]
56 [email protected] 56 [email protected] "match"
57 [email protected] "match" 57 [email protected] " "
58 [email protected] " " 58 [email protected]
59 [email protected] 59 [email protected]
60 [email protected] 60 [email protected]
61 [email protected] 61 [email protected]
62 [email protected] 62 [email protected]
63 [email protected] 63 [email protected]
64 [email protected] 64 [email protected] "a"
65 [email protected] "a" 65 [email protected] "."
66 [email protected] "." 66 [email protected]
67 [email protected] 67 [email protected] "b"
68 [email protected] "b" 68 [email protected]
69 [email protected] 69 [email protected] "("
70 [email protected] "(" 70 [email protected] ")"
71 [email protected] ")" 71 [email protected] ".."
72 [email protected] ".." 72 [email protected]
73 [email protected] 73 [email protected]
74 [email protected] 74 [email protected]
75 [email protected] 75 [email protected]
76 [email protected] 76 [email protected] "S"
77 [email protected] "S" 77 [email protected] " "
78 [email protected] " " 78 [email protected]
79 [email protected] 79 [email protected] "{"
80 [email protected] "{" 80 [email protected] " "
81 [email protected] " " 81 [email protected]
82 [email protected] 82 [email protected]
83 [email protected] 83 [email protected] "_"
84 [email protected] "_" 84 [email protected] " "
85 [email protected] " " 85 [email protected] "=>"
86 [email protected] "=>" 86 [email protected] " "
87 [email protected] " " 87 [email protected]
88 [email protected] 88 [email protected] "("
89 [email protected] "(" 89 [email protected] ")"
90 [email protected] ")" 90 [email protected] " "
91 [email protected] " " 91 [email protected] "}"
92 [email protected] "}" 92 [email protected] ";"
93 [email protected] ";" 93 [email protected] "\n"
94 [email protected] "\n" 94 [email protected] "}"
95 [email protected] "}"
96 [email protected] "\n" 95 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0081_for_type.rast b/crates/ra_syntax/test_data/parser/inline/ok/0081_for_type.rast
index cdbe64180..dfb8d57ad 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0081_for_type.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0081_for_type.rast
@@ -89,9 +89,8 @@ [email protected]
89 [email protected] "Iterator" 89 [email protected] "Iterator"
90 [email protected] " " 90 [email protected] " "
91 [email protected] 91 [email protected]
92 [email protected] 92 [email protected] "{"
93 [email protected] "{" 93 [email protected] "}"
94 [email protected] "}"
95 [email protected] "\n" 94 [email protected] "\n"
96 [email protected] 95 [email protected]
97 [email protected] "fn" 96 [email protected] "fn"
@@ -155,9 +154,8 @@ [email protected]
155 [email protected] "Iterator" 154 [email protected] "Iterator"
156 [email protected] " " 155 [email protected] " "
157 [email protected] 156 [email protected]
158 [email protected] 157 [email protected] "{"
159 [email protected] "{" 158 [email protected] "}"
160 [email protected] "}"
161 [email protected] "\n" 159 [email protected] "\n"
162 [email protected] 160 [email protected]
163 [email protected] "fn" 161 [email protected] "fn"
@@ -237,7 +235,6 @@ [email protected]
237 [email protected] "Iterator" 235 [email protected] "Iterator"
238 [email protected] " " 236 [email protected] " "
239 [email protected] 237 [email protected]
240 [email protected] 238 [email protected] "{"
241 [email protected] "{" 239 [email protected] "}"
242 [email protected] "}"
243 [email protected] "\n" 240 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0082_ref_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0082_ref_expr.rast
index fbad33389..7fe96e17d 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0082_ref_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0082_ref_expr.rast
@@ -9,47 +9,46 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "_"
19 [email protected] "_" 19 [email protected] " "
20 [email protected] " " 20 [email protected] "="
21 [email protected] "=" 21 [email protected] " "
22 [email protected] " " 22 [email protected]
23 [email protected] 23 [email protected] "&"
24 [email protected] "&" 24 [email protected]
25 [email protected] 25 [email protected] "1"
26 [email protected] "1" 26 [email protected] ";"
27 [email protected] ";" 27 [email protected] "\n "
28 [email protected] "\n " 28 [email protected]
29 [email protected] 29 [email protected] "let"
30 [email protected] "let" 30 [email protected] " "
31 [email protected] " " 31 [email protected]
32 [email protected] 32 [email protected] "_"
33 [email protected] "_" 33 [email protected] " "
34 [email protected] " " 34 [email protected] "="
35 [email protected] "=" 35 [email protected] " "
36 [email protected] " " 36 [email protected]
37 [email protected] 37 [email protected] "&"
38 [email protected] "&" 38 [email protected] "mut"
39 [email protected] "mut" 39 [email protected] " "
40 [email protected] " " 40 [email protected]
41 [email protected] 41 [email protected] "&"
42 [email protected] "&" 42 [email protected]
43 [email protected] 43 [email protected]
44 [email protected] 44 [email protected]
45 [email protected] 45 [email protected]
46 [email protected] 46 [email protected]
47 [email protected] 47 [email protected] "f"
48 [email protected] "f" 48 [email protected]
49 [email protected] 49 [email protected] "("
50 [email protected] "(" 50 [email protected] ")"
51 [email protected] ")" 51 [email protected] ";"
52 [email protected] ";" 52 [email protected] "\n"
53 [email protected] "\n" 53 [email protected] "}"
54 [email protected] "}"
55 [email protected] "\n" 54 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0085_expr_literals.rast b/crates/ra_syntax/test_data/parser/inline/ok/0085_expr_literals.rast
index b165789fd..9fcb7899e 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0085_expr_literals.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0085_expr_literals.rast
@@ -9,128 +9,127 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "_"
19 [email protected] "_" 19 [email protected] " "
20 [email protected] " " 20 [email protected] "="
21 [email protected] "=" 21 [email protected] " "
22 [email protected] " " 22 [email protected]
23 [email protected] 23 [email protected] "true"
24 [email protected] "true" 24 [email protected] ";"
25 [email protected] ";" 25 [email protected] "\n "
26 [email protected] "\n " 26 [email protected]
27 [email protected] 27 [email protected] "let"
28 [email protected] "let" 28 [email protected] " "
29 [email protected] " " 29 [email protected]
30 [email protected] 30 [email protected] "_"
31 [email protected] "_" 31 [email protected] " "
32 [email protected] " " 32 [email protected] "="
33 [email protected] "=" 33 [email protected] " "
34 [email protected] " " 34 [email protected]
35 [email protected] 35 [email protected] "false"
36 [email protected] "false" 36 [email protected] ";"
37 [email protected] ";" 37 [email protected] "\n "
38 [email protected] "\n " 38 [email protected]
39 [email protected] 39 [email protected] "let"
40 [email protected] "let" 40 [email protected] " "
41 [email protected] " " 41 [email protected]
42 [email protected] 42 [email protected] "_"
43 [email protected] "_" 43 [email protected] " "
44 [email protected] " " 44 [email protected] "="
45 [email protected] "=" 45 [email protected] " "
46 [email protected] " " 46 [email protected]
47 [email protected] 47 [email protected] "1"
48 [email protected] "1" 48 [email protected] ";"
49 [email protected] ";" 49 [email protected] "\n "
50 [email protected] "\n " 50 [email protected]
51 [email protected] 51 [email protected] "let"
52 [email protected] "let" 52 [email protected] " "
53 [email protected] " " 53 [email protected]
54 [email protected] 54 [email protected] "_"
55 [email protected] "_" 55 [email protected] " "
56 [email protected] " " 56 [email protected] "="
57 [email protected] "=" 57 [email protected] " "
58 [email protected] " " 58 [email protected]
59 [email protected] 59 [email protected] "2.0"
60 [email protected] "2.0" 60 [email protected] ";"
61 [email protected] ";" 61 [email protected] "\n "
62 [email protected] "\n " 62 [email protected]
63 [email protected] 63 [email protected] "let"
64 [email protected] "let" 64 [email protected] " "
65 [email protected] " " 65 [email protected]
66 [email protected] 66 [email protected] "_"
67 [email protected] "_" 67 [email protected] " "
68 [email protected] " " 68 [email protected] "="
69 [email protected] "=" 69 [email protected] " "
70 [email protected] " " 70 [email protected]
71 [email protected] 71 [email protected] "b\'a\'"
72 [email protected] "b\'a\'" 72 [email protected] ";"
73 [email protected] ";" 73 [email protected] "\n "
74 [email protected] "\n " 74 [email protected]
75 [email protected] 75 [email protected] "let"
76 [email protected] "let" 76 [email protected] " "
77 [email protected] " " 77 [email protected]
78 [email protected] 78 [email protected] "_"
79 [email protected] "_" 79 [email protected] " "
80 [email protected] " " 80 [email protected] "="
81 [email protected] "=" 81 [email protected] " "
82 [email protected] " " 82 [email protected]
83 [email protected] 83 [email protected] "\'b\'"
84 [email protected] "\'b\'" 84 [email protected] ";"
85 [email protected] ";" 85 [email protected] "\n "
86 [email protected] "\n " 86 [email protected]
87 [email protected] 87 [email protected] "let"
88 [email protected] "let" 88 [email protected] " "
89 [email protected] " " 89 [email protected]
90 [email protected] 90 [email protected] "_"
91 [email protected] "_" 91 [email protected] " "
92 [email protected] " " 92 [email protected] "="
93 [email protected] "=" 93 [email protected] " "
94 [email protected] " " 94 [email protected]
95 [email protected] 95 [email protected] "\"c\""
96 [email protected] "\"c\"" 96 [email protected] ";"
97 [email protected] ";" 97 [email protected] "\n "
98 [email protected] "\n " 98 [email protected]
99 [email protected] 99 [email protected] "let"
100 [email protected] "let" 100 [email protected] " "
101 [email protected] " " 101 [email protected]
102 [email protected] 102 [email protected] "_"
103 [email protected] "_" 103 [email protected] " "
104 [email protected] " " 104 [email protected] "="
105 [email protected] "=" 105 [email protected] " "
106 [email protected] " " 106 [email protected]
107 [email protected] 107 [email protected] "r\"d\""
108 [email protected] "r\"d\"" 108 [email protected] ";"
109 [email protected] ";" 109 [email protected] "\n "
110 [email protected] "\n " 110 [email protected]
111 [email protected] 111 [email protected] "let"
112 [email protected] "let" 112 [email protected] " "
113 [email protected] " " 113 [email protected]
114 [email protected] 114 [email protected] "_"
115 [email protected] "_" 115 [email protected] " "
116 [email protected] " " 116 [email protected] "="
117 [email protected] "=" 117 [email protected] " "
118 [email protected] " " 118 [email protected]
119 [email protected] 119 [email protected] "b\"e\""
120 [email protected] "b\"e\"" 120 [email protected] ";"
121 [email protected] ";" 121 [email protected] "\n "
122 [email protected] "\n " 122 [email protected]
123 [email protected] 123 [email protected] "let"
124 [email protected] "let" 124 [email protected] " "
125 [email protected] " " 125 [email protected]
126 [email protected] 126 [email protected] "_"
127 [email protected] "_" 127 [email protected] " "
128 [email protected] " " 128 [email protected] "="
129 [email protected] "=" 129 [email protected] " "
130 [email protected] " " 130 [email protected]
131 [email protected] 131 [email protected] "br\"f\""
132 [email protected] "br\"f\"" 132 [email protected] ";"
133 [email protected] ";" 133 [email protected] "\n"
134 [email protected] "\n" 134 [email protected] "}"
135 [email protected] "}"
136 [email protected] "\n" 135 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0086_function_ret_type.rast b/crates/ra_syntax/test_data/parser/inline/ok/0086_function_ret_type.rast
index 36f17133d..a42abc189 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0086_function_ret_type.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0086_function_ret_type.rast
@@ -9,9 +9,8 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "}"
14 [email protected] "}"
15 [email protected] "\n" 14 [email protected] "\n"
16 [email protected] 15 [email protected]
17 [email protected] "fn" 16 [email protected] "fn"
@@ -30,7 +29,6 @@ [email protected]
30 [email protected] ")" 29 [email protected] ")"
31 [email protected] " " 30 [email protected] " "
32 [email protected] 31 [email protected]
33 [email protected] 32 [email protected] "{"
34 [email protected] "{" 33 [email protected] "}"
35 [email protected] "}"
36 [email protected] "\n" 34 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0088_break_ambiguity.rast b/crates/ra_syntax/test_data/parser/inline/ok/0088_break_ambiguity.rast
index ca5aa007e..7e71d7373 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0088_break_ambiguity.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0088_break_ambiguity.rast
@@ -8,62 +8,58 @@ [email protected]
8 [email protected] "(" 8 [email protected] "("
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] 10 [email protected]
11 [email protected] 11 [email protected] "{"
12 [email protected] "{" 12 [email protected] "\n "
13 [email protected] "\n " 13 [email protected]
14 [email protected] 14 [email protected]
15 [email protected] 15 [email protected] "if"
16 [email protected] "if" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected] "break"
20 [email protected] "break" 20 [email protected] " "
21 [email protected] " " 21 [email protected]
22 [email protected] 22 [email protected] "{"
23 [email protected] 23 [email protected] "}"
24 [email protected] "{" 24 [email protected] "\n "
25 [email protected] "}" 25 [email protected]
26 [email protected] "\n " 26 [email protected]
27 [email protected] 27 [email protected] "while"
28 [email protected] 28 [email protected] " "
29 [email protected] "while" 29 [email protected]
30 [email protected] " " 30 [email protected]
31 [email protected] 31 [email protected] "break"
32 [email protected] 32 [email protected] " "
33 [email protected] "break" 33 [email protected]
34 [email protected] " " 34 [email protected] "{"
35 [email protected] 35 [email protected] "}"
36 [email protected] 36 [email protected] "\n "
37 [email protected] "{" 37 [email protected]
38 [email protected] "}" 38 [email protected]
39 [email protected] "\n " 39 [email protected] "for"
40 [email protected] 40 [email protected] " "
41 [email protected] 41 [email protected]
42 [email protected] "for" 42 [email protected]
43 [email protected] " " 43 [email protected] "i"
44 [email protected] 44 [email protected] " "
45 [email protected] 45 [email protected] "in"
46 [email protected] "i" 46 [email protected] " "
47 [email protected] " " 47 [email protected]
48 [email protected] "in" 48 [email protected] "break"
49 [email protected] " " 49 [email protected] " "
50 [email protected] 50 [email protected]
51 [email protected] "break" 51 [email protected] "{"
52 [email protected] " " 52 [email protected] "}"
53 [email protected] 53 [email protected] "\n "
54 [email protected] 54 [email protected]
55 [email protected] "{" 55 [email protected] "match"
56 [email protected] "}" 56 [email protected] " "
57 [email protected] "\n " 57 [email protected]
58 [email protected] 58 [email protected] "break"
59 [email protected] "match" 59 [email protected] " "
60 [email protected] " " 60 [email protected]
61 [email protected] 61 [email protected] "{"
62 [email protected] "break" 62 [email protected] "}"
63 [email protected] " " 63 [email protected] "\n"
64 [email protected] 64 [email protected] "}"
65 [email protected] "{"
66 [email protected] "}"
67 [email protected] "\n"
68 [email protected] "}"
69 [email protected] "\n" 65 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0089_extern_fn.rast b/crates/ra_syntax/test_data/parser/inline/ok/0089_extern_fn.rast
index 1c1e349e1..48aaf1004 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0089_extern_fn.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0089_extern_fn.rast
@@ -12,7 +12,6 @@ [email protected]
12 [email protected] ")" 12 [email protected] ")"
13 [email protected] " " 13 [email protected] " "
14 [email protected] 14 [email protected]
15 [email protected] 15 [email protected] "{"
16 [email protected] "{" 16 [email protected] "}"
17 [email protected] "}"
18 [email protected] "\n" 17 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0093_index_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0093_index_expr.rast
index c264dae5e..aed81f9b0 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0093_index_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0093_index_expr.rast
@@ -9,26 +9,25 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected]
21 [email protected] 21 [email protected] "x"
22 [email protected] "x" 22 [email protected] "["
23 [email protected] "[" 23 [email protected]
24 [email protected] 24 [email protected] "1"
25 [email protected] "1" 25 [email protected] "]"
26 [email protected] "]" 26 [email protected] "["
27 [email protected] "[" 27 [email protected]
28 [email protected] 28 [email protected] "2"
29 [email protected] "2" 29 [email protected] "]"
30 [email protected] "]" 30 [email protected] ";"
31 [email protected] ";" 31 [email protected] "\n"
32 [email protected] "\n" 32 [email protected] "}"
33 [email protected] "}"
34 [email protected] "\n" 33 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0095_placeholder_pat.rast b/crates/ra_syntax/test_data/parser/inline/ok/0095_placeholder_pat.rast
index 24e1ba8a0..67d9595d3 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0095_placeholder_pat.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0095_placeholder_pat.rast
@@ -9,21 +9,20 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] " "
14 [email protected] " " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "_"
19 [email protected] "_" 19 [email protected] " "
20 [email protected] " " 20 [email protected] "="
21 [email protected] "=" 21 [email protected] " "
22 [email protected] " " 22 [email protected]
23 [email protected] 23 [email protected] "("
24 [email protected] "(" 24 [email protected] ")"
25 [email protected] ")" 25 [email protected] ";"
26 [email protected] ";" 26 [email protected] " "
27 [email protected] " " 27 [email protected] "}"
28 [email protected] "}"
29 [email protected] "\n" 28 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0096_no_semi_after_block.rast b/crates/ra_syntax/test_data/parser/inline/ok/0096_no_semi_after_block.rast
index 47462d44e..031e74652 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0096_no_semi_after_block.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0096_no_semi_after_block.rast
@@ -9,122 +9,115 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "if"
17 [email protected] "if" 17 [email protected] " "
18 [email protected] " " 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected] "true"
21 [email protected] "true" 21 [email protected] " "
22 [email protected] " " 22 [email protected]
23 [email protected] 23 [email protected] "{"
24 [email protected] 24 [email protected] "}"
25 [email protected] "{" 25 [email protected] "\n "
26 [email protected] "}" 26 [email protected]
27 [email protected] "\n " 27 [email protected]
28 [email protected] 28 [email protected] "loop"
29 [email protected] 29 [email protected] " "
30 [email protected] "loop" 30 [email protected]
31 [email protected] " " 31 [email protected] "{"
32 [email protected] 32 [email protected] "}"
33 [email protected] 33 [email protected] "\n "
34 [email protected] "{" 34 [email protected]
35 [email protected] "}" 35 [email protected]
36 [email protected] "\n " 36 [email protected] "match"
37 [email protected] 37 [email protected] " "
38 [email protected] 38 [email protected]
39 [email protected] "match" 39 [email protected] "("
40 [email protected] " " 40 [email protected] ")"
41 [email protected] 41 [email protected] " "
42 [email protected] "(" 42 [email protected]
43 [email protected] ")" 43 [email protected] "{"
44 [email protected] " " 44 [email protected] "}"
45 [email protected] 45 [email protected] "\n "
46 [email protected] "{" 46 [email protected]
47 [email protected] "}" 47 [email protected]
48 [email protected] "\n " 48 [email protected] "while"
49 [email protected] 49 [email protected] " "
50 [email protected] 50 [email protected]
51 [email protected] "while" 51 [email protected]
52 [email protected] " " 52 [email protected] "true"
53 [email protected] 53 [email protected] " "
54 [email protected] 54 [email protected]
55 [email protected] "true" 55 [email protected] "{"
56 [email protected] " " 56 [email protected] "}"
57 [email protected] 57 [email protected] "\n "
58 [email protected] 58 [email protected]
59 [email protected] "{" 59 [email protected]
60 [email protected] "}" 60 [email protected] "for"
61 [email protected] "\n " 61 [email protected] " "
62 [email protected] 62 [email protected]
63 [email protected] 63 [email protected] "_"
64 [email protected] "for" 64 [email protected] " "
65 [email protected] " " 65 [email protected] "in"
66 [email protected] 66 [email protected] " "
67 [email protected] "_" 67 [email protected]
68 [email protected] " " 68 [email protected] "("
69 [email protected] "in" 69 [email protected] ")"
70 [email protected] " " 70 [email protected] " "
71 [email protected] 71 [email protected]
72 [email protected] "(" 72 [email protected] "{"
73 [email protected] ")" 73 [email protected] "}"
74 [email protected] " " 74 [email protected] "\n "
75 [email protected] 75 [email protected]
76 [email protected] 76 [email protected]
77 [email protected] "{" 77 [email protected] "{"
78 [email protected] "}" 78 [email protected] "}"
79 [email protected] "\n " 79 [email protected] "\n "
80 [email protected] 80 [email protected]
81 [email protected] 81 [email protected]
82 [email protected] 82 [email protected] "{"
83 [email protected] "{" 83 [email protected] "}"
84 [email protected] "}" 84 [email protected] "\n "
85 [email protected] "\n " 85 [email protected]
86 [email protected] 86 [email protected]
87 [email protected] 87 [email protected]
88 [email protected] 88 [email protected]
89 [email protected] "{" 89 [email protected]
90 [email protected] "}" 90 [email protected] "macro_rules"
91 [email protected] "\n " 91 [email protected] "!"
92 [email protected] 92 [email protected] " "
93 [email protected] 93 [email protected]
94 [email protected] 94 [email protected] "test"
95 [email protected] 95 [email protected] " "
96 [email protected] 96 [email protected]
97 [email protected] "macro_rules" 97 [email protected] "{"
98 [email protected] "!" 98 [email protected] "\n "
99 [email protected] " " 99 [email protected]
100 [email protected] 100 [email protected] "("
101 [email protected] "test" 101 [email protected] ")"
102 [email protected] " " 102 [email protected] " "
103 [email protected] 103 [email protected] "="
104 [email protected] "{" 104 [email protected] ">"
105 [email protected] "\n " 105 [email protected] " "
106 [email protected] 106 [email protected]
107 [email protected] "(" 107 [email protected] "{"
108 [email protected] ")" 108 [email protected] "}"
109 [email protected] " " 109 [email protected] "\n "
110 [email protected] "=" 110 [email protected] "}"
111 [email protected] ">" 111 [email protected] "\n "
112 [email protected] " " 112 [email protected]
113 [email protected] 113 [email protected]
114 [email protected] "{" 114 [email protected]
115 [email protected] "}" 115 [email protected]
116 [email protected] "\n " 116 [email protected] "test"
117 [email protected] "}" 117 [email protected] "!"
118 [email protected] "\n " 118 [email protected]
119 [email protected] 119 [email protected] "{"
120 [email protected] 120 [email protected] "}"
121 [email protected] 121 [email protected] "\n"
122 [email protected] 122 [email protected] "}"
123 [email protected] "test"
124 [email protected] "!"
125 [email protected]
126 [email protected] "{"
127 [email protected] "}"
128 [email protected] "\n"
129 [email protected] "}"
130 [email protected] "\n" 123 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0098_const_unsafe_fn.rast b/crates/ra_syntax/test_data/parser/inline/ok/0098_const_unsafe_fn.rast
index a51fb5511..816e49310 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0098_const_unsafe_fn.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0098_const_unsafe_fn.rast
@@ -13,7 +13,6 @@ [email protected]
13 [email protected] ")" 13 [email protected] ")"
14 [email protected] " " 14 [email protected] " "
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "{"
17 [email protected] "{" 17 [email protected] "}"
18 [email protected] "}"
19 [email protected] "\n" 18 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0099_param_list.rast b/crates/ra_syntax/test_data/parser/inline/ok/0099_param_list.rast
index 61b47bf35..d48ef865c 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0099_param_list.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0099_param_list.rast
@@ -9,9 +9,8 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "}"
14 [email protected] "}"
15 [email protected] "\n" 14 [email protected] "\n"
16 [email protected] 15 [email protected]
17 [email protected] "fn" 16 [email protected] "fn"
@@ -34,9 +33,8 @@ [email protected]
34 [email protected] ")" 33 [email protected] ")"
35 [email protected] " " 34 [email protected] " "
36 [email protected] 35 [email protected]
37 [email protected] 36 [email protected] "{"
38 [email protected] "{" 37 [email protected] "}"
39 [email protected] "}"
40 [email protected] "\n" 38 [email protected] "\n"
41 [email protected] 39 [email protected]
42 [email protected] "fn" 40 [email protected] "fn"
@@ -61,9 +59,8 @@ [email protected]
61 [email protected] ")" 59 [email protected] ")"
62 [email protected] " " 60 [email protected] " "
63 [email protected] 61 [email protected]
64 [email protected] 62 [email protected] "{"
65 [email protected] "{" 63 [email protected] "}"
66 [email protected] "}"
67 [email protected] "\n" 64 [email protected] "\n"
68 [email protected] 65 [email protected]
69 [email protected] "fn" 66 [email protected] "fn"
@@ -97,7 +94,6 @@ [email protected]
97 [email protected] ")" 94 [email protected] ")"
98 [email protected] " " 95 [email protected] " "
99 [email protected] 96 [email protected]
100 [email protected] 97 [email protected] "{"
101 [email protected] "{" 98 [email protected] "}"
102 [email protected] "}"
103 [email protected] "\n" 99 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0100_for_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0100_for_expr.rast
index 89d435d1f..e4455cd3e 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0100_for_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0100_for_expr.rast
@@ -9,28 +9,26 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "for"
17 [email protected] "for" 17 [email protected] " "
18 [email protected] " " 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected] "x"
21 [email protected] "x" 21 [email protected] " "
22 [email protected] " " 22 [email protected] "in"
23 [email protected] "in" 23 [email protected] " "
24 [email protected] " " 24 [email protected]
25 [email protected] 25 [email protected] "["
26 [email protected] "[" 26 [email protected] "]"
27 [email protected] "]" 27 [email protected] " "
28 [email protected] " " 28 [email protected]
29 [email protected] 29 [email protected] "{"
30 [email protected] 30 [email protected] "}"
31 [email protected] "{" 31 [email protected] ";"
32 [email protected] "}" 32 [email protected] "\n"
33 [email protected] ";" 33 [email protected] "}"
34 [email protected] "\n"
35 [email protected] "}"
36 [email protected] "\n" 34 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0101_unsafe_fn.rast b/crates/ra_syntax/test_data/parser/inline/ok/0101_unsafe_fn.rast
index 57b4d0c4f..8a8743060 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0101_unsafe_fn.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0101_unsafe_fn.rast
@@ -11,7 +11,6 @@ [email protected]
11 [email protected] ")" 11 [email protected] ")"
12 [email protected] " " 12 [email protected] " "
13 [email protected] 13 [email protected]
14 [email protected] 14 [email protected] "{"
15 [email protected] "{" 15 [email protected] "}"
16 [email protected] "}"
17 [email protected] "\n" 16 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0102_record_field_pat_list.rast b/crates/ra_syntax/test_data/parser/inline/ok/0102_record_field_pat_list.rast
index ed6f6f326..9f966ff8a 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0102_record_field_pat_list.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0102_record_field_pat_list.rast
@@ -9,125 +9,124 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected]
21 [email protected] 21 [email protected] "S"
22 [email protected] "S" 22 [email protected] " "
23 [email protected] " " 23 [email protected]
24 [email protected] 24 [email protected] "{"
25 [email protected] "{" 25 [email protected] "}"
26 [email protected] "}" 26 [email protected] " "
27 [email protected] " " 27 [email protected] "="
28 [email protected] "=" 28 [email protected] " "
29 [email protected] " " 29 [email protected]
30 [email protected] 30 [email protected] "("
31 [email protected] "(" 31 [email protected] ")"
32 [email protected] ")" 32 [email protected] ";"
33 [email protected] ";" 33 [email protected] "\n "
34 [email protected] "\n " 34 [email protected]
35 [email protected] 35 [email protected] "let"
36 [email protected] "let" 36 [email protected] " "
37 [email protected] " " 37 [email protected]
38 [email protected] 38 [email protected]
39 [email protected] 39 [email protected]
40 [email protected] 40 [email protected]
41 [email protected] 41 [email protected] "S"
42 [email protected] "S" 42 [email protected] " "
43 [email protected] " " 43 [email protected]
44 [email protected] 44 [email protected] "{"
45 [email protected] "{" 45 [email protected] " "
46 [email protected] " " 46 [email protected]
47 [email protected] 47 [email protected]
48 [email protected] 48 [email protected]
49 [email protected] 49 [email protected] "f"
50 [email protected] "f" 50 [email protected] ","
51 [email protected] "," 51 [email protected] " "
52 [email protected] " " 52 [email protected]
53 [email protected] 53 [email protected]
54 [email protected] 54 [email protected] "ref"
55 [email protected] "ref" 55 [email protected] " "
56 [email protected] " " 56 [email protected] "mut"
57 [email protected] "mut" 57 [email protected] " "
58 [email protected] " " 58 [email protected]
59 [email protected] 59 [email protected] "g"
60 [email protected] "g" 60 [email protected] " "
61 [email protected] " " 61 [email protected] "}"
62 [email protected] "}" 62 [email protected] " "
63 [email protected] " " 63 [email protected] "="
64 [email protected] "=" 64 [email protected] " "
65 [email protected] " " 65 [email protected]
66 [email protected] 66 [email protected] "("
67 [email protected] "(" 67 [email protected] ")"
68 [email protected] ")" 68 [email protected] ";"
69 [email protected] ";" 69 [email protected] "\n "
70 [email protected] "\n " 70 [email protected]
71 [email protected] 71 [email protected] "let"
72 [email protected] "let" 72 [email protected] " "
73 [email protected] " " 73 [email protected]
74 [email protected] 74 [email protected]
75 [email protected] 75 [email protected]
76 [email protected] 76 [email protected]
77 [email protected] 77 [email protected] "S"
78 [email protected] "S" 78 [email protected] " "
79 [email protected] " " 79 [email protected]
80 [email protected] 80 [email protected] "{"
81 [email protected] "{" 81 [email protected] " "
82 [email protected] " " 82 [email protected]
83 [email protected] 83 [email protected]
84 [email protected] 84 [email protected] "h"
85 [email protected] "h" 85 [email protected] ":"
86 [email protected] ":" 86 [email protected] " "
87 [email protected] " " 87 [email protected]
88 [email protected] 88 [email protected] "_"
89 [email protected] "_" 89 [email protected] ","
90 [email protected] "," 90 [email protected] " "
91 [email protected] " " 91 [email protected] ".."
92 [email protected] ".." 92 [email protected] "}"
93 [email protected] "}" 93 [email protected] " "
94 [email protected] " " 94 [email protected] "="
95 [email protected] "=" 95 [email protected] " "
96 [email protected] " " 96 [email protected]
97 [email protected] 97 [email protected] "("
98 [email protected] "(" 98 [email protected] ")"
99 [email protected] ")" 99 [email protected] ";"
100 [email protected] ";" 100 [email protected] "\n "
101 [email protected] "\n " 101 [email protected]
102 [email protected] 102 [email protected] "let"
103 [email protected] "let" 103 [email protected] " "
104 [email protected] " " 104 [email protected]
105 [email protected] 105 [email protected]
106 [email protected] 106 [email protected]
107 [email protected] 107 [email protected]
108 [email protected] 108 [email protected] "S"
109 [email protected] "S" 109 [email protected] " "
110 [email protected] " " 110 [email protected]
111 [email protected] 111 [email protected] "{"
112 [email protected] "{" 112 [email protected] " "
113 [email protected] " " 113 [email protected]
114 [email protected] 114 [email protected]
115 [email protected] 115 [email protected] "h"
116 [email protected] "h" 116 [email protected] ":"
117 [email protected] ":" 117 [email protected] " "
118 [email protected] " " 118 [email protected]
119 [email protected] 119 [email protected] "_"
120 [email protected] "_" 120 [email protected] ","
121 [email protected] "," 121 [email protected] " "
122 [email protected] " " 122 [email protected] "}"
123 [email protected] "}" 123 [email protected] " "
124 [email protected] " " 124 [email protected] "="
125 [email protected] "=" 125 [email protected] " "
126 [email protected] " " 126 [email protected]
127 [email protected] 127 [email protected] "("
128 [email protected] "(" 128 [email protected] ")"
129 [email protected] ")" 129 [email protected] ";"
130 [email protected] ";" 130 [email protected] "\n"
131 [email protected] "\n" 131 [email protected] "}"
132 [email protected] "}"
133 [email protected] "\n" 132 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0103_array_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0103_array_expr.rast
index 461c61914..9b3bef04e 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0103_array_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0103_array_expr.rast
@@ -9,47 +9,46 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "["
17 [email protected] "[" 17 [email protected] "]"
18 [email protected] "]" 18 [email protected] ";"
19 [email protected] ";" 19 [email protected] "\n "
20 [email protected] "\n " 20 [email protected]
21 [email protected] 21 [email protected]
22 [email protected] 22 [email protected] "["
23 [email protected] "[" 23 [email protected]
24 [email protected] 24 [email protected] "1"
25 [email protected] "1" 25 [email protected] "]"
26 [email protected] "]" 26 [email protected] ";"
27 [email protected] ";" 27 [email protected] "\n "
28 [email protected] "\n " 28 [email protected]
29 [email protected] 29 [email protected]
30 [email protected] 30 [email protected] "["
31 [email protected] "[" 31 [email protected]
32 [email protected] 32 [email protected] "1"
33 [email protected] "1" 33 [email protected] ","
34 [email protected] "," 34 [email protected] " "
35 [email protected] " " 35 [email protected]
36 [email protected] 36 [email protected] "2"
37 [email protected] "2" 37 [email protected] ","
38 [email protected] "," 38 [email protected] "]"
39 [email protected] "]" 39 [email protected] ";"
40 [email protected] ";" 40 [email protected] "\n "
41 [email protected] "\n " 41 [email protected]
42 [email protected] 42 [email protected]
43 [email protected] 43 [email protected] "["
44 [email protected] "[" 44 [email protected]
45 [email protected] 45 [email protected] "1"
46 [email protected] "1" 46 [email protected] ";"
47 [email protected] ";" 47 [email protected] " "
48 [email protected] " " 48 [email protected]
49 [email protected] 49 [email protected] "2"
50 [email protected] "2" 50 [email protected] "]"
51 [email protected] "]" 51 [email protected] ";"
52 [email protected] ";" 52 [email protected] "\n"
53 [email protected] "\n" 53 [email protected] "}"
54 [email protected] "}"
55 [email protected] "\n" 54 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0105_block_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0105_block_expr.rast
index 8b2323cf2..f3a5e3096 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0105_block_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0105_block_expr.rast
@@ -1,5 +1,5 @@
1SOURCE_FILE@0..52 1[email protected]1
2 FN_DEF@0..51 2 FN_DEF@0..20
3 [email protected] "fn" 3 [email protected] "fn"
4 [email protected] " " 4 [email protected] " "
5 [email protected] 5 [email protected]
@@ -8,36 +8,14 @@ [email protected]
8 [email protected] "(" 8 [email protected] "("
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "{"
17 [email protected] 17 [email protected] "}"
18 [email protected] "{" 18 [email protected] ";"
19 [email protected] "}" 19 [email protected] "\n"
20 [email protected] ";" 20 [email protected] "}"
21 [email protected] "\n " 21 [email protected] "\n"
22 [email protected]
23 [email protected]
24 [email protected] "unsafe"
25 [email protected] " "
26 [email protected]
27 [email protected] "{"
28 [email protected] "}"
29 [email protected] ";"
30 [email protected] "\n "
31 [email protected]
32 [email protected]
33 [email protected]
34 [email protected] "\'label"
35 [email protected] ":"
36 [email protected] " "
37 [email protected]
38 [email protected] "{"
39 [email protected] "}"
40 [email protected] ";"
41 [email protected] "\n"
42 [email protected] "}"
43 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0105_block_expr.rs b/crates/ra_syntax/test_data/parser/inline/ok/0105_block_expr.rs
index 2fed74c5e..9c6019fb1 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0105_block_expr.rs
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0105_block_expr.rs
@@ -1,5 +1,3 @@
1fn foo() { 1fn foo() {
2 {}; 2 {};
3 unsafe {};
4 'label: {};
5} 3}
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0106_lambda_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0106_lambda_expr.rast
index 73c314e07..e64717152 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0106_lambda_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0106_lambda_expr.rast
@@ -9,132 +9,127 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected] "|"
18 [email protected] "|" 18 [email protected] "|"
19 [email protected] "|" 19 [email protected] " "
20 [email protected] " " 20 [email protected]
21 [email protected] 21 [email protected] "("
22 [email protected] "(" 22 [email protected] ")"
23 [email protected] ")" 23 [email protected] ";"
24 [email protected] ";" 24 [email protected] "\n "
25 [email protected] "\n " 25 [email protected]
26 [email protected] 26 [email protected]
27 [email protected] 27 [email protected]
28 [email protected] 28 [email protected] "|"
29 [email protected] "|" 29 [email protected] "|"
30 [email protected] "|" 30 [email protected] " "
31 [email protected] " " 31 [email protected]
32 [email protected] 32 [email protected] "->"
33 [email protected] "->" 33 [email protected] " "
34 [email protected] " " 34 [email protected]
35 [email protected] 35 [email protected]
36 [email protected] 36 [email protected]
37 [email protected] 37 [email protected]
38 [email protected] 38 [email protected] "i32"
39 [email protected] "i32" 39 [email protected] " "
40 [email protected] " " 40 [email protected]
41 [email protected] 41 [email protected] "{"
42 [email protected] 42 [email protected] " "
43 [email protected] "{" 43 [email protected]
44 [email protected] " " 44 [email protected] "92"
45 [email protected] 45 [email protected] " "
46 [email protected] "92" 46 [email protected] "}"
47 [email protected] " " 47 [email protected] ";"
48 [email protected] "}" 48 [email protected] "\n "
49 [email protected] ";" 49 [email protected]
50 [email protected] "\n " 50 [email protected]
51 [email protected] 51 [email protected]
52 [email protected] 52 [email protected] "|"
53 [email protected] 53 [email protected]
54 [email protected] "|" 54 [email protected]
55 [email protected] 55 [email protected]
56 [email protected] 56 [email protected] "x"
57 [email protected] 57 [email protected] "|"
58 [email protected] "x" 58 [email protected] " "
59 [email protected] "|" 59 [email protected]
60 [email protected] " " 60 [email protected]
61 [email protected] 61 [email protected]
62 [email protected] 62 [email protected]
63 [email protected] 63 [email protected] "x"
64 [email protected] 64 [email protected] ";"
65 [email protected] "x" 65 [email protected] "\n "
66 [email protected] ";" 66 [email protected]
67 [email protected] "\n " 67 [email protected]
68 [email protected] 68 [email protected] "move"
69 [email protected] 69 [email protected] " "
70 [email protected] "move" 70 [email protected]
71 [email protected] " " 71 [email protected] "|"
72 [email protected] 72 [email protected]
73 [email protected] "|" 73 [email protected]
74 [email protected] 74 [email protected]
75 [email protected] 75 [email protected] "x"
76 [email protected] 76 [email protected] ":"
77 [email protected] "x" 77 [email protected] " "
78 [email protected] ":" 78 [email protected]
79 [email protected] " " 79 [email protected]
80 [email protected] 80 [email protected]
81 [email protected] 81 [email protected]
82 [email protected] 82 [email protected] "i32"
83 [email protected] 83 [email protected] ","
84 [email protected] "i32" 84 [email protected] "|"
85 [email protected] "," 85 [email protected] " "
86 [email protected] "|" 86 [email protected]
87 [email protected] " " 87 [email protected]
88 [email protected] 88 [email protected]
89 [email protected] 89 [email protected]
90 [email protected] 90 [email protected] "x"
91 [email protected] 91 [email protected] ";"
92 [email protected] "x" 92 [email protected] "\n "
93 [email protected] ";" 93 [email protected]
94 [email protected] "\n " 94 [email protected]
95 [email protected] 95 [email protected] "async"
96 [email protected] 96 [email protected] " "
97 [email protected] "async" 97 [email protected]
98 [email protected] " " 98 [email protected] "|"
99 [email protected] 99 [email protected] "|"
100 [email protected] "|" 100 [email protected] " "
101 [email protected] "|" 101 [email protected]
102 [email protected] " " 102 [email protected] "{"
103 [email protected] 103 [email protected] "}"
104 [email protected] 104 [email protected] ";"
105 [email protected] "{" 105 [email protected] "\n "
106 [email protected] "}" 106 [email protected]
107 [email protected] ";" 107 [email protected]
108 [email protected] "\n " 108 [email protected] "move"
109 [email protected] 109 [email protected] " "
110 [email protected] 110 [email protected]
111 [email protected] "move" 111 [email protected] "|"
112 [email protected] " " 112 [email protected] "|"
113 [email protected] 113 [email protected] " "
114 [email protected] "|" 114 [email protected]
115 [email protected] "|" 115 [email protected] "{"
116 [email protected] " " 116 [email protected] "}"
117 [email protected] 117 [email protected] ";"
118 [email protected] 118 [email protected] "\n "
119 [email protected] "{" 119 [email protected]
120 [email protected] "}" 120 [email protected]
121 [email protected] ";" 121 [email protected] "async"
122 [email protected] "\n " 122 [email protected] " "
123 [email protected] 123 [email protected] "move"
124 [email protected] 124 [email protected] " "
125 [email protected] "async" 125 [email protected]
126 [email protected] " " 126 [email protected] "|"
127 [email protected] "move" 127 [email protected] "|"
128 [email protected] " " 128 [email protected] " "
129 [email protected] 129 [email protected]
130 [email protected] "|" 130 [email protected] "{"
131 [email protected] "|" 131 [email protected] "}"
132 [email protected] " " 132 [email protected] ";"
133 [email protected] 133 [email protected] "\n"
134 [email protected] 134 [email protected] "}"
135 [email protected] "{"
136 [email protected] "}"
137 [email protected] ";"
138 [email protected] "\n"
139 [email protected] "}"
140 [email protected] "\n" 135 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0107_method_call_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0107_method_call_expr.rast
index 5392b1a74..98963dc62 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0107_method_call_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0107_method_call_expr.rast
@@ -9,55 +9,54 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected] "x"
21 [email protected] "x" 21 [email protected] "."
22 [email protected] "." 22 [email protected]
23 [email protected] 23 [email protected] "foo"
24 [email protected] "foo" 24 [email protected]
25 [email protected] 25 [email protected] "("
26 [email protected] "(" 26 [email protected] ")"
27 [email protected] ")" 27 [email protected] ";"
28 [email protected] ";" 28 [email protected] "\n "
29 [email protected] "\n " 29 [email protected]
30 [email protected] 30 [email protected]
31 [email protected] 31 [email protected]
32 [email protected] 32 [email protected]
33 [email protected] 33 [email protected]
34 [email protected] 34 [email protected]
35 [email protected] 35 [email protected] "y"
36 [email protected] "y" 36 [email protected] "."
37 [email protected] "." 37 [email protected]
38 [email protected] 38 [email protected] "bar"
39 [email protected] "bar" 39 [email protected]
40 [email protected] 40 [email protected] "::"
41 [email protected] "::" 41 [email protected] "<"
42 [email protected] "<" 42 [email protected]
43 [email protected] 43 [email protected]
44 [email protected] 44 [email protected]
45 [email protected] 45 [email protected]
46 [email protected] 46 [email protected]
47 [email protected] 47 [email protected] "T"
48 [email protected] "T" 48 [email protected] ">"
49 [email protected] ">" 49 [email protected]
50 [email protected] 50 [email protected] "("
51 [email protected] "(" 51 [email protected]
52 [email protected] 52 [email protected] "1"
53 [email protected] "1" 53 [email protected] ","
54 [email protected] "," 54 [email protected] " "
55 [email protected] " " 55 [email protected]
56 [email protected] 56 [email protected] "2"
57 [email protected] "2" 57 [email protected] ","
58 [email protected] "," 58 [email protected] ")"
59 [email protected] ")" 59 [email protected] ";"
60 [email protected] ";" 60 [email protected] "\n"
61 [email protected] "\n" 61 [email protected] "}"
62 [email protected] "}"
63 [email protected] "\n" 62 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0108_tuple_expr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0108_tuple_expr.rast
index 54f18adac..ea603e2c9 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0108_tuple_expr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0108_tuple_expr.rast
@@ -9,31 +9,30 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "("
17 [email protected] "(" 17 [email protected] ")"
18 [email protected] ")" 18 [email protected] ";"
19 [email protected] ";" 19 [email protected] "\n "
20 [email protected] "\n " 20 [email protected]
21 [email protected] 21 [email protected]
22 [email protected] 22 [email protected] "("
23 [email protected] "(" 23 [email protected]
24 [email protected] 24 [email protected] "1"
25 [email protected] "1" 25 [email protected] ")"
26 [email protected] ")" 26 [email protected] ";"
27 [email protected] ";" 27 [email protected] "\n "
28 [email protected] "\n " 28 [email protected]
29 [email protected] 29 [email protected]
30 [email protected] 30 [email protected] "("
31 [email protected] "(" 31 [email protected]
32 [email protected] 32 [email protected] "1"
33 [email protected] "1" 33 [email protected] ","
34 [email protected] "," 34 [email protected] ")"
35 [email protected] ")" 35 [email protected] ";"
36 [email protected] ";" 36 [email protected] "\n"
37 [email protected] "\n" 37 [email protected] "}"
38 [email protected] "}"
39 [email protected] "\n" 38 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0109_label.rast b/crates/ra_syntax/test_data/parser/inline/ok/0109_label.rast
index 6c9e45684..30ff96a7c 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0109_label.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0109_label.rast
@@ -9,60 +9,56 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected] "\'a"
18 [email protected] "\'a" 18 [email protected] ":"
19 [email protected] ":" 19 [email protected] " "
20 [email protected] " " 20 [email protected] "loop"
21 [email protected] "loop" 21 [email protected] " "
22 [email protected] " " 22 [email protected]
23 [email protected] 23 [email protected] "{"
24 [email protected] 24 [email protected] "}"
25 [email protected] "{" 25 [email protected] "\n "
26 [email protected] "}" 26 [email protected]
27 [email protected] "\n " 27 [email protected]
28 [email protected] 28 [email protected]
29 [email protected] 29 [email protected] "\'b"
30 [email protected] 30 [email protected] ":"
31 [email protected] "\'b" 31 [email protected] " "
32 [email protected] ":" 32 [email protected] "while"
33 [email protected] " " 33 [email protected] " "
34 [email protected] "while" 34 [email protected]
35 [email protected] " " 35 [email protected]
36 [email protected] 36 [email protected] "true"
37 [email protected] 37 [email protected] " "
38 [email protected] "true" 38 [email protected]
39 [email protected] " " 39 [email protected] "{"
40 [email protected] 40 [email protected] "}"
41 [email protected] 41 [email protected] "\n "
42 [email protected] "{" 42 [email protected]
43 [email protected] "}" 43 [email protected]
44 [email protected] "\n " 44 [email protected] "\'c"
45 [email protected] 45 [email protected] ":"
46 [email protected] 46 [email protected] " "
47 [email protected] "\'c" 47 [email protected] "for"
48 [email protected] ":" 48 [email protected] " "
49 [email protected] " " 49 [email protected]
50 [email protected] "for" 50 [email protected]
51 [email protected] " " 51 [email protected] "x"
52 [email protected] 52 [email protected] " "
53 [email protected] 53 [email protected] "in"
54 [email protected] "x" 54 [email protected] " "
55 [email protected] " " 55 [email protected]
56 [email protected] "in" 56 [email protected] "("
57 [email protected] " " 57 [email protected] ")"
58 [email protected] 58 [email protected] " "
59 [email protected] "(" 59 [email protected]
60 [email protected] ")" 60 [email protected] "{"
61 [email protected] " " 61 [email protected] "}"
62 [email protected] 62 [email protected] "\n"
63 [email protected] 63 [email protected] "}"
64 [email protected] "{"
65 [email protected] "}"
66 [email protected] "\n"
67 [email protected] "}"
68 [email protected] "\n" 64 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0111_tuple_pat.rast b/crates/ra_syntax/test_data/parser/inline/ok/0111_tuple_pat.rast
index a1c5475e7..b58f40ac1 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0111_tuple_pat.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0111_tuple_pat.rast
@@ -9,82 +9,81 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "("
19 [email protected] "(" 19 [email protected]
20 [email protected] 20 [email protected]
21 [email protected] 21 [email protected] "a"
22 [email protected] "a" 22 [email protected] ","
23 [email protected] "," 23 [email protected] " "
24 [email protected] " " 24 [email protected]
25 [email protected] 25 [email protected]
26 [email protected] 26 [email protected] "b"
27 [email protected] "b" 27 [email protected] ","
28 [email protected] "," 28 [email protected] " "
29 [email protected] " " 29 [email protected]
30 [email protected] 30 [email protected] ".."
31 [email protected] ".." 31 [email protected] ")"
32 [email protected] ")" 32 [email protected] " "
33 [email protected] " " 33 [email protected] "="
34 [email protected] "=" 34 [email protected] " "
35 [email protected] " " 35 [email protected]
36 [email protected] 36 [email protected] "("
37 [email protected] "(" 37 [email protected] ")"
38 [email protected] ")" 38 [email protected] ";"
39 [email protected] ";" 39 [email protected] "\n "
40 [email protected] "\n " 40 [email protected]
41 [email protected] 41 [email protected] "let"
42 [email protected] "let" 42 [email protected] " "
43 [email protected] " " 43 [email protected]
44 [email protected] 44 [email protected] "("
45 [email protected] "(" 45 [email protected]
46 [email protected] 46 [email protected]
47 [email protected] 47 [email protected] "a"
48 [email protected] "a" 48 [email protected] ","
49 [email protected] "," 49 [email protected] ")"
50 [email protected] ")" 50 [email protected] " "
51 [email protected] " " 51 [email protected] "="
52 [email protected] "=" 52 [email protected] " "
53 [email protected] " " 53 [email protected]
54 [email protected] 54 [email protected] "("
55 [email protected] "(" 55 [email protected] ")"
56 [email protected] ")" 56 [email protected] ";"
57 [email protected] ";" 57 [email protected] "\n "
58 [email protected] "\n " 58 [email protected]
59 [email protected] 59 [email protected] "let"
60 [email protected] "let" 60 [email protected] " "
61 [email protected] " " 61 [email protected]
62 [email protected] 62 [email protected] "("
63 [email protected] "(" 63 [email protected]
64 [email protected] 64 [email protected] ".."
65 [email protected] ".." 65 [email protected] ")"
66 [email protected] ")" 66 [email protected] " "
67 [email protected] " " 67 [email protected] "="
68 [email protected] "=" 68 [email protected] " "
69 [email protected] " " 69 [email protected]
70 [email protected] 70 [email protected] "("
71 [email protected] "(" 71 [email protected] ")"
72 [email protected] ")" 72 [email protected] ";"
73 [email protected] ";" 73 [email protected] "\n "
74 [email protected] "\n " 74 [email protected]
75 [email protected] 75 [email protected] "let"
76 [email protected] "let" 76 [email protected] " "
77 [email protected] " " 77 [email protected]
78 [email protected] 78 [email protected] "("
79 [email protected] "(" 79 [email protected] ")"
80 [email protected] ")" 80 [email protected] " "
81 [email protected] " " 81 [email protected] "="
82 [email protected] "=" 82 [email protected] " "
83 [email protected] " " 83 [email protected]
84 [email protected] 84 [email protected] "("
85 [email protected] "(" 85 [email protected] ")"
86 [email protected] ")" 86 [email protected] ";"
87 [email protected] ";" 87 [email protected] "\n"
88 [email protected] "\n" 88 [email protected] "}"
89 [email protected] "}"
90 [email protected] "\n" 89 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0112_bind_pat.rast b/crates/ra_syntax/test_data/parser/inline/ok/0112_bind_pat.rast
index 42a770a83..b67714c17 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0112_bind_pat.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0112_bind_pat.rast
@@ -9,120 +9,119 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "let"
16 [email protected] "let" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected] "a"
20 [email protected] "a" 20 [email protected] " "
21 [email protected] " " 21 [email protected] "="
22 [email protected] "=" 22 [email protected] " "
23 [email protected] " " 23 [email protected]
24 [email protected] 24 [email protected] "("
25 [email protected] "(" 25 [email protected] ")"
26 [email protected] ")" 26 [email protected] ";"
27 [email protected] ";" 27 [email protected] "\n "
28 [email protected] "\n " 28 [email protected]
29 [email protected] 29 [email protected] "let"
30 [email protected] "let" 30 [email protected] " "
31 [email protected] " " 31 [email protected]
32 [email protected] 32 [email protected] "mut"
33 [email protected] "mut" 33 [email protected] " "
34 [email protected] " " 34 [email protected]
35 [email protected] 35 [email protected] "b"
36 [email protected] "b" 36 [email protected] " "
37 [email protected] " " 37 [email protected] "="
38 [email protected] "=" 38 [email protected] " "
39 [email protected] " " 39 [email protected]
40 [email protected] 40 [email protected] "("
41 [email protected] "(" 41 [email protected] ")"
42 [email protected] ")" 42 [email protected] ";"
43 [email protected] ";" 43 [email protected] "\n "
44 [email protected] "\n " 44 [email protected]
45 [email protected] 45 [email protected] "let"
46 [email protected] "let" 46 [email protected] " "
47 [email protected] " " 47 [email protected]
48 [email protected] 48 [email protected] "ref"
49 [email protected] "ref" 49 [email protected] " "
50 [email protected] " " 50 [email protected]
51 [email protected] 51 [email protected] "c"
52 [email protected] "c" 52 [email protected] " "
53 [email protected] " " 53 [email protected] "="
54 [email protected] "=" 54 [email protected] " "
55 [email protected] " " 55 [email protected]
56 [email protected] 56 [email protected] "("
57 [email protected] "(" 57 [email protected] ")"
58 [email protected] ")" 58 [email protected] ";"
59 [email protected] ";" 59 [email protected] "\n "
60 [email protected] "\n " 60 [email protected]
61 [email protected] 61 [email protected] "let"
62 [email protected] "let" 62 [email protected] " "
63 [email protected] " " 63 [email protected]
64 [email protected] 64 [email protected] "ref"
65 [email protected] "ref" 65 [email protected] " "
66 [email protected] " " 66 [email protected] "mut"
67 [email protected] "mut" 67 [email protected] " "
68 [email protected] " " 68 [email protected]
69 [email protected] 69 [email protected] "d"
70 [email protected] "d" 70 [email protected] " "
71 [email protected] " " 71 [email protected] "="
72 [email protected] "=" 72 [email protected] " "
73 [email protected] " " 73 [email protected]
74 [email protected] 74 [email protected] "("
75 [email protected] "(" 75 [email protected] ")"
76 [email protected] ")" 76 [email protected] ";"
77 [email protected] ";" 77 [email protected] "\n "
78 [email protected] "\n " 78 [email protected]
79 [email protected] 79 [email protected] "let"
80 [email protected] "let" 80 [email protected] " "
81 [email protected] " " 81 [email protected]
82 [email protected] 82 [email protected]
83 [email protected] 83 [email protected] "e"
84 [email protected] "e" 84 [email protected] " "
85 [email protected] " " 85 [email protected] "@"
86 [email protected] "@" 86 [email protected] " "
87 [email protected] " " 87 [email protected]
88 [email protected] 88 [email protected] "_"
89 [email protected] "_" 89 [email protected] " "
90 [email protected] " " 90 [email protected] "="
91 [email protected] "=" 91 [email protected] " "
92 [email protected] " " 92 [email protected]
93 [email protected] 93 [email protected] "("
94 [email protected] "(" 94 [email protected] ")"
95 [email protected] ")" 95 [email protected] ";"
96 [email protected] ";" 96 [email protected] "\n "
97 [email protected] "\n " 97 [email protected]
98 [email protected] 98 [email protected] "let"
99 [email protected] "let" 99 [email protected] " "
100 [email protected] " " 100 [email protected]
101 [email protected] 101 [email protected] "ref"
102 [email protected] "ref" 102 [email protected] " "
103 [email protected] " " 103 [email protected] "mut"
104 [email protected] "mut" 104 [email protected] " "
105 [email protected] " " 105 [email protected]
106 [email protected] 106 [email protected] "f"
107 [email protected] "f" 107 [email protected] " "
108 [email protected] " " 108 [email protected] "@"
109 [email protected] "@" 109 [email protected] " "
110 [email protected] " " 110 [email protected]
111 [email protected] 111 [email protected]
112 [email protected] 112 [email protected] "g"
113 [email protected] "g" 113 [email protected] " "
114 [email protected] " " 114 [email protected] "@"
115 [email protected] "@" 115 [email protected] " "
116 [email protected] " " 116 [email protected]
117 [email protected] 117 [email protected] "_"
118 [email protected] "_" 118 [email protected] " "
119 [email protected] " " 119 [email protected] "="
120 [email protected] "=" 120 [email protected] " "
121 [email protected] " " 121 [email protected]
122 [email protected] 122 [email protected] "("
123 [email protected] "(" 123 [email protected] ")"
124 [email protected] ")" 124 [email protected] ";"
125 [email protected] ";" 125 [email protected] "\n"
126 [email protected] "\n" 126 [email protected] "}"
127 [email protected] "}"
128 [email protected] "\n" 127 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0113_nocontentexpr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0113_nocontentexpr.rast
index 5414c90b8..5de480da9 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0113_nocontentexpr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0113_nocontentexpr.rast
@@ -8,50 +8,48 @@ [email protected]
8 [email protected] "(" 8 [email protected] "("
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] 10 [email protected]
11 [email protected] 11 [email protected] "{"
12 [email protected] "{" 12 [email protected] "\n "
13 [email protected] "\n " 13 [email protected] ";"
14 [email protected] ";" 14 [email protected] ";"
15 [email protected] ";" 15 [email protected] ";"
16 [email protected] ";" 16 [email protected]
17 [email protected] 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected]
21 [email protected] 21 [email protected]
22 [email protected] 22 [email protected] "some_expr"
23 [email protected] "some_expr" 23 [email protected]
24 [email protected] 24 [email protected] "("
25 [email protected] "(" 25 [email protected] ")"
26 [email protected] ")" 26 [email protected] ";"
27 [email protected] ";" 27 [email protected] ";"
28 [email protected] ";" 28 [email protected] ";"
29 [email protected] ";" 29 [email protected] ";"
30 [email protected] ";" 30 [email protected]
31 [email protected] 31 [email protected]
32 [email protected] 32 [email protected] "{"
33 [email protected] 33 [email protected] ";"
34 [email protected] "{" 34 [email protected] ";"
35 [email protected] ";" 35 [email protected] ";"
36 [email protected] ";" 36 [email protected] "}"
37 [email protected] ";" 37 [email protected] ";"
38 [email protected] "}" 38 [email protected] ";"
39 [email protected] ";" 39 [email protected] ";"
40 [email protected] ";" 40 [email protected] ";"
41 [email protected] ";" 41 [email protected]
42 [email protected] ";" 42 [email protected]
43 [email protected] 43 [email protected]
44 [email protected] 44 [email protected]
45 [email protected] 45 [email protected]
46 [email protected] 46 [email protected] "Ok"
47 [email protected] 47 [email protected]
48 [email protected] "Ok" 48 [email protected] "("
49 [email protected] 49 [email protected]
50 [email protected] "(" 50 [email protected] "("
51 [email protected] 51 [email protected] ")"
52 [email protected] "(" 52 [email protected] ")"
53 [email protected] ")" 53 [email protected] "\n"
54 [email protected] ")" 54 [email protected] "}"
55 [email protected] "\n"
56 [email protected] "}"
57 [email protected] "\n" 55 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0118_match_guard.rast b/crates/ra_syntax/test_data/parser/inline/ok/0118_match_guard.rast
index 8e080fb60..e152c6b6c 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0118_match_guard.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0118_match_guard.rast
@@ -9,40 +9,39 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "match"
16 [email protected] "match" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "("
19 [email protected] "(" 19 [email protected] ")"
20 [email protected] ")" 20 [email protected] " "
21 [email protected] " " 21 [email protected]
22 [email protected] 22 [email protected] "{"
23 [email protected] "{" 23 [email protected] "\n "
24 [email protected] "\n " 24 [email protected]
25 [email protected] 25 [email protected]
26 [email protected] 26 [email protected] "_"
27 [email protected] "_" 27 [email protected] " "
28 [email protected] " " 28 [email protected]
29 [email protected] 29 [email protected] "if"
30 [email protected] "if" 30 [email protected] " "
31 [email protected] " " 31 [email protected]
32 [email protected] 32 [email protected]
33 [email protected] 33 [email protected]
34 [email protected] 34 [email protected]
35 [email protected] 35 [email protected] "foo"
36 [email protected] "foo" 36 [email protected] " "
37 [email protected] " " 37 [email protected] "=>"
38 [email protected] "=>" 38 [email protected] " "
39 [email protected] " " 39 [email protected]
40 [email protected] 40 [email protected] "("
41 [email protected] "(" 41 [email protected] ")"
42 [email protected] ")" 42 [email protected] ","
43 [email protected] "," 43 [email protected] "\n "
44 [email protected] "\n " 44 [email protected] "}"
45 [email protected] "}" 45 [email protected] "\n"
46 [email protected] "\n" 46 [email protected] "}"
47 [email protected] "}"
48 [email protected] "\n" 47 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0120_match_arms_inner_attribute.rast b/crates/ra_syntax/test_data/parser/inline/ok/0120_match_arms_inner_attribute.rast
index 728164f8e..b283ab804 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0120_match_arms_inner_attribute.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0120_match_arms_inner_attribute.rast
@@ -9,73 +9,72 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "match"
16 [email protected] "match" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "("
19 [email protected] "(" 19 [email protected] ")"
20 [email protected] ")" 20 [email protected] " "
21 [email protected] " " 21 [email protected]
22 [email protected] 22 [email protected] "{"
23 [email protected] "{" 23 [email protected] "\n "
24 [email protected] "\n " 24 [email protected]
25 [email protected] 25 [email protected] "#"
26 [email protected] "#" 26 [email protected] "!"
27 [email protected] "!" 27 [email protected] "["
28 [email protected] "[" 28 [email protected]
29 [email protected] 29 [email protected]
30 [email protected] 30 [email protected]
31 [email protected] 31 [email protected] "doc"
32 [email protected] "doc" 32 [email protected]
33 [email protected] 33 [email protected] "("
34 [email protected] "(" 34 [email protected] "\"Inner attribute\""
35 [email protected] "\"Inner attribute\"" 35 [email protected] ")"
36 [email protected] ")" 36 [email protected] "]"
37 [email protected] "]" 37 [email protected] "\n "
38 [email protected] "\n " 38 [email protected]
39 [email protected] 39 [email protected] "#"
40 [email protected] "#" 40 [email protected] "!"
41 [email protected] "!" 41 [email protected] "["
42 [email protected] "[" 42 [email protected]
43 [email protected] 43 [email protected]
44 [email protected] 44 [email protected]
45 [email protected] 45 [email protected] "doc"
46 [email protected] "doc" 46 [email protected]
47 [email protected] 47 [email protected] "("
48 [email protected] "(" 48 [email protected] "\"Can be\""
49 [email protected] "\"Can be\"" 49 [email protected] ")"
50 [email protected] ")" 50 [email protected] "]"
51 [email protected] "]" 51 [email protected] "\n "
52 [email protected] "\n " 52 [email protected]
53 [email protected] 53 [email protected] "#"
54 [email protected] "#" 54 [email protected] "!"
55 [email protected] "!" 55 [email protected] "["
56 [email protected] "[" 56 [email protected]
57 [email protected] 57 [email protected]
58 [email protected] 58 [email protected]
59 [email protected] 59 [email protected] "doc"
60 [email protected] "doc" 60 [email protected]
61 [email protected] 61 [email protected] "("
62 [email protected] "(" 62 [email protected] "\"Stacked\""
63 [email protected] "\"Stacked\"" 63 [email protected] ")"
64 [email protected] ")" 64 [email protected] "]"
65 [email protected] "]" 65 [email protected] "\n "
66 [email protected] "\n " 66 [email protected]
67 [email protected] 67 [email protected]
68 [email protected] 68 [email protected] "_"
69 [email protected] "_" 69 [email protected] " "
70 [email protected] " " 70 [email protected] "=>"
71 [email protected] "=>" 71 [email protected] " "
72 [email protected] " " 72 [email protected]
73 [email protected] 73 [email protected] "("
74 [email protected] "(" 74 [email protected] ")"
75 [email protected] ")" 75 [email protected] ","
76 [email protected] "," 76 [email protected] "\n "
77 [email protected] "\n " 77 [email protected] "}"
78 [email protected] "}" 78 [email protected] "\n"
79 [email protected] "\n" 79 [email protected] "}"
80 [email protected] "}"
81 [email protected] "\n" 80 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0121_match_arms_outer_attributes.rast b/crates/ra_syntax/test_data/parser/inline/ok/0121_match_arms_outer_attributes.rast
index 6123885e3..9d5470914 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0121_match_arms_outer_attributes.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0121_match_arms_outer_attributes.rast
@@ -9,138 +9,137 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected] "match"
16 [email protected] "match" 16 [email protected] " "
17 [email protected] " " 17 [email protected]
18 [email protected] 18 [email protected] "("
19 [email protected] "(" 19 [email protected] ")"
20 [email protected] ")" 20 [email protected] " "
21 [email protected] " " 21 [email protected]
22 [email protected] 22 [email protected] "{"
23 [email protected] "{" 23 [email protected] "\n "
24 [email protected] "\n " 24 [email protected]
25 [email protected] 25 [email protected]
26 [email protected] 26 [email protected] "#"
27 [email protected] "#" 27 [email protected] "["
28 [email protected] "[" 28 [email protected]
29 [email protected] 29 [email protected]
30 [email protected] 30 [email protected]
31 [email protected] 31 [email protected] "cfg"
32 [email protected] "cfg" 32 [email protected]
33 [email protected] 33 [email protected] "("
34 [email protected] "(" 34 [email protected] "feature"
35 [email protected] "feature" 35 [email protected] " "
36 [email protected] " " 36 [email protected] "="
37 [email protected] "=" 37 [email protected] " "
38 [email protected] " " 38 [email protected] "\"some\""
39 [email protected] "\"some\"" 39 [email protected] ")"
40 [email protected] ")" 40 [email protected] "]"
41 [email protected] "]" 41 [email protected] "\n "
42 [email protected] "\n " 42 [email protected]
43 [email protected] 43 [email protected] "_"
44 [email protected] "_" 44 [email protected] " "
45 [email protected] " " 45 [email protected] "=>"
46 [email protected] "=>" 46 [email protected] " "
47 [email protected] " " 47 [email protected]
48 [email protected] 48 [email protected] "("
49 [email protected] "(" 49 [email protected] ")"
50 [email protected] ")" 50 [email protected] ","
51 [email protected] "," 51 [email protected] "\n "
52 [email protected] "\n " 52 [email protected]
53 [email protected] 53 [email protected]
54 [email protected] 54 [email protected] "#"
55 [email protected] "#" 55 [email protected] "["
56 [email protected] "[" 56 [email protected]
57 [email protected] 57 [email protected]
58 [email protected] 58 [email protected]
59 [email protected] 59 [email protected] "cfg"
60 [email protected] "cfg" 60 [email protected]
61 [email protected] 61 [email protected] "("
62 [email protected] "(" 62 [email protected] "feature"
63 [email protected] "feature" 63 [email protected] " "
64 [email protected] " " 64 [email protected] "="
65 [email protected] "=" 65 [email protected] " "
66 [email protected] " " 66 [email protected] "\"other\""
67 [email protected] "\"other\"" 67 [email protected] ")"
68 [email protected] ")" 68 [email protected] "]"
69 [email protected] "]" 69 [email protected] "\n "
70 [email protected] "\n " 70 [email protected]
71 [email protected] 71 [email protected] "_"
72 [email protected] "_" 72 [email protected] " "
73 [email protected] " " 73 [email protected] "=>"
74 [email protected] "=>" 74 [email protected] " "
75 [email protected] " " 75 [email protected]
76 [email protected] 76 [email protected] "("
77 [email protected] "(" 77 [email protected] ")"
78 [email protected] ")" 78 [email protected] ","
79 [email protected] "," 79 [email protected] "\n "
80 [email protected] "\n " 80 [email protected]
81 [email protected] 81 [email protected]
82 [email protected] 82 [email protected] "#"
83 [email protected] "#" 83 [email protected] "["
84 [email protected] "[" 84 [email protected]
85 [email protected] 85 [email protected]
86 [email protected] 86 [email protected]
87 [email protected] 87 [email protected] "cfg"
88 [email protected] "cfg" 88 [email protected]
89 [email protected] 89 [email protected] "("
90 [email protected] "(" 90 [email protected] "feature"
91 [email protected] "feature" 91 [email protected] " "
92 [email protected] " " 92 [email protected] "="
93 [email protected] "=" 93 [email protected] " "
94 [email protected] " " 94 [email protected] "\"many\""
95 [email protected] "\"many\"" 95 [email protected] ")"
96 [email protected] ")" 96 [email protected] "]"
97 [email protected] "]" 97 [email protected] "\n "
98 [email protected] "\n " 98 [email protected]
99 [email protected] 99 [email protected] "#"
100 [email protected] "#" 100 [email protected] "["
101 [email protected] "[" 101 [email protected]
102 [email protected] 102 [email protected]
103 [email protected] 103 [email protected]
104 [email protected] 104 [email protected] "cfg"
105 [email protected] "cfg" 105 [email protected]
106 [email protected] 106 [email protected] "("
107 [email protected] "(" 107 [email protected] "feature"
108 [email protected] "feature" 108 [email protected] " "
109 [email protected] " " 109 [email protected] "="
110 [email protected] "=" 110 [email protected] " "
111 [email protected] " " 111 [email protected] "\"attributes\""
112 [email protected] "\"attributes\"" 112 [email protected] ")"
113 [email protected] ")" 113 [email protected] "]"
114 [email protected] "]" 114 [email protected] "\n "
115 [email protected] "\n " 115 [email protected]
116 [email protected] 116 [email protected] "#"
117 [email protected] "#" 117 [email protected] "["
118 [email protected] "[" 118 [email protected]
119 [email protected] 119 [email protected]
120 [email protected] 120 [email protected]
121 [email protected] 121 [email protected] "cfg"
122 [email protected] "cfg" 122 [email protected]
123 [email protected] 123 [email protected] "("
124 [email protected] "(" 124 [email protected] "feature"
125 [email protected] "feature" 125 [email protected] " "
126 [email protected] " " 126 [email protected] "="
127 [email protected] "=" 127 [email protected] " "
128 [email protected] " " 128 [email protected] "\"before\""
129 [email protected] "\"before\"" 129 [email protected] ")"
130 [email protected] ")" 130 [email protected] "]"
131 [email protected] "]" 131 [email protected] "\n "
132 [email protected] "\n " 132 [email protected]
133 [email protected] 133 [email protected] "_"
134 [email protected] "_" 134 [email protected] " "
135 [email protected] " " 135 [email protected] "=>"
136 [email protected] "=>" 136 [email protected] " "
137 [email protected] " " 137 [email protected]
138 [email protected] 138 [email protected] "("
139 [email protected] "(" 139 [email protected] ")"
140 [email protected] ")" 140 [email protected] ","
141 [email protected] "," 141 [email protected] "\n "
142 [email protected] "\n " 142 [email protected] "}"
143 [email protected] "}" 143 [email protected] "\n"
144 [email protected] "\n" 144 [email protected] "}"
145 [email protected] "}"
146 [email protected] "\n" 145 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0122_generic_lifetime_type_attribute.rast b/crates/ra_syntax/test_data/parser/inline/ok/0122_generic_lifetime_type_attribute.rast
index 67b9c10d5..ada2fc54e 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0122_generic_lifetime_type_attribute.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0122_generic_lifetime_type_attribute.rast
@@ -59,8 +59,7 @@ [email protected]
59 [email protected] ")" 59 [email protected] ")"
60 [email protected] " " 60 [email protected] " "
61 [email protected] 61 [email protected]
62 [email protected] 62 [email protected] "{"
63 [email protected] "{" 63 [email protected] "\n"
64 [email protected] "\n" 64 [email protected] "}"
65 [email protected] "}"
66 [email protected] "\n" 65 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0124_async_fn.rast b/crates/ra_syntax/test_data/parser/inline/ok/0124_async_fn.rast
index baf22a8d7..6178dfe59 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0124_async_fn.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0124_async_fn.rast
@@ -11,7 +11,6 @@ [email protected]
11 [email protected] ")" 11 [email protected] ")"
12 [email protected] " " 12 [email protected] " "
13 [email protected] 13 [email protected]
14 [email protected] 14 [email protected] "{"
15 [email protected] "{" 15 [email protected] "}"
16 [email protected] "}"
17 [email protected] "\n" 16 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0125_crate_keyword_path.rast b/crates/ra_syntax/test_data/parser/inline/ok/0125_crate_keyword_path.rast
index 16f5b90b6..ced59b7c1 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0125_crate_keyword_path.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0125_crate_keyword_path.rast
@@ -9,24 +9,23 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] " "
14 [email protected] " " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected]
18 [email protected] 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected] "crate"
21 [email protected] "crate" 21 [email protected] "::"
22 [email protected] "::" 22 [email protected]
23 [email protected] 23 [email protected]
24 [email protected] 24 [email protected] "foo"
25 [email protected] "foo" 25 [email protected]
26 [email protected] 26 [email protected] "("
27 [email protected] "(" 27 [email protected] ")"
28 [email protected] ")" 28 [email protected] ";"
29 [email protected] ";" 29 [email protected] " "
30 [email protected] " " 30 [email protected] "}"
31 [email protected] "}"
32 [email protected] "\n" 31 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0125_record_literal_field_with_attr.rast b/crates/ra_syntax/test_data/parser/inline/ok/0125_record_literal_field_with_attr.rast
index 07ed14773..97611f7f3 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0125_record_literal_field_with_attr.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0125_record_literal_field_with_attr.rast
@@ -9,40 +9,39 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected]
17 [email protected] 17 [email protected]
18 [email protected] 18 [email protected] "S"
19 [email protected] "S" 19 [email protected] " "
20 [email protected] " " 20 [email protected]
21 [email protected] 21 [email protected] "{"
22 [email protected] "{" 22 [email protected] " "
23 [email protected] " " 23 [email protected]
24 [email protected] 24 [email protected]
25 [email protected] 25 [email protected] "#"
26 [email protected] "#" 26 [email protected] "["
27 [email protected] "[" 27 [email protected]
28 [email protected] 28 [email protected]
29 [email protected] 29 [email protected]
30 [email protected] 30 [email protected] "cfg"
31 [email protected] "cfg" 31 [email protected]
32 [email protected] 32 [email protected] "("
33 [email protected] "(" 33 [email protected] "test"
34 [email protected] "test" 34 [email protected] ")"
35 [email protected] ")" 35 [email protected] "]"
36 [email protected] "]" 36 [email protected] " "
37 [email protected] " " 37 [email protected]
38 [email protected] 38 [email protected] "field"
39 [email protected] "field" 39 [email protected] ":"
40 [email protected] ":" 40 [email protected] " "
41 [email protected] " " 41 [email protected]
42 [email protected] 42 [email protected] "1"
43 [email protected] "1" 43 [email protected] " "
44 [email protected] " " 44 [email protected] "}"
45 [email protected] "}" 45 [email protected] "\n"
46 [email protected] "\n" 46 [email protected] "}"
47 [email protected] "}"
48 [email protected] "\n" 47 [email protected] "\n"
diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0126_attr_on_expr_stmt.rast b/crates/ra_syntax/test_data/parser/inline/ok/0126_attr_on_expr_stmt.rast
index 8307d4c15..09221fc54 100644
--- a/crates/ra_syntax/test_data/parser/inline/ok/0126_attr_on_expr_stmt.rast
+++ b/crates/ra_syntax/test_data/parser/inline/ok/0126_attr_on_expr_stmt.rast
@@ -9,91 +9,89 @@ [email protected]
9 [email protected] ")" 9 [email protected] ")"
10 [email protected] " " 10 [email protected] " "
11 [email protected] 11 [email protected]
12 [email protected] 12 [email protected] "{"
13 [email protected] "{" 13 [email protected] "\n "
14 [email protected] "\n " 14 [email protected]
15 [email protected] 15 [email protected]
16 [email protected] 16 [email protected] "#"
17 [email protected] "#" 17 [email protected] "["
18 [email protected] "[" 18 [email protected]
19 [email protected] 19 [email protected]
20 [email protected] 20 [email protected]
21 [email protected] 21 [email protected] "A"
22 [email protected] "A" 22 [email protected] "]"
23 [email protected] "]" 23 [email protected] " "
24 [email protected] " " 24 [email protected]
25 [email protected] 25 [email protected]
26 [email protected] 26 [email protected]
27 [email protected] 27 [email protected]
28 [email protected] 28 [email protected]
29 [email protected] 29 [email protected] "foo"
30 IDENT@2