From 470fc4765cd3ccc764d3265034d18766374371aa Mon Sep 17 00:00:00 2001 From: Aleksey Kladov Date: Mon, 2 Sep 2019 19:33:21 +0300 Subject: update test data --- .../parser/inline/ok/0001_trait_item_list.txt | 7 +- .../parser/inline/ok/0003_where_pred_for.txt | 9 +- .../parser/inline/ok/0005_function_type_params.txt | 7 +- .../test_data/parser/inline/ok/0006_self_param.txt | 35 +- .../test_data/parser/inline/ok/0008_path_part.txt | 169 +++++----- .../test_data/parser/inline/ok/0009_loop_expr.txt | 28 +- .../test_data/parser/inline/ok/0011_field_expr.txt | 97 +++--- .../parser/inline/ok/0015_continue_expr.txt | 50 +-- .../parser/inline/ok/0018_arb_self_types.txt | 14 +- .../test_data/parser/inline/ok/0019_unary_expr.txt | 67 ++-- .../parser/inline/ok/0021_impl_item_list.txt | 14 +- .../test_data/parser/inline/ok/0024_slice_pat.txt | 59 ++-- .../parser/inline/ok/0026_tuple_pat_fields.txt | 185 +++++------ .../test_data/parser/inline/ok/0027_ref_pat.txt | 77 ++--- .../test_data/parser/inline/ok/0029_cast_expr.txt | 157 ++++----- .../test_data/parser/inline/ok/0030_cond.txt | 365 +++++++++++---------- .../test_data/parser/inline/ok/0031_while_expr.txt | 113 +++---- .../test_data/parser/inline/ok/0034_break_expr.txt | 86 ++--- .../parser/inline/ok/0036_unsafe_extern_fn.txt | 7 +- .../test_data/parser/inline/ok/0037_qual_paths.txt | 69 ++-- .../parser/inline/ok/0038_full_range_expr.txt | 35 +- .../parser/inline/ok/0040_crate_keyword_vis.txt | 9 +- .../test_data/parser/inline/ok/0042_call_expr.txt | 273 +++++++-------- .../parser/inline/ok/0044_block_items.txt | 36 +- .../inline/ok/0045_param_list_opt_patterns.txt | 7 +- .../inline/ok/0048_path_type_with_bounds.txt | 14 +- .../test_data/parser/inline/ok/0053_path_expr.txt | 169 +++++----- .../parser/inline/ok/0055_literal_pattern.txt | 131 ++++---- .../parser/inline/ok/0056_where_clause.txt | 7 +- .../test_data/parser/inline/ok/0057_const_fn.txt | 7 +- .../test_data/parser/inline/ok/0058_range_pat.txt | 143 ++++---- .../parser/inline/ok/0059_match_arms_commas.txt | 97 +++--- .../test_data/parser/inline/ok/0061_record_lit.txt | 215 ++++++------ .../parser/inline/ok/0062_mod_contents.txt | 7 +- .../test_data/parser/inline/ok/0064_if_expr.txt | 176 +++++----- .../test_data/parser/inline/ok/0066_match_arm.txt | 277 ++++++++-------- .../inline/ok/0070_stmt_bin_expr_ambiguity.txt | 83 ++--- .../test_data/parser/inline/ok/0071_match_expr.txt | 67 ++-- .../parser/inline/ok/0072_return_expr.txt | 35 +- .../inline/ok/0074_stmt_postfix_expr_ambiguity.txt | 103 +++--- .../test_data/parser/inline/ok/0075_block.txt | 94 +++--- .../inline/ok/0076_function_where_clause.txt | 7 +- .../test_data/parser/inline/ok/0077_try_expr.txt | 29 +- .../parser/inline/ok/0080_postfix_range.txt | 39 +-- .../test_data/parser/inline/ok/0081_for_type.txt | 21 +- .../test_data/parser/inline/ok/0082_ref_expr.txt | 87 ++--- .../parser/inline/ok/0085_expr_literals.txt | 249 +++++++------- .../parser/inline/ok/0086_function_ret_type.txt | 14 +- .../parser/inline/ok/0088_break_ambiguity.txt | 114 +++---- .../test_data/parser/inline/ok/0089_extern_fn.txt | 7 +- .../test_data/parser/inline/ok/0093_index_expr.txt | 45 +-- .../parser/inline/ok/0095_placeholder_pat.txt | 35 +- .../parser/inline/ok/0096_no_semi_after_block.txt | 233 ++++++------- .../parser/inline/ok/0098_const_unsafe_fn.txt | 7 +- .../test_data/parser/inline/ok/0099_param_list.txt | 28 +- .../test_data/parser/inline/ok/0100_for_expr.txt | 48 +-- .../test_data/parser/inline/ok/0101_unsafe_fn.txt | 7 +- .../inline/ok/0102_record_field_pat_list.txt | 239 +++++++------- .../test_data/parser/inline/ok/0103_array_expr.txt | 87 ++--- .../test_data/parser/inline/ok/0105_block_expr.txt | 63 ++-- .../parser/inline/ok/0106_lambda_expr.txt | 257 +++++++-------- .../parser/inline/ok/0107_method_call_expr.txt | 103 +++--- .../test_data/parser/inline/ok/0108_tuple_expr.txt | 55 ++-- .../test_data/parser/inline/ok/0109_label.txt | 110 ++++--- .../test_data/parser/inline/ok/0111_tuple_pat.txt | 59 ++-- .../test_data/parser/inline/ok/0112_bind_pat.txt | 233 ++++++------- .../parser/inline/ok/0113_nocontentexpr.txt | 93 +++--- .../parser/inline/ok/0118_match_guard.txt | 73 +++-- .../inline/ok/0120_match_arms_inner_attribute.txt | 127 +++---- .../inline/ok/0121_match_arms_outer_attributes.txt | 249 +++++++------- .../ok/0122_generic_lifetime_type_attribute.txt | 9 +- .../test_data/parser/inline/ok/0124_async_fn.txt | 7 +- .../parser/inline/ok/0125_crate_keyword_path.txt | 41 +-- .../ok/0125_record_literal_field_with_attr.txt | 69 ++-- .../parser/inline/ok/0126_attr_on_expr_stmt.txt | 155 ++++----- .../inline/ok/0127_attr_on_last_expr_in_block.txt | 87 ++--- .../parser/inline/ok/0128_combined_fns.txt | 14 +- .../test_data/parser/inline/ok/0129_marco_pat.txt | 51 +-- .../test_data/parser/inline/ok/0130_let_stmt.txt | 181 +++++----- .../parser/inline/ok/0130_try_block_expr.txt | 42 +-- .../test_data/parser/inline/ok/0132_box_expr.txt | 157 ++++----- .../parser/inline/ok/0132_default_fn_type.txt | 7 +- .../inline/ok/0134_nocontentexpr_after_item.txt | 104 +++--- .../test_data/parser/inline/ok/0137_await_expr.txt | 117 +++---- .../inline/ok/0138_associated_type_bounds.txt | 7 +- .../inline/ok/0138_expression_after_block.txt | 109 +++--- .../inline/ok/0138_self_param_outer_attr.txt | 7 +- .../parser/inline/ok/0139_param_outer_arg.txt | 7 +- .../parser/inline/ok/0142_for_range_from.txt | 60 ++-- .../test_data/parser/inline/ok/0143_box_pat.txt | 197 +++++------ 90 files changed, 3943 insertions(+), 3803 deletions(-) (limited to 'crates/ra_syntax/test_data/parser/inline/ok') diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0001_trait_item_list.txt b/crates/ra_syntax/test_data/parser/inline/ok/0001_trait_item_list.txt index 18f02bb22..d4e710dd4 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0001_trait_item_list.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0001_trait_item_list.txt @@ -50,9 +50,10 @@ SOURCE_FILE@[0; 83) L_PAREN@[56; 57) "(" R_PAREN@[57; 58) ")" WHITESPACE@[58; 59) " " - BLOCK@[59; 61) - L_CURLY@[59; 60) "{" - R_CURLY@[60; 61) "}" + BLOCK_EXPR@[59; 61) + BLOCK@[59; 61) + L_CURLY@[59; 60) "{" + R_CURLY@[60; 61) "}" WHITESPACE@[61; 66) "\n " FN_DEF@[66; 80) FN_KW@[66; 68) "fn" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0003_where_pred_for.txt b/crates/ra_syntax/test_data/parser/inline/ok/0003_where_pred_for.txt index 8a21ee968..e3f5a7f04 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0003_where_pred_for.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0003_where_pred_for.txt @@ -54,8 +54,9 @@ SOURCE_FILE@[0; 49) IDENT@[40; 43) "str" R_PAREN@[43; 44) ")" WHITESPACE@[44; 45) "\n" - BLOCK@[45; 48) - L_CURLY@[45; 46) "{" - WHITESPACE@[46; 47) " " - R_CURLY@[47; 48) "}" + BLOCK_EXPR@[45; 48) + BLOCK@[45; 48) + L_CURLY@[45; 46) "{" + WHITESPACE@[46; 47) " " + R_CURLY@[47; 48) "}" WHITESPACE@[48; 49) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0005_function_type_params.txt b/crates/ra_syntax/test_data/parser/inline/ok/0005_function_type_params.txt index c1a70d566..8ae7909f9 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0005_function_type_params.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0005_function_type_params.txt @@ -31,7 +31,8 @@ SOURCE_FILE@[0; 28) PARAM_LIST@[23; 25) L_PAREN@[23; 24) "(" R_PAREN@[24; 25) ")" - BLOCK@[25; 27) - L_CURLY@[25; 26) "{" - R_CURLY@[26; 27) "}" + BLOCK_EXPR@[25; 27) + BLOCK@[25; 27) + L_CURLY@[25; 26) "{" + R_CURLY@[26; 27) "}" WHITESPACE@[27; 28) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0006_self_param.txt b/crates/ra_syntax/test_data/parser/inline/ok/0006_self_param.txt index 8e210a6ca..0ccd12b0a 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0006_self_param.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0006_self_param.txt @@ -22,9 +22,10 @@ SOURCE_FILE@[0; 128) SELF_KW@[18; 22) "self" R_PAREN@[22; 23) ")" WHITESPACE@[23; 24) " " - BLOCK@[24; 26) - L_CURLY@[24; 25) "{" - R_CURLY@[25; 26) "}" + BLOCK_EXPR@[24; 26) + BLOCK@[24; 26) + L_CURLY@[24; 25) "{" + R_CURLY@[25; 26) "}" WHITESPACE@[26; 31) "\n " FN_DEF@[31; 46) FN_KW@[31; 33) "fn" @@ -39,9 +40,10 @@ SOURCE_FILE@[0; 128) COMMA@[41; 42) "," R_PAREN@[42; 43) ")" WHITESPACE@[43; 44) " " - BLOCK@[44; 46) - L_CURLY@[44; 45) "{" - R_CURLY@[45; 46) "}" + BLOCK_EXPR@[44; 46) + BLOCK@[44; 46) + L_CURLY@[44; 45) "{" + R_CURLY@[45; 46) "}" WHITESPACE@[46; 51) "\n " FN_DEF@[51; 69) FN_KW@[51; 53) "fn" @@ -58,9 +60,10 @@ SOURCE_FILE@[0; 128) COMMA@[64; 65) "," R_PAREN@[65; 66) ")" WHITESPACE@[66; 67) " " - BLOCK@[67; 69) - L_CURLY@[67; 68) "{" - R_CURLY@[68; 69) "}" + BLOCK_EXPR@[67; 69) + BLOCK@[67; 69) + L_CURLY@[67; 68) "{" + R_CURLY@[68; 69) "}" WHITESPACE@[69; 74) "\n " FN_DEF@[74; 103) FN_KW@[74; 76) "fn" @@ -91,9 +94,10 @@ SOURCE_FILE@[0; 128) IDENT@[96; 99) "i32" R_PAREN@[99; 100) ")" WHITESPACE@[100; 101) " " - BLOCK@[101; 103) - L_CURLY@[101; 102) "{" - R_CURLY@[102; 103) "}" + BLOCK_EXPR@[101; 103) + BLOCK@[101; 103) + L_CURLY@[101; 102) "{" + R_CURLY@[102; 103) "}" WHITESPACE@[103; 108) "\n " FN_DEF@[108; 125) FN_KW@[108; 110) "fn" @@ -108,9 +112,10 @@ SOURCE_FILE@[0; 128) SELF_KW@[117; 121) "self" R_PAREN@[121; 122) ")" WHITESPACE@[122; 123) " " - BLOCK@[123; 125) - L_CURLY@[123; 124) "{" - R_CURLY@[124; 125) "}" + BLOCK_EXPR@[123; 125) + BLOCK@[123; 125) + L_CURLY@[123; 124) "{" + R_CURLY@[124; 125) "}" WHITESPACE@[125; 126) "\n" R_CURLY@[126; 127) "}" WHITESPACE@[127; 128) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0008_path_part.txt b/crates/ra_syntax/test_data/parser/inline/ok/0008_path_part.txt index 4108762e5..80bb7733c 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0008_path_part.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0008_path_part.txt @@ -8,88 +8,89 @@ SOURCE_FILE@[0; 103) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 102) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - LET_STMT@[15; 33) - LET_KW@[15; 18) "let" - WHITESPACE@[18; 19) " " - PATH_PAT@[19; 27) - PATH@[19; 27) - PATH@[19; 22) - PATH_SEGMENT@[19; 22) - NAME_REF@[19; 22) - IDENT@[19; 22) "foo" - COLONCOLON@[22; 24) "::" - PATH_SEGMENT@[24; 27) - NAME_REF@[24; 27) - IDENT@[24; 27) "Bar" - WHITESPACE@[27; 28) " " - EQ@[28; 29) "=" - WHITESPACE@[29; 30) " " - TUPLE_EXPR@[30; 32) - L_PAREN@[30; 31) "(" - R_PAREN@[31; 32) ")" - SEMI@[32; 33) ";" - WHITESPACE@[33; 38) "\n " - LET_STMT@[38; 53) - LET_KW@[38; 41) "let" - WHITESPACE@[41; 42) " " - PATH_PAT@[42; 47) - PATH@[42; 47) - PATH_SEGMENT@[42; 47) - COLONCOLON@[42; 44) "::" - NAME_REF@[44; 47) - IDENT@[44; 47) "Bar" - WHITESPACE@[47; 48) " " - EQ@[48; 49) "=" - WHITESPACE@[49; 50) " " - TUPLE_EXPR@[50; 52) - L_PAREN@[50; 51) "(" - R_PAREN@[51; 52) ")" - SEMI@[52; 53) ";" - WHITESPACE@[53; 58) "\n " - LET_STMT@[58; 78) - LET_KW@[58; 61) "let" - WHITESPACE@[61; 62) " " - RECORD_PAT@[62; 72) - PATH@[62; 65) - PATH_SEGMENT@[62; 65) - NAME_REF@[62; 65) - IDENT@[62; 65) "Bar" - WHITESPACE@[65; 66) " " - RECORD_FIELD_PAT_LIST@[66; 72) - L_CURLY@[66; 67) "{" - WHITESPACE@[67; 68) " " - DOTDOT@[68; 70) ".." - WHITESPACE@[70; 71) " " - R_CURLY@[71; 72) "}" - WHITESPACE@[72; 73) " " - EQ@[73; 74) "=" - WHITESPACE@[74; 75) " " - TUPLE_EXPR@[75; 77) - L_PAREN@[75; 76) "(" - R_PAREN@[76; 77) ")" - SEMI@[77; 78) ";" - WHITESPACE@[78; 83) "\n " - LET_STMT@[83; 100) - LET_KW@[83; 86) "let" - WHITESPACE@[86; 87) " " - TUPLE_STRUCT_PAT@[87; 94) - PATH@[87; 90) - PATH_SEGMENT@[87; 90) - NAME_REF@[87; 90) - IDENT@[87; 90) "Bar" - L_PAREN@[90; 91) "(" - DOTDOT@[91; 93) ".." - R_PAREN@[93; 94) ")" - WHITESPACE@[94; 95) " " - EQ@[95; 96) "=" - WHITESPACE@[96; 97) " " - TUPLE_EXPR@[97; 99) - L_PAREN@[97; 98) "(" - R_PAREN@[98; 99) ")" - SEMI@[99; 100) ";" - WHITESPACE@[100; 101) "\n" - R_CURLY@[101; 102) "}" + BLOCK_EXPR@[9; 102) + BLOCK@[9; 102) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + LET_STMT@[15; 33) + LET_KW@[15; 18) "let" + WHITESPACE@[18; 19) " " + PATH_PAT@[19; 27) + PATH@[19; 27) + PATH@[19; 22) + PATH_SEGMENT@[19; 22) + NAME_REF@[19; 22) + IDENT@[19; 22) "foo" + COLONCOLON@[22; 24) "::" + PATH_SEGMENT@[24; 27) + NAME_REF@[24; 27) + IDENT@[24; 27) "Bar" + WHITESPACE@[27; 28) " " + EQ@[28; 29) "=" + WHITESPACE@[29; 30) " " + TUPLE_EXPR@[30; 32) + L_PAREN@[30; 31) "(" + R_PAREN@[31; 32) ")" + SEMI@[32; 33) ";" + WHITESPACE@[33; 38) "\n " + LET_STMT@[38; 53) + LET_KW@[38; 41) "let" + WHITESPACE@[41; 42) " " + PATH_PAT@[42; 47) + PATH@[42; 47) + PATH_SEGMENT@[42; 47) + COLONCOLON@[42; 44) "::" + NAME_REF@[44; 47) + IDENT@[44; 47) "Bar" + WHITESPACE@[47; 48) " " + EQ@[48; 49) "=" + WHITESPACE@[49; 50) " " + TUPLE_EXPR@[50; 52) + L_PAREN@[50; 51) "(" + R_PAREN@[51; 52) ")" + SEMI@[52; 53) ";" + WHITESPACE@[53; 58) "\n " + LET_STMT@[58; 78) + LET_KW@[58; 61) "let" + WHITESPACE@[61; 62) " " + RECORD_PAT@[62; 72) + PATH@[62; 65) + PATH_SEGMENT@[62; 65) + NAME_REF@[62; 65) + IDENT@[62; 65) "Bar" + WHITESPACE@[65; 66) " " + RECORD_FIELD_PAT_LIST@[66; 72) + L_CURLY@[66; 67) "{" + WHITESPACE@[67; 68) " " + DOTDOT@[68; 70) ".." + WHITESPACE@[70; 71) " " + R_CURLY@[71; 72) "}" + WHITESPACE@[72; 73) " " + EQ@[73; 74) "=" + WHITESPACE@[74; 75) " " + TUPLE_EXPR@[75; 77) + L_PAREN@[75; 76) "(" + R_PAREN@[76; 77) ")" + SEMI@[77; 78) ";" + WHITESPACE@[78; 83) "\n " + LET_STMT@[83; 100) + LET_KW@[83; 86) "let" + WHITESPACE@[86; 87) " " + TUPLE_STRUCT_PAT@[87; 94) + PATH@[87; 90) + PATH_SEGMENT@[87; 90) + NAME_REF@[87; 90) + IDENT@[87; 90) "Bar" + L_PAREN@[90; 91) "(" + DOTDOT@[91; 93) ".." + R_PAREN@[93; 94) ")" + WHITESPACE@[94; 95) " " + EQ@[95; 96) "=" + WHITESPACE@[96; 97) " " + TUPLE_EXPR@[97; 99) + L_PAREN@[97; 98) "(" + R_PAREN@[98; 99) ")" + SEMI@[99; 100) ";" + WHITESPACE@[100; 101) "\n" + R_CURLY@[101; 102) "}" WHITESPACE@[102; 103) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0009_loop_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0009_loop_expr.txt index 8240aba15..2d8872022 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0009_loop_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0009_loop_expr.txt @@ -8,17 +8,19 @@ SOURCE_FILE@[0; 26) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 25) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 23) - LOOP_EXPR@[15; 22) - LOOP_KW@[15; 19) "loop" - WHITESPACE@[19; 20) " " - BLOCK@[20; 22) - L_CURLY@[20; 21) "{" - R_CURLY@[21; 22) "}" - SEMI@[22; 23) ";" - WHITESPACE@[23; 24) "\n" - R_CURLY@[24; 25) "}" + BLOCK_EXPR@[9; 25) + BLOCK@[9; 25) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 23) + LOOP_EXPR@[15; 22) + LOOP_KW@[15; 19) "loop" + WHITESPACE@[19; 20) " " + BLOCK_EXPR@[20; 22) + BLOCK@[20; 22) + L_CURLY@[20; 21) "{" + R_CURLY@[21; 22) "}" + SEMI@[22; 23) ";" + WHITESPACE@[23; 24) "\n" + R_CURLY@[24; 25) "}" WHITESPACE@[25; 26) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0011_field_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0011_field_expr.txt index 1d2cf2761..29b268b55 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0011_field_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0011_field_expr.txt @@ -8,52 +8,53 @@ SOURCE_FILE@[0; 48) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 47) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 21) - FIELD_EXPR@[15; 20) - PATH_EXPR@[15; 16) - PATH@[15; 16) - PATH_SEGMENT@[15; 16) - NAME_REF@[15; 16) - IDENT@[15; 16) "x" - DOT@[16; 17) "." - NAME_REF@[17; 20) - IDENT@[17; 20) "foo" - SEMI@[20; 21) ";" - WHITESPACE@[21; 26) "\n " - EXPR_STMT@[26; 34) - FIELD_EXPR@[26; 33) - FIELD_EXPR@[26; 29) - PATH_EXPR@[26; 27) - PATH@[26; 27) - PATH_SEGMENT@[26; 27) - NAME_REF@[26; 27) - IDENT@[26; 27) "x" - DOT@[27; 28) "." - NAME_REF@[28; 29) - INT_NUMBER@[28; 29) "0" - DOT@[29; 30) "." - NAME_REF@[30; 33) - IDENT@[30; 33) "bar" - SEMI@[33; 34) ";" - WHITESPACE@[34; 39) "\n " - EXPR_STMT@[39; 45) - CALL_EXPR@[39; 44) - FIELD_EXPR@[39; 42) - PATH_EXPR@[39; 40) - PATH@[39; 40) - PATH_SEGMENT@[39; 40) - NAME_REF@[39; 40) - IDENT@[39; 40) "x" - DOT@[40; 41) "." - NAME_REF@[41; 42) - INT_NUMBER@[41; 42) "0" - ARG_LIST@[42; 44) - L_PAREN@[42; 43) "(" - R_PAREN@[43; 44) ")" - SEMI@[44; 45) ";" - WHITESPACE@[45; 46) "\n" - R_CURLY@[46; 47) "}" + BLOCK_EXPR@[9; 47) + BLOCK@[9; 47) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 21) + FIELD_EXPR@[15; 20) + PATH_EXPR@[15; 16) + PATH@[15; 16) + PATH_SEGMENT@[15; 16) + NAME_REF@[15; 16) + IDENT@[15; 16) "x" + DOT@[16; 17) "." + NAME_REF@[17; 20) + IDENT@[17; 20) "foo" + SEMI@[20; 21) ";" + WHITESPACE@[21; 26) "\n " + EXPR_STMT@[26; 34) + FIELD_EXPR@[26; 33) + FIELD_EXPR@[26; 29) + PATH_EXPR@[26; 27) + PATH@[26; 27) + PATH_SEGMENT@[26; 27) + NAME_REF@[26; 27) + IDENT@[26; 27) "x" + DOT@[27; 28) "." + NAME_REF@[28; 29) + INT_NUMBER@[28; 29) "0" + DOT@[29; 30) "." + NAME_REF@[30; 33) + IDENT@[30; 33) "bar" + SEMI@[33; 34) ";" + WHITESPACE@[34; 39) "\n " + EXPR_STMT@[39; 45) + CALL_EXPR@[39; 44) + FIELD_EXPR@[39; 42) + PATH_EXPR@[39; 40) + PATH@[39; 40) + PATH_SEGMENT@[39; 40) + NAME_REF@[39; 40) + IDENT@[39; 40) "x" + DOT@[40; 41) "." + NAME_REF@[41; 42) + INT_NUMBER@[41; 42) "0" + ARG_LIST@[42; 44) + L_PAREN@[42; 43) "(" + R_PAREN@[43; 44) ")" + SEMI@[44; 45) ";" + WHITESPACE@[45; 46) "\n" + R_CURLY@[46; 47) "}" WHITESPACE@[47; 48) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0015_continue_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0015_continue_expr.txt index e8cc32f2c..c051c1c86 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0015_continue_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0015_continue_expr.txt @@ -8,28 +8,30 @@ SOURCE_FILE@[0; 69) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 68) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - LOOP_EXPR@[15; 66) - LOOP_KW@[15; 19) "loop" - WHITESPACE@[19; 20) " " - BLOCK@[20; 66) - L_CURLY@[20; 21) "{" - WHITESPACE@[21; 30) "\n " - EXPR_STMT@[30; 39) - CONTINUE_EXPR@[30; 38) - CONTINUE_KW@[30; 38) "continue" - SEMI@[38; 39) ";" - WHITESPACE@[39; 48) "\n " - EXPR_STMT@[48; 60) - CONTINUE_EXPR@[48; 59) - CONTINUE_KW@[48; 56) "continue" - WHITESPACE@[56; 57) " " - LIFETIME@[57; 59) "\'l" - SEMI@[59; 60) ";" - WHITESPACE@[60; 65) "\n " - R_CURLY@[65; 66) "}" - WHITESPACE@[66; 67) "\n" - R_CURLY@[67; 68) "}" + BLOCK_EXPR@[9; 68) + BLOCK@[9; 68) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + LOOP_EXPR@[15; 66) + LOOP_KW@[15; 19) "loop" + WHITESPACE@[19; 20) " " + BLOCK_EXPR@[20; 66) + BLOCK@[20; 66) + L_CURLY@[20; 21) "{" + WHITESPACE@[21; 30) "\n " + EXPR_STMT@[30; 39) + CONTINUE_EXPR@[30; 38) + CONTINUE_KW@[30; 38) "continue" + SEMI@[38; 39) ";" + WHITESPACE@[39; 48) "\n " + EXPR_STMT@[48; 60) + CONTINUE_EXPR@[48; 59) + CONTINUE_KW@[48; 56) "continue" + WHITESPACE@[56; 57) " " + LIFETIME@[57; 59) "\'l" + SEMI@[59; 60) ";" + WHITESPACE@[60; 65) "\n " + R_CURLY@[65; 66) "}" + WHITESPACE@[66; 67) "\n" + R_CURLY@[67; 68) "}" WHITESPACE@[68; 69) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0018_arb_self_types.txt b/crates/ra_syntax/test_data/parser/inline/ok/0018_arb_self_types.txt index 67d0de0f0..d0beeb81e 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0018_arb_self_types.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0018_arb_self_types.txt @@ -31,9 +31,10 @@ SOURCE_FILE@[0; 69) IDENT@[25; 29) "Self" R_PAREN@[29; 30) ")" WHITESPACE@[30; 31) " " - BLOCK@[31; 33) - L_CURLY@[31; 32) "{" - R_CURLY@[32; 33) "}" + BLOCK_EXPR@[31; 33) + BLOCK@[31; 33) + L_CURLY@[31; 32) "{" + R_CURLY@[32; 33) "}" WHITESPACE@[33; 38) "\n " FN_DEF@[38; 66) FN_KW@[38; 40) "fn" @@ -64,9 +65,10 @@ SOURCE_FILE@[0; 69) R_ANGLE@[61; 62) ">" R_PAREN@[62; 63) ")" WHITESPACE@[63; 64) " " - BLOCK@[64; 66) - L_CURLY@[64; 65) "{" - R_CURLY@[65; 66) "}" + BLOCK_EXPR@[64; 66) + BLOCK@[64; 66) + L_CURLY@[64; 65) "{" + R_CURLY@[65; 66) "}" WHITESPACE@[66; 67) "\n" R_CURLY@[67; 68) "}" WHITESPACE@[68; 69) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0019_unary_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0019_unary_expr.txt index 42032f56c..2d71efd86 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0019_unary_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0019_unary_expr.txt @@ -8,37 +8,38 @@ SOURCE_FILE@[0; 44) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 43) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 20) - PREFIX_EXPR@[15; 19) - STAR@[15; 16) "*" - PREFIX_EXPR@[16; 19) - STAR@[16; 17) "*" - REF_EXPR@[17; 19) - AMP@[17; 18) "&" - LITERAL@[18; 19) - INT_NUMBER@[18; 19) "1" - SEMI@[19; 20) ";" - WHITESPACE@[20; 25) "\n " - EXPR_STMT@[25; 32) - PREFIX_EXPR@[25; 31) - EXCL@[25; 26) "!" - PREFIX_EXPR@[26; 31) - EXCL@[26; 27) "!" - LITERAL@[27; 31) - TRUE_KW@[27; 31) "true" - SEMI@[31; 32) ";" - WHITESPACE@[32; 37) "\n " - EXPR_STMT@[37; 41) - PREFIX_EXPR@[37; 40) - MINUS@[37; 38) "-" - PREFIX_EXPR@[38; 40) - MINUS@[38; 39) "-" - LITERAL@[39; 40) - INT_NUMBER@[39; 40) "1" - SEMI@[40; 41) ";" - WHITESPACE@[41; 42) "\n" - R_CURLY@[42; 43) "}" + BLOCK_EXPR@[9; 43) + BLOCK@[9; 43) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 20) + PREFIX_EXPR@[15; 19) + STAR@[15; 16) "*" + PREFIX_EXPR@[16; 19) + STAR@[16; 17) "*" + REF_EXPR@[17; 19) + AMP@[17; 18) "&" + LITERAL@[18; 19) + INT_NUMBER@[18; 19) "1" + SEMI@[19; 20) ";" + WHITESPACE@[20; 25) "\n " + EXPR_STMT@[25; 32) + PREFIX_EXPR@[25; 31) + EXCL@[25; 26) "!" + PREFIX_EXPR@[26; 31) + EXCL@[26; 27) "!" + LITERAL@[27; 31) + TRUE_KW@[27; 31) "true" + SEMI@[31; 32) ";" + WHITESPACE@[32; 37) "\n " + EXPR_STMT@[37; 41) + PREFIX_EXPR@[37; 40) + MINUS@[37; 38) "-" + PREFIX_EXPR@[38; 40) + MINUS@[38; 39) "-" + LITERAL@[39; 40) + INT_NUMBER@[39; 40) "1" + SEMI@[40; 41) ";" + WHITESPACE@[41; 42) "\n" + R_CURLY@[42; 43) "}" WHITESPACE@[43; 44) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0021_impl_item_list.txt b/crates/ra_syntax/test_data/parser/inline/ok/0021_impl_item_list.txt index a893833e1..0768f0518 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0021_impl_item_list.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0021_impl_item_list.txt @@ -54,9 +54,10 @@ SOURCE_FILE@[0; 89) L_PAREN@[60; 61) "(" R_PAREN@[61; 62) ")" WHITESPACE@[62; 63) " " - BLOCK@[63; 65) - L_CURLY@[63; 64) "{" - R_CURLY@[64; 65) "}" + BLOCK_EXPR@[63; 65) + BLOCK@[63; 65) + L_CURLY@[63; 64) "{" + R_CURLY@[64; 65) "}" WHITESPACE@[65; 70) "\n " FN_DEF@[70; 86) FN_KW@[70; 72) "fn" @@ -70,9 +71,10 @@ SOURCE_FILE@[0; 89) SELF_KW@[78; 82) "self" R_PAREN@[82; 83) ")" WHITESPACE@[83; 84) " " - BLOCK@[84; 86) - L_CURLY@[84; 85) "{" - R_CURLY@[85; 86) "}" + BLOCK_EXPR@[84; 86) + BLOCK@[84; 86) + L_CURLY@[84; 85) "{" + R_CURLY@[85; 86) "}" WHITESPACE@[86; 87) "\n" R_CURLY@[87; 88) "}" WHITESPACE@[88; 89) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0024_slice_pat.txt b/crates/ra_syntax/test_data/parser/inline/ok/0024_slice_pat.txt index 40ddbfbf6..c1d669e54 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0024_slice_pat.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0024_slice_pat.txt @@ -8,33 +8,34 @@ SOURCE_FILE@[0; 39) L_PAREN@[7; 8) "(" R_PAREN@[8; 9) ")" WHITESPACE@[9; 10) " " - BLOCK@[10; 38) - L_CURLY@[10; 11) "{" - WHITESPACE@[11; 16) "\n " - LET_STMT@[16; 36) - LET_KW@[16; 19) "let" - WHITESPACE@[19; 20) " " - SLICE_PAT@[20; 30) - L_BRACK@[20; 21) "[" - BIND_PAT@[21; 22) - NAME@[21; 22) - IDENT@[21; 22) "a" - COMMA@[22; 23) "," - WHITESPACE@[23; 24) " " - BIND_PAT@[24; 25) - NAME@[24; 25) - IDENT@[24; 25) "b" - COMMA@[25; 26) "," - WHITESPACE@[26; 27) " " - DOTDOT@[27; 29) ".." - R_BRACK@[29; 30) "]" - WHITESPACE@[30; 31) " " - EQ@[31; 32) "=" - WHITESPACE@[32; 33) " " - ARRAY_EXPR@[33; 35) - L_BRACK@[33; 34) "[" - R_BRACK@[34; 35) "]" - SEMI@[35; 36) ";" - WHITESPACE@[36; 37) "\n" - R_CURLY@[37; 38) "}" + BLOCK_EXPR@[10; 38) + BLOCK@[10; 38) + L_CURLY@[10; 11) "{" + WHITESPACE@[11; 16) "\n " + LET_STMT@[16; 36) + LET_KW@[16; 19) "let" + WHITESPACE@[19; 20) " " + SLICE_PAT@[20; 30) + L_BRACK@[20; 21) "[" + BIND_PAT@[21; 22) + NAME@[21; 22) + IDENT@[21; 22) "a" + COMMA@[22; 23) "," + WHITESPACE@[23; 24) " " + BIND_PAT@[24; 25) + NAME@[24; 25) + IDENT@[24; 25) "b" + COMMA@[25; 26) "," + WHITESPACE@[26; 27) " " + DOTDOT@[27; 29) ".." + R_BRACK@[29; 30) "]" + WHITESPACE@[30; 31) " " + EQ@[31; 32) "=" + WHITESPACE@[32; 33) " " + ARRAY_EXPR@[33; 35) + L_BRACK@[33; 34) "[" + R_BRACK@[34; 35) "]" + SEMI@[35; 36) ";" + WHITESPACE@[36; 37) "\n" + R_CURLY@[37; 38) "}" WHITESPACE@[38; 39) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0026_tuple_pat_fields.txt b/crates/ra_syntax/test_data/parser/inline/ok/0026_tuple_pat_fields.txt index 0ff936471..adc8931e2 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0026_tuple_pat_fields.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0026_tuple_pat_fields.txt @@ -8,96 +8,97 @@ SOURCE_FILE@[0; 97) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 96) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - LET_STMT@[15; 28) - LET_KW@[15; 18) "let" - WHITESPACE@[18; 19) " " - TUPLE_STRUCT_PAT@[19; 22) - PATH@[19; 20) - PATH_SEGMENT@[19; 20) - NAME_REF@[19; 20) - IDENT@[19; 20) "S" - L_PAREN@[20; 21) "(" - R_PAREN@[21; 22) ")" - WHITESPACE@[22; 23) " " - EQ@[23; 24) "=" - WHITESPACE@[24; 25) " " - TUPLE_EXPR@[25; 27) - L_PAREN@[25; 26) "(" - R_PAREN@[26; 27) ")" - SEMI@[27; 28) ";" - WHITESPACE@[28; 33) "\n " - LET_STMT@[33; 47) - LET_KW@[33; 36) "let" - WHITESPACE@[36; 37) " " - TUPLE_STRUCT_PAT@[37; 41) - PATH@[37; 38) - PATH_SEGMENT@[37; 38) - NAME_REF@[37; 38) - IDENT@[37; 38) "S" - L_PAREN@[38; 39) "(" - PLACEHOLDER_PAT@[39; 40) - UNDERSCORE@[39; 40) "_" - R_PAREN@[40; 41) ")" - WHITESPACE@[41; 42) " " - EQ@[42; 43) "=" - WHITESPACE@[43; 44) " " - TUPLE_EXPR@[44; 46) - L_PAREN@[44; 45) "(" - R_PAREN@[45; 46) ")" - SEMI@[46; 47) ";" - WHITESPACE@[47; 52) "\n " - LET_STMT@[52; 67) - LET_KW@[52; 55) "let" - WHITESPACE@[55; 56) " " - TUPLE_STRUCT_PAT@[56; 61) - PATH@[56; 57) - PATH_SEGMENT@[56; 57) - NAME_REF@[56; 57) - IDENT@[56; 57) "S" - L_PAREN@[57; 58) "(" - PLACEHOLDER_PAT@[58; 59) - UNDERSCORE@[58; 59) "_" - COMMA@[59; 60) "," - R_PAREN@[60; 61) ")" - WHITESPACE@[61; 62) " " - EQ@[62; 63) "=" - WHITESPACE@[63; 64) " " - TUPLE_EXPR@[64; 66) - L_PAREN@[64; 65) "(" - R_PAREN@[65; 66) ")" - SEMI@[66; 67) ";" - WHITESPACE@[67; 72) "\n " - LET_STMT@[72; 94) - LET_KW@[72; 75) "let" - WHITESPACE@[75; 76) " " - TUPLE_STRUCT_PAT@[76; 88) - PATH@[76; 77) - PATH_SEGMENT@[76; 77) - NAME_REF@[76; 77) - IDENT@[76; 77) "S" - L_PAREN@[77; 78) "(" - PLACEHOLDER_PAT@[78; 79) - UNDERSCORE@[78; 79) "_" - COMMA@[79; 80) "," - WHITESPACE@[80; 81) " " - DOTDOT@[81; 83) ".." - WHITESPACE@[83; 84) " " - COMMA@[84; 85) "," - WHITESPACE@[85; 86) " " - BIND_PAT@[86; 87) - NAME@[86; 87) - IDENT@[86; 87) "x" - R_PAREN@[87; 88) ")" - WHITESPACE@[88; 89) " " - EQ@[89; 90) "=" - WHITESPACE@[90; 91) " " - TUPLE_EXPR@[91; 93) - L_PAREN@[91; 92) "(" - R_PAREN@[92; 93) ")" - SEMI@[93; 94) ";" - WHITESPACE@[94; 95) "\n" - R_CURLY@[95; 96) "}" + BLOCK_EXPR@[9; 96) + BLOCK@[9; 96) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + LET_STMT@[15; 28) + LET_KW@[15; 18) "let" + WHITESPACE@[18; 19) " " + TUPLE_STRUCT_PAT@[19; 22) + PATH@[19; 20) + PATH_SEGMENT@[19; 20) + NAME_REF@[19; 20) + IDENT@[19; 20) "S" + L_PAREN@[20; 21) "(" + R_PAREN@[21; 22) ")" + WHITESPACE@[22; 23) " " + EQ@[23; 24) "=" + WHITESPACE@[24; 25) " " + TUPLE_EXPR@[25; 27) + L_PAREN@[25; 26) "(" + R_PAREN@[26; 27) ")" + SEMI@[27; 28) ";" + WHITESPACE@[28; 33) "\n " + LET_STMT@[33; 47) + LET_KW@[33; 36) "let" + WHITESPACE@[36; 37) " " + TUPLE_STRUCT_PAT@[37; 41) + PATH@[37; 38) + PATH_SEGMENT@[37; 38) + NAME_REF@[37; 38) + IDENT@[37; 38) "S" + L_PAREN@[38; 39) "(" + PLACEHOLDER_PAT@[39; 40) + UNDERSCORE@[39; 40) "_" + R_PAREN@[40; 41) ")" + WHITESPACE@[41; 42) " " + EQ@[42; 43) "=" + WHITESPACE@[43; 44) " " + TUPLE_EXPR@[44; 46) + L_PAREN@[44; 45) "(" + R_PAREN@[45; 46) ")" + SEMI@[46; 47) ";" + WHITESPACE@[47; 52) "\n " + LET_STMT@[52; 67) + LET_KW@[52; 55) "let" + WHITESPACE@[55; 56) " " + TUPLE_STRUCT_PAT@[56; 61) + PATH@[56; 57) + PATH_SEGMENT@[56; 57) + NAME_REF@[56; 57) + IDENT@[56; 57) "S" + L_PAREN@[57; 58) "(" + PLACEHOLDER_PAT@[58; 59) + UNDERSCORE@[58; 59) "_" + COMMA@[59; 60) "," + R_PAREN@[60; 61) ")" + WHITESPACE@[61; 62) " " + EQ@[62; 63) "=" + WHITESPACE@[63; 64) " " + TUPLE_EXPR@[64; 66) + L_PAREN@[64; 65) "(" + R_PAREN@[65; 66) ")" + SEMI@[66; 67) ";" + WHITESPACE@[67; 72) "\n " + LET_STMT@[72; 94) + LET_KW@[72; 75) "let" + WHITESPACE@[75; 76) " " + TUPLE_STRUCT_PAT@[76; 88) + PATH@[76; 77) + PATH_SEGMENT@[76; 77) + NAME_REF@[76; 77) + IDENT@[76; 77) "S" + L_PAREN@[77; 78) "(" + PLACEHOLDER_PAT@[78; 79) + UNDERSCORE@[78; 79) "_" + COMMA@[79; 80) "," + WHITESPACE@[80; 81) " " + DOTDOT@[81; 83) ".." + WHITESPACE@[83; 84) " " + COMMA@[84; 85) "," + WHITESPACE@[85; 86) " " + BIND_PAT@[86; 87) + NAME@[86; 87) + IDENT@[86; 87) "x" + R_PAREN@[87; 88) ")" + WHITESPACE@[88; 89) " " + EQ@[89; 90) "=" + WHITESPACE@[90; 91) " " + TUPLE_EXPR@[91; 93) + L_PAREN@[91; 92) "(" + R_PAREN@[92; 93) ")" + SEMI@[93; 94) ";" + WHITESPACE@[94; 95) "\n" + R_CURLY@[95; 96) "}" WHITESPACE@[96; 97) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0027_ref_pat.txt b/crates/ra_syntax/test_data/parser/inline/ok/0027_ref_pat.txt index a833b1b96..0f1a367f7 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0027_ref_pat.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0027_ref_pat.txt @@ -8,42 +8,43 @@ SOURCE_FILE@[0; 52) L_PAREN@[7; 8) "(" R_PAREN@[8; 9) ")" WHITESPACE@[9; 10) " " - BLOCK@[10; 51) - L_CURLY@[10; 11) "{" - WHITESPACE@[11; 16) "\n " - LET_STMT@[16; 28) - LET_KW@[16; 19) "let" - WHITESPACE@[19; 20) " " - REF_PAT@[20; 22) - AMP@[20; 21) "&" - BIND_PAT@[21; 22) - NAME@[21; 22) - IDENT@[21; 22) "a" - WHITESPACE@[22; 23) " " - EQ@[23; 24) "=" - WHITESPACE@[24; 25) " " - TUPLE_EXPR@[25; 27) - L_PAREN@[25; 26) "(" - R_PAREN@[26; 27) ")" - SEMI@[27; 28) ";" - WHITESPACE@[28; 33) "\n " - LET_STMT@[33; 49) - LET_KW@[33; 36) "let" - WHITESPACE@[36; 37) " " - REF_PAT@[37; 43) - AMP@[37; 38) "&" - MUT_KW@[38; 41) "mut" - WHITESPACE@[41; 42) " " - BIND_PAT@[42; 43) - NAME@[42; 43) - IDENT@[42; 43) "b" - WHITESPACE@[43; 44) " " - EQ@[44; 45) "=" - WHITESPACE@[45; 46) " " - TUPLE_EXPR@[46; 48) - L_PAREN@[46; 47) "(" - R_PAREN@[47; 48) ")" - SEMI@[48; 49) ";" - WHITESPACE@[49; 50) "\n" - R_CURLY@[50; 51) "}" + BLOCK_EXPR@[10; 51) + BLOCK@[10; 51) + L_CURLY@[10; 11) "{" + WHITESPACE@[11; 16) "\n " + LET_STMT@[16; 28) + LET_KW@[16; 19) "let" + WHITESPACE@[19; 20) " " + REF_PAT@[20; 22) + AMP@[20; 21) "&" + BIND_PAT@[21; 22) + NAME@[21; 22) + IDENT@[21; 22) "a" + WHITESPACE@[22; 23) " " + EQ@[23; 24) "=" + WHITESPACE@[24; 25) " " + TUPLE_EXPR@[25; 27) + L_PAREN@[25; 26) "(" + R_PAREN@[26; 27) ")" + SEMI@[27; 28) ";" + WHITESPACE@[28; 33) "\n " + LET_STMT@[33; 49) + LET_KW@[33; 36) "let" + WHITESPACE@[36; 37) " " + REF_PAT@[37; 43) + AMP@[37; 38) "&" + MUT_KW@[38; 41) "mut" + WHITESPACE@[41; 42) " " + BIND_PAT@[42; 43) + NAME@[42; 43) + IDENT@[42; 43) "b" + WHITESPACE@[43; 44) " " + EQ@[44; 45) "=" + WHITESPACE@[45; 46) " " + TUPLE_EXPR@[46; 48) + L_PAREN@[46; 47) "(" + R_PAREN@[47; 48) ")" + SEMI@[48; 49) ";" + WHITESPACE@[49; 50) "\n" + R_CURLY@[50; 51) "}" WHITESPACE@[51; 52) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0029_cast_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0029_cast_expr.txt index 11c14e3b4..b17a2c257 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0029_cast_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0029_cast_expr.txt @@ -8,82 +8,83 @@ SOURCE_FILE@[0; 89) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 88) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 25) - CAST_EXPR@[15; 24) - LITERAL@[15; 17) - INT_NUMBER@[15; 17) "82" - WHITESPACE@[17; 18) " " - AS_KW@[18; 20) "as" - WHITESPACE@[20; 21) " " - PATH_TYPE@[21; 24) - PATH@[21; 24) - PATH_SEGMENT@[21; 24) - NAME_REF@[21; 24) - IDENT@[21; 24) "i32" - SEMI@[24; 25) ";" - WHITESPACE@[25; 30) "\n " - EXPR_STMT@[30; 43) - BIN_EXPR@[30; 42) - CAST_EXPR@[30; 38) - LITERAL@[30; 32) - INT_NUMBER@[30; 32) "81" - WHITESPACE@[32; 33) " " - AS_KW@[33; 35) "as" - WHITESPACE@[35; 36) " " - PATH_TYPE@[36; 38) - PATH@[36; 38) - PATH_SEGMENT@[36; 38) - NAME_REF@[36; 38) - IDENT@[36; 38) "i8" - WHITESPACE@[38; 39) " " - PLUS@[39; 40) "+" - WHITESPACE@[40; 41) " " - LITERAL@[41; 42) - INT_NUMBER@[41; 42) "1" - SEMI@[42; 43) ";" - WHITESPACE@[43; 48) "\n " - EXPR_STMT@[48; 62) - BIN_EXPR@[48; 61) - CAST_EXPR@[48; 57) - LITERAL@[48; 50) - INT_NUMBER@[48; 50) "79" - WHITESPACE@[50; 51) " " - AS_KW@[51; 53) "as" - WHITESPACE@[53; 54) " " - PATH_TYPE@[54; 57) - PATH@[54; 57) - PATH_SEGMENT@[54; 57) - NAME_REF@[54; 57) - IDENT@[54; 57) "i16" - WHITESPACE@[57; 58) " " - MINUS@[58; 59) "-" - WHITESPACE@[59; 60) " " - LITERAL@[60; 61) - INT_NUMBER@[60; 61) "1" - SEMI@[61; 62) ";" - WHITESPACE@[62; 67) "\n " - EXPR_STMT@[67; 86) - BIN_EXPR@[67; 85) - CAST_EXPR@[67; 77) - LITERAL@[67; 71) - INT_NUMBER@[67; 71) "0x36" - WHITESPACE@[71; 72) " " - AS_KW@[72; 74) "as" - WHITESPACE@[74; 75) " " - PATH_TYPE@[75; 77) - PATH@[75; 77) - PATH_SEGMENT@[75; 77) - NAME_REF@[75; 77) - IDENT@[75; 77) "u8" - WHITESPACE@[77; 78) " " - LTEQ@[78; 80) "<=" - WHITESPACE@[80; 81) " " - LITERAL@[81; 85) - INT_NUMBER@[81; 85) "0x37" - SEMI@[85; 86) ";" - WHITESPACE@[86; 87) "\n" - R_CURLY@[87; 88) "}" + BLOCK_EXPR@[9; 88) + BLOCK@[9; 88) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 25) + CAST_EXPR@[15; 24) + LITERAL@[15; 17) + INT_NUMBER@[15; 17) "82" + WHITESPACE@[17; 18) " " + AS_KW@[18; 20) "as" + WHITESPACE@[20; 21) " " + PATH_TYPE@[21; 24) + PATH@[21; 24) + PATH_SEGMENT@[21; 24) + NAME_REF@[21; 24) + IDENT@[21; 24) "i32" + SEMI@[24; 25) ";" + WHITESPACE@[25; 30) "\n " + EXPR_STMT@[30; 43) + BIN_EXPR@[30; 42) + CAST_EXPR@[30; 38) + LITERAL@[30; 32) + INT_NUMBER@[30; 32) "81" + WHITESPACE@[32; 33) " " + AS_KW@[33; 35) "as" + WHITESPACE@[35; 36) " " + PATH_TYPE@[36; 38) + PATH@[36; 38) + PATH_SEGMENT@[36; 38) + NAME_REF@[36; 38) + IDENT@[36; 38) "i8" + WHITESPACE@[38; 39) " " + PLUS@[39; 40) "+" + WHITESPACE@[40; 41) " " + LITERAL@[41; 42) + INT_NUMBER@[41; 42) "1" + SEMI@[42; 43) ";" + WHITESPACE@[43; 48) "\n " + EXPR_STMT@[48; 62) + BIN_EXPR@[48; 61) + CAST_EXPR@[48; 57) + LITERAL@[48; 50) + INT_NUMBER@[48; 50) "79" + WHITESPACE@[50; 51) " " + AS_KW@[51; 53) "as" + WHITESPACE@[53; 54) " " + PATH_TYPE@[54; 57) + PATH@[54; 57) + PATH_SEGMENT@[54; 57) + NAME_REF@[54; 57) + IDENT@[54; 57) "i16" + WHITESPACE@[57; 58) " " + MINUS@[58; 59) "-" + WHITESPACE@[59; 60) " " + LITERAL@[60; 61) + INT_NUMBER@[60; 61) "1" + SEMI@[61; 62) ";" + WHITESPACE@[62; 67) "\n " + EXPR_STMT@[67; 86) + BIN_EXPR@[67; 85) + CAST_EXPR@[67; 77) + LITERAL@[67; 71) + INT_NUMBER@[67; 71) "0x36" + WHITESPACE@[71; 72) " " + AS_KW@[72; 74) "as" + WHITESPACE@[74; 75) " " + PATH_TYPE@[75; 77) + PATH@[75; 77) + PATH_SEGMENT@[75; 77) + NAME_REF@[75; 77) + IDENT@[75; 77) "u8" + WHITESPACE@[77; 78) " " + LTEQ@[78; 80) "<=" + WHITESPACE@[80; 81) " " + LITERAL@[81; 85) + INT_NUMBER@[81; 85) "0x37" + SEMI@[85; 86) ";" + WHITESPACE@[86; 87) "\n" + R_CURLY@[87; 88) "}" WHITESPACE@[88; 89) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0030_cond.txt b/crates/ra_syntax/test_data/parser/inline/ok/0030_cond.txt index 1c9414b21..4028ca243 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0030_cond.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0030_cond.txt @@ -8,38 +8,40 @@ SOURCE_FILE@[0; 197) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 37) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 11) " " - IF_EXPR@[11; 35) - IF_KW@[11; 13) "if" - WHITESPACE@[13; 14) " " - CONDITION@[14; 32) - LET_KW@[14; 17) "let" - WHITESPACE@[17; 18) " " - TUPLE_STRUCT_PAT@[18; 25) - PATH@[18; 22) - PATH_SEGMENT@[18; 22) - NAME_REF@[18; 22) - IDENT@[18; 22) "Some" - L_PAREN@[22; 23) "(" - PLACEHOLDER_PAT@[23; 24) - UNDERSCORE@[23; 24) "_" - R_PAREN@[24; 25) ")" - WHITESPACE@[25; 26) " " - EQ@[26; 27) "=" - WHITESPACE@[27; 28) " " - PATH_EXPR@[28; 32) - PATH@[28; 32) - PATH_SEGMENT@[28; 32) - NAME_REF@[28; 32) - IDENT@[28; 32) "None" - WHITESPACE@[32; 33) " " - BLOCK@[33; 35) - L_CURLY@[33; 34) "{" - R_CURLY@[34; 35) "}" - WHITESPACE@[35; 36) " " - R_CURLY@[36; 37) "}" + BLOCK_EXPR@[9; 37) + BLOCK@[9; 37) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 11) " " + IF_EXPR@[11; 35) + IF_KW@[11; 13) "if" + WHITESPACE@[13; 14) " " + CONDITION@[14; 32) + LET_KW@[14; 17) "let" + WHITESPACE@[17; 18) " " + TUPLE_STRUCT_PAT@[18; 25) + PATH@[18; 22) + PATH_SEGMENT@[18; 22) + NAME_REF@[18; 22) + IDENT@[18; 22) "Some" + L_PAREN@[22; 23) "(" + PLACEHOLDER_PAT@[23; 24) + UNDERSCORE@[23; 24) "_" + R_PAREN@[24; 25) ")" + WHITESPACE@[25; 26) " " + EQ@[26; 27) "=" + WHITESPACE@[27; 28) " " + PATH_EXPR@[28; 32) + PATH@[28; 32) + PATH_SEGMENT@[28; 32) + NAME_REF@[28; 32) + IDENT@[28; 32) "None" + WHITESPACE@[32; 33) " " + BLOCK_EXPR@[33; 35) + BLOCK@[33; 35) + L_CURLY@[33; 34) "{" + R_CURLY@[34; 35) "}" + WHITESPACE@[35; 36) " " + R_CURLY@[36; 37) "}" WHITESPACE@[37; 38) "\n" FN_DEF@[38; 196) FN_KW@[38; 40) "fn" @@ -50,151 +52,156 @@ SOURCE_FILE@[0; 197) L_PAREN@[44; 45) "(" R_PAREN@[45; 46) ")" WHITESPACE@[46; 47) " " - BLOCK@[47; 196) - L_CURLY@[47; 48) "{" - WHITESPACE@[48; 53) "\n " - EXPR_STMT@[53; 87) - IF_EXPR@[53; 87) - IF_KW@[53; 55) "if" - WHITESPACE@[55; 56) " " - CONDITION@[56; 84) - LET_KW@[56; 59) "let" - WHITESPACE@[59; 60) " " - TUPLE_STRUCT_PAT@[60; 67) - PATH@[60; 64) - PATH_SEGMENT@[60; 64) - NAME_REF@[60; 64) - IDENT@[60; 64) "Some" - L_PAREN@[64; 65) "(" - PLACEHOLDER_PAT@[65; 66) - UNDERSCORE@[65; 66) "_" - R_PAREN@[66; 67) ")" - WHITESPACE@[67; 68) " " - PIPE@[68; 69) "|" - WHITESPACE@[69; 70) " " - TUPLE_STRUCT_PAT@[70; 77) - PATH@[70; 74) - PATH_SEGMENT@[70; 74) - NAME_REF@[70; 74) - IDENT@[70; 74) "Some" - L_PAREN@[74; 75) "(" - PLACEHOLDER_PAT@[75; 76) - UNDERSCORE@[75; 76) "_" - R_PAREN@[76; 77) ")" - WHITESPACE@[77; 78) " " - EQ@[78; 79) "=" - WHITESPACE@[79; 80) " " - PATH_EXPR@[80; 84) - PATH@[80; 84) - PATH_SEGMENT@[80; 84) - NAME_REF@[80; 84) - IDENT@[80; 84) "None" - WHITESPACE@[84; 85) " " - BLOCK@[85; 87) - L_CURLY@[85; 86) "{" - R_CURLY@[86; 87) "}" - WHITESPACE@[87; 92) "\n " - EXPR_STMT@[92; 118) - IF_EXPR@[92; 118) - IF_KW@[92; 94) "if" - WHITESPACE@[94; 95) " " - CONDITION@[95; 115) - LET_KW@[95; 98) "let" - WHITESPACE@[98; 99) " " - PIPE@[99; 100) "|" - WHITESPACE@[100; 101) " " - TUPLE_STRUCT_PAT@[101; 108) - PATH@[101; 105) - PATH_SEGMENT@[101; 105) - NAME_REF@[101; 105) - IDENT@[101; 105) "Some" - L_PAREN@[105; 106) "(" - PLACEHOLDER_PAT@[106; 107) - UNDERSCORE@[106; 107) "_" - R_PAREN@[107; 108) ")" - WHITESPACE@[108; 109) " " - EQ@[109; 110) "=" - WHITESPACE@[110; 111) " " - PATH_EXPR@[111; 115) - PATH@[111; 115) - PATH_SEGMENT@[111; 115) - NAME_REF@[111; 115) - IDENT@[111; 115) "None" - WHITESPACE@[115; 116) " " - BLOCK@[116; 118) - L_CURLY@[116; 117) "{" - R_CURLY@[117; 118) "}" - WHITESPACE@[118; 123) "\n " - EXPR_STMT@[123; 160) - WHILE_EXPR@[123; 160) - WHILE_KW@[123; 128) "while" - WHITESPACE@[128; 129) " " - CONDITION@[129; 157) - LET_KW@[129; 132) "let" - WHITESPACE@[132; 133) " " - TUPLE_STRUCT_PAT@[133; 140) - PATH@[133; 137) - PATH_SEGMENT@[133; 137) - NAME_REF@[133; 137) - IDENT@[133; 137) "Some" - L_PAREN@[137; 138) "(" - PLACEHOLDER_PAT@[138; 139) - UNDERSCORE@[138; 139) "_" - R_PAREN@[139; 140) ")" - WHITESPACE@[140; 141) " " - PIPE@[141; 142) "|" - WHITESPACE@[142; 143) " " - TUPLE_STRUCT_PAT@[143; 150) - PATH@[143; 147) - PATH_SEGMENT@[143; 147) - NAME_REF@[143; 147) - IDENT@[143; 147) "Some" - L_PAREN@[147; 148) "(" - PLACEHOLDER_PAT@[148; 149) - UNDERSCORE@[148; 149) "_" - R_PAREN@[149; 150) ")" - WHITESPACE@[150; 151) " " - EQ@[151; 152) "=" - WHITESPACE@[152; 153) " " - PATH_EXPR@[153; 157) - PATH@[153; 157) - PATH_SEGMENT@[153; 157) - NAME_REF@[153; 157) - IDENT@[153; 157) "None" - WHITESPACE@[157; 158) " " - BLOCK@[158; 160) - L_CURLY@[158; 159) "{" - R_CURLY@[159; 160) "}" - WHITESPACE@[160; 165) "\n " - WHILE_EXPR@[165; 194) - WHILE_KW@[165; 170) "while" - WHITESPACE@[170; 171) " " - CONDITION@[171; 191) - LET_KW@[171; 174) "let" - WHITESPACE@[174; 175) " " - PIPE@[175; 176) "|" - WHITESPACE@[176; 177) " " - TUPLE_STRUCT_PAT@[177; 184) - PATH@[177; 181) - PATH_SEGMENT@[177; 181) - NAME_REF@[177; 181) - IDENT@[177; 181) "Some" - L_PAREN@[181; 182) "(" - PLACEHOLDER_PAT@[182; 183) - UNDERSCORE@[182; 183) "_" - R_PAREN@[183; 184) ")" - WHITESPACE@[184; 185) " " - EQ@[185; 186) "=" - WHITESPACE@[186; 187) " " - PATH_EXPR@[187; 191) - PATH@[187; 191) - PATH_SEGMENT@[187; 191) - NAME_REF@[187; 191) - IDENT@[187; 191) "None" - WHITESPACE@[191; 192) " " - BLOCK@[192; 194) - L_CURLY@[192; 193) "{" - R_CURLY@[193; 194) "}" - WHITESPACE@[194; 195) "\n" - R_CURLY@[195; 196) "}" + BLOCK_EXPR@[47; 196) + BLOCK@[47; 196) + L_CURLY@[47; 48) "{" + WHITESPACE@[48; 53) "\n " + EXPR_STMT@[53; 87) + IF_EXPR@[53; 87) + IF_KW@[53; 55) "if" + WHITESPACE@[55; 56) " " + CONDITION@[56; 84) + LET_KW@[56; 59) "let" + WHITESPACE@[59; 60) " " + TUPLE_STRUCT_PAT@[60; 67) + PATH@[60; 64) + PATH_SEGMENT@[60; 64) + NAME_REF@[60; 64) + IDENT@[60; 64) "Some" + L_PAREN@[64; 65) "(" + PLACEHOLDER_PAT@[65; 66) + UNDERSCORE@[65; 66) "_" + R_PAREN@[66; 67) ")" + WHITESPACE@[67; 68) " " + PIPE@[68; 69) "|" + WHITESPACE@[69; 70) " " + TUPLE_STRUCT_PAT@[70; 77) + PATH@[70; 74) + PATH_SEGMENT@[70; 74) + NAME_REF@[70; 74) + IDENT@[70; 74) "Some" + L_PAREN@[74; 75) "(" + PLACEHOLDER_PAT@[75; 76) + UNDERSCORE@[75; 76) "_" + R_PAREN@[76; 77) ")" + WHITESPACE@[77; 78) " " + EQ@[78; 79) "=" + WHITESPACE@[79; 80) " " + PATH_EXPR@[80; 84) + PATH@[80; 84) + PATH_SEGMENT@[80; 84) + NAME_REF@[80; 84) + IDENT@[80; 84) "None" + WHITESPACE@[84; 85) " " + BLOCK_EXPR@[85; 87) + BLOCK@[85; 87) + L_CURLY@[85; 86) "{" + R_CURLY@[86; 87) "}" + WHITESPACE@[87; 92) "\n " + EXPR_STMT@[92; 118) + IF_EXPR@[92; 118) + IF_KW@[92; 94) "if" + WHITESPACE@[94; 95) " " + CONDITION@[95; 115) + LET_KW@[95; 98) "let" + WHITESPACE@[98; 99) " " + PIPE@[99; 100) "|" + WHITESPACE@[100; 101) " " + TUPLE_STRUCT_PAT@[101; 108) + PATH@[101; 105) + PATH_SEGMENT@[101; 105) + NAME_REF@[101; 105) + IDENT@[101; 105) "Some" + L_PAREN@[105; 106) "(" + PLACEHOLDER_PAT@[106; 107) + UNDERSCORE@[106; 107) "_" + R_PAREN@[107; 108) ")" + WHITESPACE@[108; 109) " " + EQ@[109; 110) "=" + WHITESPACE@[110; 111) " " + PATH_EXPR@[111; 115) + PATH@[111; 115) + PATH_SEGMENT@[111; 115) + NAME_REF@[111; 115) + IDENT@[111; 115) "None" + WHITESPACE@[115; 116) " " + BLOCK_EXPR@[116; 118) + BLOCK@[116; 118) + L_CURLY@[116; 117) "{" + R_CURLY@[117; 118) "}" + WHITESPACE@[118; 123) "\n " + EXPR_STMT@[123; 160) + WHILE_EXPR@[123; 160) + WHILE_KW@[123; 128) "while" + WHITESPACE@[128; 129) " " + CONDITION@[129; 157) + LET_KW@[129; 132) "let" + WHITESPACE@[132; 133) " " + TUPLE_STRUCT_PAT@[133; 140) + PATH@[133; 137) + PATH_SEGMENT@[133; 137) + NAME_REF@[133; 137) + IDENT@[133; 137) "Some" + L_PAREN@[137; 138) "(" + PLACEHOLDER_PAT@[138; 139) + UNDERSCORE@[138; 139) "_" + R_PAREN@[139; 140) ")" + WHITESPACE@[140; 141) " " + PIPE@[141; 142) "|" + WHITESPACE@[142; 143) " " + TUPLE_STRUCT_PAT@[143; 150) + PATH@[143; 147) + PATH_SEGMENT@[143; 147) + NAME_REF@[143; 147) + IDENT@[143; 147) "Some" + L_PAREN@[147; 148) "(" + PLACEHOLDER_PAT@[148; 149) + UNDERSCORE@[148; 149) "_" + R_PAREN@[149; 150) ")" + WHITESPACE@[150; 151) " " + EQ@[151; 152) "=" + WHITESPACE@[152; 153) " " + PATH_EXPR@[153; 157) + PATH@[153; 157) + PATH_SEGMENT@[153; 157) + NAME_REF@[153; 157) + IDENT@[153; 157) "None" + WHITESPACE@[157; 158) " " + BLOCK_EXPR@[158; 160) + BLOCK@[158; 160) + L_CURLY@[158; 159) "{" + R_CURLY@[159; 160) "}" + WHITESPACE@[160; 165) "\n " + WHILE_EXPR@[165; 194) + WHILE_KW@[165; 170) "while" + WHITESPACE@[170; 171) " " + CONDITION@[171; 191) + LET_KW@[171; 174) "let" + WHITESPACE@[174; 175) " " + PIPE@[175; 176) "|" + WHITESPACE@[176; 177) " " + TUPLE_STRUCT_PAT@[177; 184) + PATH@[177; 181) + PATH_SEGMENT@[177; 181) + NAME_REF@[177; 181) + IDENT@[177; 181) "Some" + L_PAREN@[181; 182) "(" + PLACEHOLDER_PAT@[182; 183) + UNDERSCORE@[182; 183) "_" + R_PAREN@[183; 184) ")" + WHITESPACE@[184; 185) " " + EQ@[185; 186) "=" + WHITESPACE@[186; 187) " " + PATH_EXPR@[187; 191) + PATH@[187; 191) + PATH_SEGMENT@[187; 191) + NAME_REF@[187; 191) + IDENT@[187; 191) "None" + WHITESPACE@[191; 192) " " + BLOCK_EXPR@[192; 194) + BLOCK@[192; 194) + L_CURLY@[192; 193) "{" + R_CURLY@[193; 194) "}" + WHITESPACE@[194; 195) "\n" + R_CURLY@[195; 196) "}" WHITESPACE@[196; 197) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0031_while_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0031_while_expr.txt index a772117a1..9b43d624c 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0031_while_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0031_while_expr.txt @@ -8,59 +8,62 @@ SOURCE_FILE@[0; 70) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 69) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 29) - WHILE_EXPR@[15; 28) - WHILE_KW@[15; 20) "while" - WHITESPACE@[20; 21) " " - CONDITION@[21; 25) - LITERAL@[21; 25) - TRUE_KW@[21; 25) "true" - WHITESPACE@[25; 26) " " - BLOCK@[26; 28) - L_CURLY@[26; 27) "{" - R_CURLY@[27; 28) "}" - SEMI@[28; 29) ";" - WHITESPACE@[29; 34) "\n " - EXPR_STMT@[34; 67) - WHILE_EXPR@[34; 66) - WHILE_KW@[34; 39) "while" - WHITESPACE@[39; 40) " " - CONDITION@[40; 63) - LET_KW@[40; 43) "let" - WHITESPACE@[43; 44) " " - TUPLE_STRUCT_PAT@[44; 51) - PATH@[44; 48) - PATH_SEGMENT@[44; 48) - NAME_REF@[44; 48) - IDENT@[44; 48) "Some" - L_PAREN@[48; 49) "(" - BIND_PAT@[49; 50) - NAME@[49; 50) - IDENT@[49; 50) "x" - R_PAREN@[50; 51) ")" - WHITESPACE@[51; 52) " " - EQ@[52; 53) "=" - WHITESPACE@[53; 54) " " - METHOD_CALL_EXPR@[54; 63) - PATH_EXPR@[54; 56) - PATH@[54; 56) - PATH_SEGMENT@[54; 56) - NAME_REF@[54; 56) - IDENT@[54; 56) "it" - DOT@[56; 57) "." - NAME_REF@[57; 61) - IDENT@[57; 61) "next" - ARG_LIST@[61; 63) - L_PAREN@[61; 62) "(" - R_PAREN@[62; 63) ")" - WHITESPACE@[63; 64) " " - BLOCK@[64; 66) - L_CURLY@[64; 65) "{" - R_CURLY@[65; 66) "}" - SEMI@[66; 67) ";" - WHITESPACE@[67; 68) "\n" - R_CURLY@[68; 69) "}" + BLOCK_EXPR@[9; 69) + BLOCK@[9; 69) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 29) + WHILE_EXPR@[15; 28) + WHILE_KW@[15; 20) "while" + WHITESPACE@[20; 21) " " + CONDITION@[21; 25) + LITERAL@[21; 25) + TRUE_KW@[21; 25) "true" + WHITESPACE@[25; 26) " " + BLOCK_EXPR@[26; 28) + BLOCK@[26; 28) + L_CURLY@[26; 27) "{" + R_CURLY@[27; 28) "}" + SEMI@[28; 29) ";" + WHITESPACE@[29; 34) "\n " + EXPR_STMT@[34; 67) + WHILE_EXPR@[34; 66) + WHILE_KW@[34; 39) "while" + WHITESPACE@[39; 40) " " + CONDITION@[40; 63) + LET_KW@[40; 43) "let" + WHITESPACE@[43; 44) " " + TUPLE_STRUCT_PAT@[44; 51) + PATH@[44; 48) + PATH_SEGMENT@[44; 48) + NAME_REF@[44; 48) + IDENT@[44; 48) "Some" + L_PAREN@[48; 49) "(" + BIND_PAT@[49; 50) + NAME@[49; 50) + IDENT@[49; 50) "x" + R_PAREN@[50; 51) ")" + WHITESPACE@[51; 52) " " + EQ@[52; 53) "=" + WHITESPACE@[53; 54) " " + METHOD_CALL_EXPR@[54; 63) + PATH_EXPR@[54; 56) + PATH@[54; 56) + PATH_SEGMENT@[54; 56) + NAME_REF@[54; 56) + IDENT@[54; 56) "it" + DOT@[56; 57) "." + NAME_REF@[57; 61) + IDENT@[57; 61) "next" + ARG_LIST@[61; 63) + L_PAREN@[61; 62) "(" + R_PAREN@[62; 63) ")" + WHITESPACE@[63; 64) " " + BLOCK_EXPR@[64; 66) + BLOCK@[64; 66) + L_CURLY@[64; 65) "{" + R_CURLY@[65; 66) "}" + SEMI@[66; 67) ";" + WHITESPACE@[67; 68) "\n" + R_CURLY@[68; 69) "}" WHITESPACE@[69; 70) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0034_break_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0034_break_expr.txt index 4ece7cd7e..67ffdfd67 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0034_break_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0034_break_expr.txt @@ -8,46 +8,48 @@ SOURCE_FILE@[0; 102) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 101) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - LOOP_EXPR@[15; 99) - LOOP_KW@[15; 19) "loop" - WHITESPACE@[19; 20) " " - BLOCK@[20; 99) - L_CURLY@[20; 21) "{" - WHITESPACE@[21; 30) "\n " - EXPR_STMT@[30; 36) - BREAK_EXPR@[30; 35) - BREAK_KW@[30; 35) "break" - SEMI@[35; 36) ";" - WHITESPACE@[36; 45) "\n " - EXPR_STMT@[45; 54) - BREAK_EXPR@[45; 53) - BREAK_KW@[45; 50) "break" - WHITESPACE@[50; 51) " " - LIFETIME@[51; 53) "\'l" - SEMI@[53; 54) ";" - WHITESPACE@[54; 63) "\n " - EXPR_STMT@[63; 72) - BREAK_EXPR@[63; 71) - BREAK_KW@[63; 68) "break" - WHITESPACE@[68; 69) " " - LITERAL@[69; 71) - INT_NUMBER@[69; 71) "92" - SEMI@[71; 72) ";" - WHITESPACE@[72; 81) "\n " - EXPR_STMT@[81; 93) - BREAK_EXPR@[81; 92) - BREAK_KW@[81; 86) "break" - WHITESPACE@[86; 87) " " - LIFETIME@[87; 89) "\'l" - WHITESPACE@[89; 90) " " - LITERAL@[90; 92) - INT_NUMBER@[90; 92) "92" - SEMI@[92; 93) ";" - WHITESPACE@[93; 98) "\n " - R_CURLY@[98; 99) "}" - WHITESPACE@[99; 100) "\n" - R_CURLY@[100; 101) "}" + BLOCK_EXPR@[9; 101) + BLOCK@[9; 101) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + LOOP_EXPR@[15; 99) + LOOP_KW@[15; 19) "loop" + WHITESPACE@[19; 20) " " + BLOCK_EXPR@[20; 99) + BLOCK@[20; 99) + L_CURLY@[20; 21) "{" + WHITESPACE@[21; 30) "\n " + EXPR_STMT@[30; 36) + BREAK_EXPR@[30; 35) + BREAK_KW@[30; 35) "break" + SEMI@[35; 36) ";" + WHITESPACE@[36; 45) "\n " + EXPR_STMT@[45; 54) + BREAK_EXPR@[45; 53) + BREAK_KW@[45; 50) "break" + WHITESPACE@[50; 51) " " + LIFETIME@[51; 53) "\'l" + SEMI@[53; 54) ";" + WHITESPACE@[54; 63) "\n " + EXPR_STMT@[63; 72) + BREAK_EXPR@[63; 71) + BREAK_KW@[63; 68) "break" + WHITESPACE@[68; 69) " " + LITERAL@[69; 71) + INT_NUMBER@[69; 71) "92" + SEMI@[71; 72) ";" + WHITESPACE@[72; 81) "\n " + EXPR_STMT@[81; 93) + BREAK_EXPR@[81; 92) + BREAK_KW@[81; 86) "break" + WHITESPACE@[86; 87) " " + LIFETIME@[87; 89) "\'l" + WHITESPACE@[89; 90) " " + LITERAL@[90; 92) + INT_NUMBER@[90; 92) "92" + SEMI@[92; 93) ";" + WHITESPACE@[93; 98) "\n " + R_CURLY@[98; 99) "}" + WHITESPACE@[99; 100) "\n" + R_CURLY@[100; 101) "}" WHITESPACE@[101; 102) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0036_unsafe_extern_fn.txt b/crates/ra_syntax/test_data/parser/inline/ok/0036_unsafe_extern_fn.txt index b5b09b2e5..a7dfe167c 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0036_unsafe_extern_fn.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0036_unsafe_extern_fn.txt @@ -15,7 +15,8 @@ SOURCE_FILE@[0; 30) L_PAREN@[24; 25) "(" R_PAREN@[25; 26) ")" WHITESPACE@[26; 27) " " - BLOCK@[27; 29) - L_CURLY@[27; 28) "{" - R_CURLY@[28; 29) "}" + BLOCK_EXPR@[27; 29) + BLOCK@[27; 29) + L_CURLY@[27; 28) "{" + R_CURLY@[28; 29) "}" WHITESPACE@[29; 30) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0037_qual_paths.txt b/crates/ra_syntax/test_data/parser/inline/ok/0037_qual_paths.txt index 9bfddf5d2..6e226de4b 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0037_qual_paths.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0037_qual_paths.txt @@ -41,38 +41,39 @@ SOURCE_FILE@[0; 71) L_PAREN@[33; 34) "(" R_PAREN@[34; 35) ")" WHITESPACE@[35; 36) " " - BLOCK@[36; 70) - L_CURLY@[36; 37) "{" - WHITESPACE@[37; 38) " " - EXPR_STMT@[38; 68) - CALL_EXPR@[38; 67) - PATH_EXPR@[38; 65) - PATH@[38; 65) - PATH@[38; 56) - PATH_SEGMENT@[38; 56) - L_ANGLE@[38; 39) "<" - PATH_TYPE@[39; 44) - PATH@[39; 44) - PATH_SEGMENT@[39; 44) - NAME_REF@[39; 44) - IDENT@[39; 44) "usize" - WHITESPACE@[44; 45) " " - AS_KW@[45; 47) "as" - WHITESPACE@[47; 48) " " - PATH_TYPE@[48; 55) - PATH@[48; 55) - PATH_SEGMENT@[48; 55) - NAME_REF@[48; 55) - IDENT@[48; 55) "Default" - R_ANGLE@[55; 56) ">" - COLONCOLON@[56; 58) "::" - PATH_SEGMENT@[58; 65) - NAME_REF@[58; 65) - IDENT@[58; 65) "default" - ARG_LIST@[65; 67) - L_PAREN@[65; 66) "(" - R_PAREN@[66; 67) ")" - SEMI@[67; 68) ";" - WHITESPACE@[68; 69) " " - R_CURLY@[69; 70) "}" + BLOCK_EXPR@[36; 70) + BLOCK@[36; 70) + L_CURLY@[36; 37) "{" + WHITESPACE@[37; 38) " " + EXPR_STMT@[38; 68) + CALL_EXPR@[38; 67) + PATH_EXPR@[38; 65) + PATH@[38; 65) + PATH@[38; 56) + PATH_SEGMENT@[38; 56) + L_ANGLE@[38; 39) "<" + PATH_TYPE@[39; 44) + PATH@[39; 44) + PATH_SEGMENT@[39; 44) + NAME_REF@[39; 44) + IDENT@[39; 44) "usize" + WHITESPACE@[44; 45) " " + AS_KW@[45; 47) "as" + WHITESPACE@[47; 48) " " + PATH_TYPE@[48; 55) + PATH@[48; 55) + PATH_SEGMENT@[48; 55) + NAME_REF@[48; 55) + IDENT@[48; 55) "Default" + R_ANGLE@[55; 56) ">" + COLONCOLON@[56; 58) "::" + PATH_SEGMENT@[58; 65) + NAME_REF@[58; 65) + IDENT@[58; 65) "default" + ARG_LIST@[65; 67) + L_PAREN@[65; 66) "(" + R_PAREN@[66; 67) ")" + SEMI@[67; 68) ";" + WHITESPACE@[68; 69) " " + R_CURLY@[69; 70) "}" WHITESPACE@[70; 71) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0038_full_range_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0038_full_range_expr.txt index 477c645d1..042cee879 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0038_full_range_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0038_full_range_expr.txt @@ -8,21 +8,22 @@ SOURCE_FILE@[0; 21) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 20) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 11) " " - EXPR_STMT@[11; 18) - INDEX_EXPR@[11; 17) - PATH_EXPR@[11; 13) - PATH@[11; 13) - PATH_SEGMENT@[11; 13) - NAME_REF@[11; 13) - IDENT@[11; 13) "xs" - L_BRACK@[13; 14) "[" - RANGE_EXPR@[14; 16) - DOTDOT@[14; 16) ".." - R_BRACK@[16; 17) "]" - SEMI@[17; 18) ";" - WHITESPACE@[18; 19) " " - R_CURLY@[19; 20) "}" + BLOCK_EXPR@[9; 20) + BLOCK@[9; 20) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 11) " " + EXPR_STMT@[11; 18) + INDEX_EXPR@[11; 17) + PATH_EXPR@[11; 13) + PATH@[11; 13) + PATH_SEGMENT@[11; 13) + NAME_REF@[11; 13) + IDENT@[11; 13) "xs" + L_BRACK@[13; 14) "[" + RANGE_EXPR@[14; 16) + DOTDOT@[14; 16) ".." + R_BRACK@[16; 17) "]" + SEMI@[17; 18) ";" + WHITESPACE@[18; 19) " " + R_CURLY@[19; 20) "}" WHITESPACE@[20; 21) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0040_crate_keyword_vis.txt b/crates/ra_syntax/test_data/parser/inline/ok/0040_crate_keyword_vis.txt index 882e4a9ae..d180fcf20 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0040_crate_keyword_vis.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0040_crate_keyword_vis.txt @@ -11,10 +11,11 @@ SOURCE_FILE@[0; 71) L_PAREN@[13; 14) "(" R_PAREN@[14; 15) ")" WHITESPACE@[15; 16) " " - BLOCK@[16; 19) - L_CURLY@[16; 17) "{" - WHITESPACE@[17; 18) " " - R_CURLY@[18; 19) "}" + BLOCK_EXPR@[16; 19) + BLOCK@[16; 19) + L_CURLY@[16; 17) "{" + WHITESPACE@[17; 18) " " + R_CURLY@[18; 19) "}" WHITESPACE@[19; 20) "\n" STRUCT_DEF@[20; 49) STRUCT_KW@[20; 26) "struct" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0042_call_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0042_call_expr.txt index dd8946ad2..e8003bf91 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0042_call_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0042_call_expr.txt @@ -8,140 +8,141 @@ SOURCE_FILE@[0; 118) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 117) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - LET_STMT@[15; 27) - LET_KW@[15; 18) "let" - WHITESPACE@[18; 19) " " - PLACEHOLDER_PAT@[19; 20) - UNDERSCORE@[19; 20) "_" - WHITESPACE@[20; 21) " " - EQ@[21; 22) "=" - WHITESPACE@[22; 23) " " - CALL_EXPR@[23; 26) - PATH_EXPR@[23; 24) - PATH@[23; 24) - PATH_SEGMENT@[23; 24) - NAME_REF@[23; 24) - IDENT@[23; 24) "f" - ARG_LIST@[24; 26) - L_PAREN@[24; 25) "(" - R_PAREN@[25; 26) ")" - SEMI@[26; 27) ";" - WHITESPACE@[27; 32) "\n " - LET_STMT@[32; 54) - LET_KW@[32; 35) "let" - WHITESPACE@[35; 36) " " - PLACEHOLDER_PAT@[36; 37) - UNDERSCORE@[36; 37) "_" - WHITESPACE@[37; 38) " " - EQ@[38; 39) "=" - WHITESPACE@[39; 40) " " - CALL_EXPR@[40; 53) - CALL_EXPR@[40; 46) - CALL_EXPR@[40; 43) - PATH_EXPR@[40; 41) - PATH@[40; 41) - PATH_SEGMENT@[40; 41) - NAME_REF@[40; 41) - IDENT@[40; 41) "f" - ARG_LIST@[41; 43) - L_PAREN@[41; 42) "(" - R_PAREN@[42; 43) ")" - ARG_LIST@[43; 46) - L_PAREN@[43; 44) "(" - LITERAL@[44; 45) - INT_NUMBER@[44; 45) "1" - R_PAREN@[45; 46) ")" - ARG_LIST@[46; 53) - L_PAREN@[46; 47) "(" - LITERAL@[47; 48) - INT_NUMBER@[47; 48) "1" - COMMA@[48; 49) "," - WHITESPACE@[49; 50) " " - LITERAL@[50; 51) - INT_NUMBER@[50; 51) "2" - COMMA@[51; 52) "," - R_PAREN@[52; 53) ")" - SEMI@[53; 54) ";" - WHITESPACE@[54; 59) "\n " - LET_STMT@[59; 84) - LET_KW@[59; 62) "let" - WHITESPACE@[62; 63) " " - PLACEHOLDER_PAT@[63; 64) - UNDERSCORE@[63; 64) "_" - WHITESPACE@[64; 65) " " - EQ@[65; 66) "=" - WHITESPACE@[66; 67) " " - CALL_EXPR@[67; 83) - PATH_EXPR@[67; 68) - PATH@[67; 68) - PATH_SEGMENT@[67; 68) - NAME_REF@[67; 68) - IDENT@[67; 68) "f" - ARG_LIST@[68; 83) - L_PAREN@[68; 69) "(" - CALL_EXPR@[69; 82) - PATH_EXPR@[69; 80) - PATH@[69; 80) - PATH@[69; 74) - PATH_SEGMENT@[69; 74) - L_ANGLE@[69; 70) "<" - PATH_TYPE@[70; 73) - PATH@[70; 73) - PATH_SEGMENT@[70; 73) - NAME_REF@[70; 73) - IDENT@[70; 73) "Foo" - R_ANGLE@[73; 74) ">" - COLONCOLON@[74; 76) "::" - PATH_SEGMENT@[76; 80) - NAME_REF@[76; 80) - IDENT@[76; 80) "func" - ARG_LIST@[80; 82) - L_PAREN@[80; 81) "(" - R_PAREN@[81; 82) ")" - R_PAREN@[82; 83) ")" - SEMI@[83; 84) ";" - WHITESPACE@[84; 89) "\n " - EXPR_STMT@[89; 115) - CALL_EXPR@[89; 114) - PATH_EXPR@[89; 90) - PATH@[89; 90) - PATH_SEGMENT@[89; 90) - NAME_REF@[89; 90) - IDENT@[89; 90) "f" - ARG_LIST@[90; 114) - L_PAREN@[90; 91) "(" - CALL_EXPR@[91; 113) - PATH_EXPR@[91; 111) - PATH@[91; 111) - PATH@[91; 105) - PATH_SEGMENT@[91; 105) - L_ANGLE@[91; 92) "<" - PATH_TYPE@[92; 95) - PATH@[92; 95) - PATH_SEGMENT@[92; 95) - NAME_REF@[92; 95) - IDENT@[92; 95) "Foo" - WHITESPACE@[95; 96) " " - AS_KW@[96; 98) "as" - WHITESPACE@[98; 99) " " - PATH_TYPE@[99; 104) - PATH@[99; 104) - PATH_SEGMENT@[99; 104) - NAME_REF@[99; 104) - IDENT@[99; 104) "Trait" - R_ANGLE@[104; 105) ">" - COLONCOLON@[105; 107) "::" - PATH_SEGMENT@[107; 111) - NAME_REF@[107; 111) - IDENT@[107; 111) "func" - ARG_LIST@[111; 113) - L_PAREN@[111; 112) "(" - R_PAREN@[112; 113) ")" - R_PAREN@[113; 114) ")" - SEMI@[114; 115) ";" - WHITESPACE@[115; 116) "\n" - R_CURLY@[116; 117) "}" + BLOCK_EXPR@[9; 117) + BLOCK@[9; 117) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + LET_STMT@[15; 27) + LET_KW@[15; 18) "let" + WHITESPACE@[18; 19) " " + PLACEHOLDER_PAT@[19; 20) + UNDERSCORE@[19; 20) "_" + WHITESPACE@[20; 21) " " + EQ@[21; 22) "=" + WHITESPACE@[22; 23) " " + CALL_EXPR@[23; 26) + PATH_EXPR@[23; 24) + PATH@[23; 24) + PATH_SEGMENT@[23; 24) + NAME_REF@[23; 24) + IDENT@[23; 24) "f" + ARG_LIST@[24; 26) + L_PAREN@[24; 25) "(" + R_PAREN@[25; 26) ")" + SEMI@[26; 27) ";" + WHITESPACE@[27; 32) "\n " + LET_STMT@[32; 54) + LET_KW@[32; 35) "let" + WHITESPACE@[35; 36) " " + PLACEHOLDER_PAT@[36; 37) + UNDERSCORE@[36; 37) "_" + WHITESPACE@[37; 38) " " + EQ@[38; 39) "=" + WHITESPACE@[39; 40) " " + CALL_EXPR@[40; 53) + CALL_EXPR@[40; 46) + CALL_EXPR@[40; 43) + PATH_EXPR@[40; 41) + PATH@[40; 41) + PATH_SEGMENT@[40; 41) + NAME_REF@[40; 41) + IDENT@[40; 41) "f" + ARG_LIST@[41; 43) + L_PAREN@[41; 42) "(" + R_PAREN@[42; 43) ")" + ARG_LIST@[43; 46) + L_PAREN@[43; 44) "(" + LITERAL@[44; 45) + INT_NUMBER@[44; 45) "1" + R_PAREN@[45; 46) ")" + ARG_LIST@[46; 53) + L_PAREN@[46; 47) "(" + LITERAL@[47; 48) + INT_NUMBER@[47; 48) "1" + COMMA@[48; 49) "," + WHITESPACE@[49; 50) " " + LITERAL@[50; 51) + INT_NUMBER@[50; 51) "2" + COMMA@[51; 52) "," + R_PAREN@[52; 53) ")" + SEMI@[53; 54) ";" + WHITESPACE@[54; 59) "\n " + LET_STMT@[59; 84) + LET_KW@[59; 62) "let" + WHITESPACE@[62; 63) " " + PLACEHOLDER_PAT@[63; 64) + UNDERSCORE@[63; 64) "_" + WHITESPACE@[64; 65) " " + EQ@[65; 66) "=" + WHITESPACE@[66; 67) " " + CALL_EXPR@[67; 83) + PATH_EXPR@[67; 68) + PATH@[67; 68) + PATH_SEGMENT@[67; 68) + NAME_REF@[67; 68) + IDENT@[67; 68) "f" + ARG_LIST@[68; 83) + L_PAREN@[68; 69) "(" + CALL_EXPR@[69; 82) + PATH_EXPR@[69; 80) + PATH@[69; 80) + PATH@[69; 74) + PATH_SEGMENT@[69; 74) + L_ANGLE@[69; 70) "<" + PATH_TYPE@[70; 73) + PATH@[70; 73) + PATH_SEGMENT@[70; 73) + NAME_REF@[70; 73) + IDENT@[70; 73) "Foo" + R_ANGLE@[73; 74) ">" + COLONCOLON@[74; 76) "::" + PATH_SEGMENT@[76; 80) + NAME_REF@[76; 80) + IDENT@[76; 80) "func" + ARG_LIST@[80; 82) + L_PAREN@[80; 81) "(" + R_PAREN@[81; 82) ")" + R_PAREN@[82; 83) ")" + SEMI@[83; 84) ";" + WHITESPACE@[84; 89) "\n " + EXPR_STMT@[89; 115) + CALL_EXPR@[89; 114) + PATH_EXPR@[89; 90) + PATH@[89; 90) + PATH_SEGMENT@[89; 90) + NAME_REF@[89; 90) + IDENT@[89; 90) "f" + ARG_LIST@[90; 114) + L_PAREN@[90; 91) "(" + CALL_EXPR@[91; 113) + PATH_EXPR@[91; 111) + PATH@[91; 111) + PATH@[91; 105) + PATH_SEGMENT@[91; 105) + L_ANGLE@[91; 92) "<" + PATH_TYPE@[92; 95) + PATH@[92; 95) + PATH_SEGMENT@[92; 95) + NAME_REF@[92; 95) + IDENT@[92; 95) "Foo" + WHITESPACE@[95; 96) " " + AS_KW@[96; 98) "as" + WHITESPACE@[98; 99) " " + PATH_TYPE@[99; 104) + PATH@[99; 104) + PATH_SEGMENT@[99; 104) + NAME_REF@[99; 104) + IDENT@[99; 104) "Trait" + R_ANGLE@[104; 105) ">" + COLONCOLON@[105; 107) "::" + PATH_SEGMENT@[107; 111) + NAME_REF@[107; 111) + IDENT@[107; 111) "func" + ARG_LIST@[111; 113) + L_PAREN@[111; 112) "(" + R_PAREN@[112; 113) ")" + R_PAREN@[113; 114) ")" + SEMI@[114; 115) ";" + WHITESPACE@[115; 116) "\n" + R_CURLY@[116; 117) "}" WHITESPACE@[117; 118) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0044_block_items.txt b/crates/ra_syntax/test_data/parser/inline/ok/0044_block_items.txt index d1a8c560a..e75d569f0 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0044_block_items.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0044_block_items.txt @@ -8,21 +8,23 @@ SOURCE_FILE@[0; 21) L_PAREN@[4; 5) "(" R_PAREN@[5; 6) ")" WHITESPACE@[6; 7) " " - BLOCK@[7; 20) - L_CURLY@[7; 8) "{" - WHITESPACE@[8; 9) " " - FN_DEF@[9; 18) - FN_KW@[9; 11) "fn" - WHITESPACE@[11; 12) " " - NAME@[12; 13) - IDENT@[12; 13) "b" - PARAM_LIST@[13; 15) - L_PAREN@[13; 14) "(" - R_PAREN@[14; 15) ")" - WHITESPACE@[15; 16) " " - BLOCK@[16; 18) - L_CURLY@[16; 17) "{" - R_CURLY@[17; 18) "}" - WHITESPACE@[18; 19) " " - R_CURLY@[19; 20) "}" + BLOCK_EXPR@[7; 20) + BLOCK@[7; 20) + L_CURLY@[7; 8) "{" + WHITESPACE@[8; 9) " " + FN_DEF@[9; 18) + FN_KW@[9; 11) "fn" + WHITESPACE@[11; 12) " " + NAME@[12; 13) + IDENT@[12; 13) "b" + PARAM_LIST@[13; 15) + L_PAREN@[13; 14) "(" + R_PAREN@[14; 15) ")" + WHITESPACE@[15; 16) " " + BLOCK_EXPR@[16; 18) + BLOCK@[16; 18) + L_CURLY@[16; 17) "{" + R_CURLY@[17; 18) "}" + WHITESPACE@[18; 19) " " + R_CURLY@[19; 20) "}" WHITESPACE@[20; 21) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0045_param_list_opt_patterns.txt b/crates/ra_syntax/test_data/parser/inline/ok/0045_param_list_opt_patterns.txt index f85d6a4bc..33886154d 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0045_param_list_opt_patterns.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0045_param_list_opt_patterns.txt @@ -40,7 +40,8 @@ SOURCE_FILE@[0; 35) PARAM_LIST@[30; 32) L_PAREN@[30; 31) "(" R_PAREN@[31; 32) ")" - BLOCK@[32; 34) - L_CURLY@[32; 33) "{" - R_CURLY@[33; 34) "}" + BLOCK_EXPR@[32; 34) + BLOCK@[32; 34) + L_CURLY@[32; 33) "{" + R_CURLY@[33; 34) "}" WHITESPACE@[34; 35) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0048_path_type_with_bounds.txt b/crates/ra_syntax/test_data/parser/inline/ok/0048_path_type_with_bounds.txt index bb948c8d8..02f2a9db6 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0048_path_type_with_bounds.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0048_path_type_with_bounds.txt @@ -34,9 +34,10 @@ SOURCE_FILE@[0; 58) LIFETIME@[20; 22) "\'f" R_ANGLE@[22; 23) ">" WHITESPACE@[23; 24) " " - BLOCK@[24; 26) - L_CURLY@[24; 25) "{" - R_CURLY@[25; 26) "}" + BLOCK_EXPR@[24; 26) + BLOCK@[24; 26) + L_CURLY@[24; 25) "{" + R_CURLY@[25; 26) "}" WHITESPACE@[26; 27) "\n" FN_DEF@[27; 57) FN_KW@[27; 29) "fn" @@ -75,7 +76,8 @@ SOURCE_FILE@[0; 58) LIFETIME@[51; 53) "\'f" R_ANGLE@[53; 54) ">" WHITESPACE@[54; 55) " " - BLOCK@[55; 57) - L_CURLY@[55; 56) "{" - R_CURLY@[56; 57) "}" + BLOCK_EXPR@[55; 57) + BLOCK@[55; 57) + L_CURLY@[55; 56) "{" + R_CURLY@[56; 57) "}" WHITESPACE@[57; 58) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0053_path_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0053_path_expr.txt index bc4b97c9f..f1018fcab 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0053_path_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0053_path_expr.txt @@ -8,88 +8,89 @@ SOURCE_FILE@[0; 91) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 90) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - LET_STMT@[15; 25) - LET_KW@[15; 18) "let" - WHITESPACE@[18; 19) " " - PLACEHOLDER_PAT@[19; 20) - UNDERSCORE@[19; 20) "_" - WHITESPACE@[20; 21) " " - EQ@[21; 22) "=" - WHITESPACE@[22; 23) " " - PATH_EXPR@[23; 24) - PATH@[23; 24) - PATH_SEGMENT@[23; 24) - NAME_REF@[23; 24) - IDENT@[23; 24) "a" - SEMI@[24; 25) ";" - WHITESPACE@[25; 30) "\n " - LET_STMT@[30; 43) - LET_KW@[30; 33) "let" - WHITESPACE@[33; 34) " " - PLACEHOLDER_PAT@[34; 35) - UNDERSCORE@[34; 35) "_" - WHITESPACE@[35; 36) " " - EQ@[36; 37) "=" - WHITESPACE@[37; 38) " " - PATH_EXPR@[38; 42) - PATH@[38; 42) - PATH@[38; 39) - PATH_SEGMENT@[38; 39) - NAME_REF@[38; 39) - IDENT@[38; 39) "a" - COLONCOLON@[39; 41) "::" - PATH_SEGMENT@[41; 42) - NAME_REF@[41; 42) - IDENT@[41; 42) "b" - SEMI@[42; 43) ";" - WHITESPACE@[43; 48) "\n " - LET_STMT@[48; 65) - LET_KW@[48; 51) "let" - WHITESPACE@[51; 52) " " - PLACEHOLDER_PAT@[52; 53) - UNDERSCORE@[52; 53) "_" - WHITESPACE@[53; 54) " " - EQ@[54; 55) "=" - WHITESPACE@[55; 56) " " - PATH_EXPR@[56; 64) - PATH@[56; 64) - PATH_SEGMENT@[56; 64) - COLONCOLON@[56; 58) "::" - NAME_REF@[58; 59) - IDENT@[58; 59) "a" - TYPE_ARG_LIST@[59; 64) - COLONCOLON@[59; 61) "::" - L_ANGLE@[61; 62) "<" - TYPE_ARG@[62; 63) - PATH_TYPE@[62; 63) - PATH@[62; 63) - PATH_SEGMENT@[62; 63) - NAME_REF@[62; 63) - IDENT@[62; 63) "b" - R_ANGLE@[63; 64) ">" - SEMI@[64; 65) ";" - WHITESPACE@[65; 70) "\n " - LET_STMT@[70; 88) - LET_KW@[70; 73) "let" - WHITESPACE@[73; 74) " " - PLACEHOLDER_PAT@[74; 75) - UNDERSCORE@[74; 75) "_" - WHITESPACE@[75; 76) " " - EQ@[76; 77) "=" - WHITESPACE@[77; 78) " " - MACRO_CALL@[78; 87) - PATH@[78; 84) - PATH_SEGMENT@[78; 84) - NAME_REF@[78; 84) - IDENT@[78; 84) "format" - EXCL@[84; 85) "!" - TOKEN_TREE@[85; 87) - L_PAREN@[85; 86) "(" - R_PAREN@[86; 87) ")" - SEMI@[87; 88) ";" - WHITESPACE@[88; 89) "\n" - R_CURLY@[89; 90) "}" + BLOCK_EXPR@[9; 90) + BLOCK@[9; 90) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + LET_STMT@[15; 25) + LET_KW@[15; 18) "let" + WHITESPACE@[18; 19) " " + PLACEHOLDER_PAT@[19; 20) + UNDERSCORE@[19; 20) "_" + WHITESPACE@[20; 21) " " + EQ@[21; 22) "=" + WHITESPACE@[22; 23) " " + PATH_EXPR@[23; 24) + PATH@[23; 24) + PATH_SEGMENT@[23; 24) + NAME_REF@[23; 24) + IDENT@[23; 24) "a" + SEMI@[24; 25) ";" + WHITESPACE@[25; 30) "\n " + LET_STMT@[30; 43) + LET_KW@[30; 33) "let" + WHITESPACE@[33; 34) " " + PLACEHOLDER_PAT@[34; 35) + UNDERSCORE@[34; 35) "_" + WHITESPACE@[35; 36) " " + EQ@[36; 37) "=" + WHITESPACE@[37; 38) " " + PATH_EXPR@[38; 42) + PATH@[38; 42) + PATH@[38; 39) + PATH_SEGMENT@[38; 39) + NAME_REF@[38; 39) + IDENT@[38; 39) "a" + COLONCOLON@[39; 41) "::" + PATH_SEGMENT@[41; 42) + NAME_REF@[41; 42) + IDENT@[41; 42) "b" + SEMI@[42; 43) ";" + WHITESPACE@[43; 48) "\n " + LET_STMT@[48; 65) + LET_KW@[48; 51) "let" + WHITESPACE@[51; 52) " " + PLACEHOLDER_PAT@[52; 53) + UNDERSCORE@[52; 53) "_" + WHITESPACE@[53; 54) " " + EQ@[54; 55) "=" + WHITESPACE@[55; 56) " " + PATH_EXPR@[56; 64) + PATH@[56; 64) + PATH_SEGMENT@[56; 64) + COLONCOLON@[56; 58) "::" + NAME_REF@[58; 59) + IDENT@[58; 59) "a" + TYPE_ARG_LIST@[59; 64) + COLONCOLON@[59; 61) "::" + L_ANGLE@[61; 62) "<" + TYPE_ARG@[62; 63) + PATH_TYPE@[62; 63) + PATH@[62; 63) + PATH_SEGMENT@[62; 63) + NAME_REF@[62; 63) + IDENT@[62; 63) "b" + R_ANGLE@[63; 64) ">" + SEMI@[64; 65) ";" + WHITESPACE@[65; 70) "\n " + LET_STMT@[70; 88) + LET_KW@[70; 73) "let" + WHITESPACE@[73; 74) " " + PLACEHOLDER_PAT@[74; 75) + UNDERSCORE@[74; 75) "_" + WHITESPACE@[75; 76) " " + EQ@[76; 77) "=" + WHITESPACE@[77; 78) " " + MACRO_CALL@[78; 87) + PATH@[78; 84) + PATH_SEGMENT@[78; 84) + NAME_REF@[78; 84) + IDENT@[78; 84) "format" + EXCL@[84; 85) "!" + TOKEN_TREE@[85; 87) + L_PAREN@[85; 86) "(" + R_PAREN@[86; 87) ")" + SEMI@[87; 88) ";" + WHITESPACE@[88; 89) "\n" + R_CURLY@[89; 90) "}" WHITESPACE@[90; 91) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0055_literal_pattern.txt b/crates/ra_syntax/test_data/parser/inline/ok/0055_literal_pattern.txt index ab5dad438..2b28cec67 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0055_literal_pattern.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0055_literal_pattern.txt @@ -8,69 +8,70 @@ SOURCE_FILE@[0; 113) L_PAREN@[7; 8) "(" R_PAREN@[8; 9) ")" WHITESPACE@[9; 10) " " - BLOCK@[10; 112) - L_CURLY@[10; 11) "{" - WHITESPACE@[11; 16) "\n " - MATCH_EXPR@[16; 110) - MATCH_KW@[16; 21) "match" - WHITESPACE@[21; 22) " " - TUPLE_EXPR@[22; 24) - L_PAREN@[22; 23) "(" - R_PAREN@[23; 24) ")" - WHITESPACE@[24; 25) " " - MATCH_ARM_LIST@[25; 110) - L_CURLY@[25; 26) "{" - WHITESPACE@[26; 35) "\n " - MATCH_ARM@[35; 43) - LITERAL_PAT@[35; 37) - MINUS@[35; 36) "-" - LITERAL@[36; 37) - INT_NUMBER@[36; 37) "1" - WHITESPACE@[37; 38) " " - FAT_ARROW@[38; 40) "=>" - WHITESPACE@[40; 41) " " - TUPLE_EXPR@[41; 43) - L_PAREN@[41; 42) "(" - R_PAREN@[42; 43) ")" - COMMA@[43; 44) "," - WHITESPACE@[44; 53) "\n " - MATCH_ARM@[53; 61) - LITERAL_PAT@[53; 55) - LITERAL@[53; 55) - INT_NUMBER@[53; 55) "92" - WHITESPACE@[55; 56) " " - FAT_ARROW@[56; 58) "=>" - WHITESPACE@[58; 59) " " - TUPLE_EXPR@[59; 61) - L_PAREN@[59; 60) "(" - R_PAREN@[60; 61) ")" - COMMA@[61; 62) "," - WHITESPACE@[62; 71) "\n " - MATCH_ARM@[71; 80) - LITERAL_PAT@[71; 74) - LITERAL@[71; 74) - CHAR@[71; 74) "\'c\'" - WHITESPACE@[74; 75) " " - FAT_ARROW@[75; 77) "=>" - WHITESPACE@[77; 78) " " - TUPLE_EXPR@[78; 80) - L_PAREN@[78; 79) "(" - R_PAREN@[79; 80) ")" - COMMA@[80; 81) "," - WHITESPACE@[81; 90) "\n " - MATCH_ARM@[90; 103) - LITERAL_PAT@[90; 97) - LITERAL@[90; 97) - STRING@[90; 97) "\"hello\"" - WHITESPACE@[97; 98) " " - FAT_ARROW@[98; 100) "=>" - WHITESPACE@[100; 101) " " - TUPLE_EXPR@[101; 103) - L_PAREN@[101; 102) "(" - R_PAREN@[102; 103) ")" - COMMA@[103; 104) "," - WHITESPACE@[104; 109) "\n " - R_CURLY@[109; 110) "}" - WHITESPACE@[110; 111) "\n" - R_CURLY@[111; 112) "}" + BLOCK_EXPR@[10; 112) + BLOCK@[10; 112) + L_CURLY@[10; 11) "{" + WHITESPACE@[11; 16) "\n " + MATCH_EXPR@[16; 110) + MATCH_KW@[16; 21) "match" + WHITESPACE@[21; 22) " " + TUPLE_EXPR@[22; 24) + L_PAREN@[22; 23) "(" + R_PAREN@[23; 24) ")" + WHITESPACE@[24; 25) " " + MATCH_ARM_LIST@[25; 110) + L_CURLY@[25; 26) "{" + WHITESPACE@[26; 35) "\n " + MATCH_ARM@[35; 43) + LITERAL_PAT@[35; 37) + MINUS@[35; 36) "-" + LITERAL@[36; 37) + INT_NUMBER@[36; 37) "1" + WHITESPACE@[37; 38) " " + FAT_ARROW@[38; 40) "=>" + WHITESPACE@[40; 41) " " + TUPLE_EXPR@[41; 43) + L_PAREN@[41; 42) "(" + R_PAREN@[42; 43) ")" + COMMA@[43; 44) "," + WHITESPACE@[44; 53) "\n " + MATCH_ARM@[53; 61) + LITERAL_PAT@[53; 55) + LITERAL@[53; 55) + INT_NUMBER@[53; 55) "92" + WHITESPACE@[55; 56) " " + FAT_ARROW@[56; 58) "=>" + WHITESPACE@[58; 59) " " + TUPLE_EXPR@[59; 61) + L_PAREN@[59; 60) "(" + R_PAREN@[60; 61) ")" + COMMA@[61; 62) "," + WHITESPACE@[62; 71) "\n " + MATCH_ARM@[71; 80) + LITERAL_PAT@[71; 74) + LITERAL@[71; 74) + CHAR@[71; 74) "\'c\'" + WHITESPACE@[74; 75) " " + FAT_ARROW@[75; 77) "=>" + WHITESPACE@[77; 78) " " + TUPLE_EXPR@[78; 80) + L_PAREN@[78; 79) "(" + R_PAREN@[79; 80) ")" + COMMA@[80; 81) "," + WHITESPACE@[81; 90) "\n " + MATCH_ARM@[90; 103) + LITERAL_PAT@[90; 97) + LITERAL@[90; 97) + STRING@[90; 97) "\"hello\"" + WHITESPACE@[97; 98) " " + FAT_ARROW@[98; 100) "=>" + WHITESPACE@[100; 101) " " + TUPLE_EXPR@[101; 103) + L_PAREN@[101; 102) "(" + R_PAREN@[102; 103) ")" + COMMA@[103; 104) "," + WHITESPACE@[104; 109) "\n " + R_CURLY@[109; 110) "}" + WHITESPACE@[110; 111) "\n" + R_CURLY@[111; 112) "}" WHITESPACE@[112; 113) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0056_where_clause.txt b/crates/ra_syntax/test_data/parser/inline/ok/0056_where_clause.txt index c86a0db3f..9a9a13370 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0056_where_clause.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0056_where_clause.txt @@ -104,7 +104,8 @@ SOURCE_FILE@[0; 116) TYPE_BOUND@[110; 112) LIFETIME@[110; 112) "\'a" WHITESPACE@[112; 113) "\n" - BLOCK@[113; 115) - L_CURLY@[113; 114) "{" - R_CURLY@[114; 115) "}" + BLOCK_EXPR@[113; 115) + BLOCK@[113; 115) + L_CURLY@[113; 114) "{" + R_CURLY@[114; 115) "}" WHITESPACE@[115; 116) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0057_const_fn.txt b/crates/ra_syntax/test_data/parser/inline/ok/0057_const_fn.txt index 7a8b81983..9788197be 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0057_const_fn.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0057_const_fn.txt @@ -10,7 +10,8 @@ SOURCE_FILE@[0; 18) L_PAREN@[12; 13) "(" R_PAREN@[13; 14) ")" WHITESPACE@[14; 15) " " - BLOCK@[15; 17) - L_CURLY@[15; 16) "{" - R_CURLY@[16; 17) "}" + BLOCK_EXPR@[15; 17) + BLOCK@[15; 17) + L_CURLY@[15; 16) "{" + R_CURLY@[16; 17) "}" WHITESPACE@[17; 18) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0058_range_pat.txt b/crates/ra_syntax/test_data/parser/inline/ok/0058_range_pat.txt index 1b7e9b905..3d659ce10 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0058_range_pat.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0058_range_pat.txt @@ -8,75 +8,76 @@ SOURCE_FILE@[0; 112) L_PAREN@[7; 8) "(" R_PAREN@[8; 9) ")" WHITESPACE@[9; 10) " " - BLOCK@[10; 111) - L_CURLY@[10; 11) "{" - WHITESPACE@[11; 16) "\n " - MATCH_EXPR@[16; 109) - MATCH_KW@[16; 21) "match" - WHITESPACE@[21; 22) " " - LITERAL@[22; 24) - INT_NUMBER@[22; 24) "92" - WHITESPACE@[24; 25) " " - MATCH_ARM_LIST@[25; 109) - L_CURLY@[25; 26) "{" - WHITESPACE@[26; 35) "\n " - MATCH_ARM@[35; 50) - RANGE_PAT@[35; 44) - LITERAL_PAT@[35; 36) - LITERAL@[35; 36) - INT_NUMBER@[35; 36) "0" - WHITESPACE@[36; 37) " " - DOTDOTDOT@[37; 40) "..." - WHITESPACE@[40; 41) " " - LITERAL_PAT@[41; 44) - LITERAL@[41; 44) - INT_NUMBER@[41; 44) "100" - WHITESPACE@[44; 45) " " - FAT_ARROW@[45; 47) "=>" - WHITESPACE@[47; 48) " " - TUPLE_EXPR@[48; 50) - L_PAREN@[48; 49) "(" - R_PAREN@[49; 50) ")" - COMMA@[50; 51) "," - WHITESPACE@[51; 60) "\n " - MATCH_ARM@[60; 77) - RANGE_PAT@[60; 71) - LITERAL_PAT@[60; 63) - LITERAL@[60; 63) - INT_NUMBER@[60; 63) "101" - WHITESPACE@[63; 64) " " - DOTDOTEQ@[64; 67) "..=" - WHITESPACE@[67; 68) " " - LITERAL_PAT@[68; 71) - LITERAL@[68; 71) - INT_NUMBER@[68; 71) "200" - WHITESPACE@[71; 72) " " - FAT_ARROW@[72; 74) "=>" - WHITESPACE@[74; 75) " " - TUPLE_EXPR@[75; 77) - L_PAREN@[75; 76) "(" - R_PAREN@[76; 77) ")" - COMMA@[77; 78) "," - WHITESPACE@[78; 87) "\n " - MATCH_ARM@[87; 102) - RANGE_PAT@[87; 97) - LITERAL_PAT@[87; 90) - LITERAL@[87; 90) - INT_NUMBER@[87; 90) "200" - WHITESPACE@[90; 91) " " - DOTDOT@[91; 93) ".." - WHITESPACE@[93; 94) " " - LITERAL_PAT@[94; 97) - LITERAL@[94; 97) - INT_NUMBER@[94; 97) "301" - FAT_ARROW@[97; 99) "=>" - WHITESPACE@[99; 100) " " - TUPLE_EXPR@[100; 102) - L_PAREN@[100; 101) "(" - R_PAREN@[101; 102) ")" - COMMA@[102; 103) "," - WHITESPACE@[103; 108) "\n " - R_CURLY@[108; 109) "}" - WHITESPACE@[109; 110) "\n" - R_CURLY@[110; 111) "}" + BLOCK_EXPR@[10; 111) + BLOCK@[10; 111) + L_CURLY@[10; 11) "{" + WHITESPACE@[11; 16) "\n " + MATCH_EXPR@[16; 109) + MATCH_KW@[16; 21) "match" + WHITESPACE@[21; 22) " " + LITERAL@[22; 24) + INT_NUMBER@[22; 24) "92" + WHITESPACE@[24; 25) " " + MATCH_ARM_LIST@[25; 109) + L_CURLY@[25; 26) "{" + WHITESPACE@[26; 35) "\n " + MATCH_ARM@[35; 50) + RANGE_PAT@[35; 44) + LITERAL_PAT@[35; 36) + LITERAL@[35; 36) + INT_NUMBER@[35; 36) "0" + WHITESPACE@[36; 37) " " + DOTDOTDOT@[37; 40) "..." + WHITESPACE@[40; 41) " " + LITERAL_PAT@[41; 44) + LITERAL@[41; 44) + INT_NUMBER@[41; 44) "100" + WHITESPACE@[44; 45) " " + FAT_ARROW@[45; 47) "=>" + WHITESPACE@[47; 48) " " + TUPLE_EXPR@[48; 50) + L_PAREN@[48; 49) "(" + R_PAREN@[49; 50) ")" + COMMA@[50; 51) "," + WHITESPACE@[51; 60) "\n " + MATCH_ARM@[60; 77) + RANGE_PAT@[60; 71) + LITERAL_PAT@[60; 63) + LITERAL@[60; 63) + INT_NUMBER@[60; 63) "101" + WHITESPACE@[63; 64) " " + DOTDOTEQ@[64; 67) "..=" + WHITESPACE@[67; 68) " " + LITERAL_PAT@[68; 71) + LITERAL@[68; 71) + INT_NUMBER@[68; 71) "200" + WHITESPACE@[71; 72) " " + FAT_ARROW@[72; 74) "=>" + WHITESPACE@[74; 75) " " + TUPLE_EXPR@[75; 77) + L_PAREN@[75; 76) "(" + R_PAREN@[76; 77) ")" + COMMA@[77; 78) "," + WHITESPACE@[78; 87) "\n " + MATCH_ARM@[87; 102) + RANGE_PAT@[87; 97) + LITERAL_PAT@[87; 90) + LITERAL@[87; 90) + INT_NUMBER@[87; 90) "200" + WHITESPACE@[90; 91) " " + DOTDOT@[91; 93) ".." + WHITESPACE@[93; 94) " " + LITERAL_PAT@[94; 97) + LITERAL@[94; 97) + INT_NUMBER@[94; 97) "301" + FAT_ARROW@[97; 99) "=>" + WHITESPACE@[99; 100) " " + TUPLE_EXPR@[100; 102) + L_PAREN@[100; 101) "(" + R_PAREN@[101; 102) ")" + COMMA@[102; 103) "," + WHITESPACE@[103; 108) "\n " + R_CURLY@[108; 109) "}" + WHITESPACE@[109; 110) "\n" + R_CURLY@[110; 111) "}" WHITESPACE@[111; 112) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0059_match_arms_commas.txt b/crates/ra_syntax/test_data/parser/inline/ok/0059_match_arms_commas.txt index 949117134..efcd89c4c 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0059_match_arms_commas.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0059_match_arms_commas.txt @@ -8,52 +8,53 @@ SOURCE_FILE@[0; 83) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 82) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - MATCH_EXPR@[15; 80) - MATCH_KW@[15; 20) "match" - WHITESPACE@[20; 21) " " - TUPLE_EXPR@[21; 23) - L_PAREN@[21; 22) "(" - R_PAREN@[22; 23) ")" - WHITESPACE@[23; 24) " " - MATCH_ARM_LIST@[24; 80) - L_CURLY@[24; 25) "{" - WHITESPACE@[25; 34) "\n " - MATCH_ARM@[34; 41) - PLACEHOLDER_PAT@[34; 35) - UNDERSCORE@[34; 35) "_" - WHITESPACE@[35; 36) " " - FAT_ARROW@[36; 38) "=>" - WHITESPACE@[38; 39) " " - TUPLE_EXPR@[39; 41) - L_PAREN@[39; 40) "(" - R_PAREN@[40; 41) ")" - COMMA@[41; 42) "," - WHITESPACE@[42; 51) "\n " - MATCH_ARM@[51; 58) - PLACEHOLDER_PAT@[51; 52) - UNDERSCORE@[51; 52) "_" - WHITESPACE@[52; 53) " " - FAT_ARROW@[53; 55) "=>" - WHITESPACE@[55; 56) " " - BLOCK_EXPR@[56; 58) - BLOCK@[56; 58) - L_CURLY@[56; 57) "{" - R_CURLY@[57; 58) "}" - WHITESPACE@[58; 67) "\n " - MATCH_ARM@[67; 74) - PLACEHOLDER_PAT@[67; 68) - UNDERSCORE@[67; 68) "_" - WHITESPACE@[68; 69) " " - FAT_ARROW@[69; 71) "=>" - WHITESPACE@[71; 72) " " - TUPLE_EXPR@[72; 74) - L_PAREN@[72; 73) "(" - R_PAREN@[73; 74) ")" - WHITESPACE@[74; 79) "\n " - R_CURLY@[79; 80) "}" - WHITESPACE@[80; 81) "\n" - R_CURLY@[81; 82) "}" + BLOCK_EXPR@[9; 82) + BLOCK@[9; 82) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + MATCH_EXPR@[15; 80) + MATCH_KW@[15; 20) "match" + WHITESPACE@[20; 21) " " + TUPLE_EXPR@[21; 23) + L_PAREN@[21; 22) "(" + R_PAREN@[22; 23) ")" + WHITESPACE@[23; 24) " " + MATCH_ARM_LIST@[24; 80) + L_CURLY@[24; 25) "{" + WHITESPACE@[25; 34) "\n " + MATCH_ARM@[34; 41) + PLACEHOLDER_PAT@[34; 35) + UNDERSCORE@[34; 35) "_" + WHITESPACE@[35; 36) " " + FAT_ARROW@[36; 38) "=>" + WHITESPACE@[38; 39) " " + TUPLE_EXPR@[39; 41) + L_PAREN@[39; 40) "(" + R_PAREN@[40; 41) ")" + COMMA@[41; 42) "," + WHITESPACE@[42; 51) "\n " + MATCH_ARM@[51; 58) + PLACEHOLDER_PAT@[51; 52) + UNDERSCORE@[51; 52) "_" + WHITESPACE@[52; 53) " " + FAT_ARROW@[53; 55) "=>" + WHITESPACE@[55; 56) " " + BLOCK_EXPR@[56; 58) + BLOCK@[56; 58) + L_CURLY@[56; 57) "{" + R_CURLY@[57; 58) "}" + WHITESPACE@[58; 67) "\n " + MATCH_ARM@[67; 74) + PLACEHOLDER_PAT@[67; 68) + UNDERSCORE@[67; 68) "_" + WHITESPACE@[68; 69) " " + FAT_ARROW@[69; 71) "=>" + WHITESPACE@[71; 72) " " + TUPLE_EXPR@[72; 74) + L_PAREN@[72; 73) "(" + R_PAREN@[73; 74) ")" + WHITESPACE@[74; 79) "\n " + R_CURLY@[79; 80) "}" + WHITESPACE@[80; 81) "\n" + R_CURLY@[81; 82) "}" WHITESPACE@[82; 83) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0061_record_lit.txt b/crates/ra_syntax/test_data/parser/inline/ok/0061_record_lit.txt index 1c915ea0c..dcf527639 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0061_record_lit.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0061_record_lit.txt @@ -8,111 +8,112 @@ SOURCE_FILE@[0; 112) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 111) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 20) - RECORD_LIT@[15; 19) - PATH@[15; 16) - PATH_SEGMENT@[15; 16) - NAME_REF@[15; 16) - IDENT@[15; 16) "S" - WHITESPACE@[16; 17) " " - RECORD_FIELD_LIST@[17; 19) - L_CURLY@[17; 18) "{" - R_CURLY@[18; 19) "}" - SEMI@[19; 20) ";" - WHITESPACE@[20; 25) "\n " - EXPR_STMT@[25; 41) - RECORD_LIT@[25; 40) - PATH@[25; 26) - PATH_SEGMENT@[25; 26) - NAME_REF@[25; 26) - IDENT@[25; 26) "S" - WHITESPACE@[26; 27) " " - RECORD_FIELD_LIST@[27; 40) - L_CURLY@[27; 28) "{" - WHITESPACE@[28; 29) " " - RECORD_FIELD@[29; 30) - NAME_REF@[29; 30) - IDENT@[29; 30) "x" - COMMA@[30; 31) "," - WHITESPACE@[31; 32) " " - RECORD_FIELD@[32; 37) - NAME_REF@[32; 33) - IDENT@[32; 33) "y" - COLON@[33; 34) ":" - WHITESPACE@[34; 35) " " - LITERAL@[35; 37) - INT_NUMBER@[35; 37) "32" - COMMA@[37; 38) "," - WHITESPACE@[38; 39) " " - R_CURLY@[39; 40) "}" - SEMI@[40; 41) ";" - WHITESPACE@[41; 46) "\n " - EXPR_STMT@[46; 83) - RECORD_LIT@[46; 82) - PATH@[46; 47) - PATH_SEGMENT@[46; 47) - NAME_REF@[46; 47) - IDENT@[46; 47) "S" - WHITESPACE@[47; 48) " " - RECORD_FIELD_LIST@[48; 82) - L_CURLY@[48; 49) "{" - WHITESPACE@[49; 50) " " - RECORD_FIELD@[50; 51) - NAME_REF@[50; 51) - IDENT@[50; 51) "x" - COMMA@[51; 52) "," - WHITESPACE@[52; 53) " " - RECORD_FIELD@[53; 58) - NAME_REF@[53; 54) - IDENT@[53; 54) "y" - COLON@[54; 55) ":" - WHITESPACE@[55; 56) " " - LITERAL@[56; 58) - INT_NUMBER@[56; 58) "32" - COMMA@[58; 59) "," - WHITESPACE@[59; 60) " " - DOTDOT@[60; 62) ".." - CALL_EXPR@[62; 80) - PATH_EXPR@[62; 78) - PATH@[62; 78) - PATH@[62; 69) - PATH_SEGMENT@[62; 69) - NAME_REF@[62; 69) - IDENT@[62; 69) "Default" - COLONCOLON@[69; 71) "::" - PATH_SEGMENT@[71; 78) - NAME_REF@[71; 78) - IDENT@[71; 78) "default" - ARG_LIST@[78; 80) - L_PAREN@[78; 79) "(" - R_PAREN@[79; 80) ")" - WHITESPACE@[80; 81) " " - R_CURLY@[81; 82) "}" - SEMI@[82; 83) ";" - WHITESPACE@[83; 88) "\n " - EXPR_STMT@[88; 109) - RECORD_LIT@[88; 108) - PATH@[88; 99) - PATH_SEGMENT@[88; 99) - NAME_REF@[88; 99) - IDENT@[88; 99) "TupleStruct" - WHITESPACE@[99; 100) " " - RECORD_FIELD_LIST@[100; 108) - L_CURLY@[100; 101) "{" - WHITESPACE@[101; 102) " " - RECORD_FIELD@[102; 106) - NAME_REF@[102; 103) - INT_NUMBER@[102; 103) "0" - COLON@[103; 104) ":" - WHITESPACE@[104; 105) " " - LITERAL@[105; 106) - INT_NUMBER@[105; 106) "1" - WHITESPACE@[106; 107) " " - R_CURLY@[107; 108) "}" - SEMI@[108; 109) ";" - WHITESPACE@[109; 110) "\n" - R_CURLY@[110; 111) "}" + BLOCK_EXPR@[9; 111) + BLOCK@[9; 111) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 20) + RECORD_LIT@[15; 19) + PATH@[15; 16) + PATH_SEGMENT@[15; 16) + NAME_REF@[15; 16) + IDENT@[15; 16) "S" + WHITESPACE@[16; 17) " " + RECORD_FIELD_LIST@[17; 19) + L_CURLY@[17; 18) "{" + R_CURLY@[18; 19) "}" + SEMI@[19; 20) ";" + WHITESPACE@[20; 25) "\n " + EXPR_STMT@[25; 41) + RECORD_LIT@[25; 40) + PATH@[25; 26) + PATH_SEGMENT@[25; 26) + NAME_REF@[25; 26) + IDENT@[25; 26) "S" + WHITESPACE@[26; 27) " " + RECORD_FIELD_LIST@[27; 40) + L_CURLY@[27; 28) "{" + WHITESPACE@[28; 29) " " + RECORD_FIELD@[29; 30) + NAME_REF@[29; 30) + IDENT@[29; 30) "x" + COMMA@[30; 31) "," + WHITESPACE@[31; 32) " " + RECORD_FIELD@[32; 37) + NAME_REF@[32; 33) + IDENT@[32; 33) "y" + COLON@[33; 34) ":" + WHITESPACE@[34; 35) " " + LITERAL@[35; 37) + INT_NUMBER@[35; 37) "32" + COMMA@[37; 38) "," + WHITESPACE@[38; 39) " " + R_CURLY@[39; 40) "}" + SEMI@[40; 41) ";" + WHITESPACE@[41; 46) "\n " + EXPR_STMT@[46; 83) + RECORD_LIT@[46; 82) + PATH@[46; 47) + PATH_SEGMENT@[46; 47) + NAME_REF@[46; 47) + IDENT@[46; 47) "S" + WHITESPACE@[47; 48) " " + RECORD_FIELD_LIST@[48; 82) + L_CURLY@[48; 49) "{" + WHITESPACE@[49; 50) " " + RECORD_FIELD@[50; 51) + NAME_REF@[50; 51) + IDENT@[50; 51) "x" + COMMA@[51; 52) "," + WHITESPACE@[52; 53) " " + RECORD_FIELD@[53; 58) + NAME_REF@[53; 54) + IDENT@[53; 54) "y" + COLON@[54; 55) ":" + WHITESPACE@[55; 56) " " + LITERAL@[56; 58) + INT_NUMBER@[56; 58) "32" + COMMA@[58; 59) "," + WHITESPACE@[59; 60) " " + DOTDOT@[60; 62) ".." + CALL_EXPR@[62; 80) + PATH_EXPR@[62; 78) + PATH@[62; 78) + PATH@[62; 69) + PATH_SEGMENT@[62; 69) + NAME_REF@[62; 69) + IDENT@[62; 69) "Default" + COLONCOLON@[69; 71) "::" + PATH_SEGMENT@[71; 78) + NAME_REF@[71; 78) + IDENT@[71; 78) "default" + ARG_LIST@[78; 80) + L_PAREN@[78; 79) "(" + R_PAREN@[79; 80) ")" + WHITESPACE@[80; 81) " " + R_CURLY@[81; 82) "}" + SEMI@[82; 83) ";" + WHITESPACE@[83; 88) "\n " + EXPR_STMT@[88; 109) + RECORD_LIT@[88; 108) + PATH@[88; 99) + PATH_SEGMENT@[88; 99) + NAME_REF@[88; 99) + IDENT@[88; 99) "TupleStruct" + WHITESPACE@[99; 100) " " + RECORD_FIELD_LIST@[100; 108) + L_CURLY@[100; 101) "{" + WHITESPACE@[101; 102) " " + RECORD_FIELD@[102; 106) + NAME_REF@[102; 103) + INT_NUMBER@[102; 103) "0" + COLON@[103; 104) ":" + WHITESPACE@[104; 105) " " + LITERAL@[105; 106) + INT_NUMBER@[105; 106) "1" + WHITESPACE@[106; 107) " " + R_CURLY@[107; 108) "}" + SEMI@[108; 109) ";" + WHITESPACE@[109; 110) "\n" + R_CURLY@[110; 111) "}" WHITESPACE@[111; 112) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0062_mod_contents.txt b/crates/ra_syntax/test_data/parser/inline/ok/0062_mod_contents.txt index db2b9a582..6b528c252 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0062_mod_contents.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0062_mod_contents.txt @@ -8,9 +8,10 @@ SOURCE_FILE@[0; 70) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 11) - L_CURLY@[9; 10) "{" - R_CURLY@[10; 11) "}" + BLOCK_EXPR@[9; 11) + BLOCK@[9; 11) + L_CURLY@[9; 10) "{" + R_CURLY@[10; 11) "}" WHITESPACE@[11; 12) "\n" MACRO_CALL@[12; 31) PATH@[12; 23) diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0064_if_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0064_if_expr.txt index 554bda6fb..14ea91fd2 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0064_if_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0064_if_expr.txt @@ -8,88 +8,96 @@ SOURCE_FILE@[0; 107) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 106) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 26) - IF_EXPR@[15; 25) - IF_KW@[15; 17) "if" - WHITESPACE@[17; 18) " " - CONDITION@[18; 22) - LITERAL@[18; 22) - TRUE_KW@[18; 22) "true" - WHITESPACE@[22; 23) " " - BLOCK@[23; 25) - L_CURLY@[23; 24) "{" - R_CURLY@[24; 25) "}" - SEMI@[25; 26) ";" - WHITESPACE@[26; 31) "\n " - EXPR_STMT@[31; 50) - IF_EXPR@[31; 49) - IF_KW@[31; 33) "if" - WHITESPACE@[33; 34) " " - CONDITION@[34; 38) - LITERAL@[34; 38) - TRUE_KW@[34; 38) "true" - WHITESPACE@[38; 39) " " - BLOCK@[39; 41) - L_CURLY@[39; 40) "{" - R_CURLY@[40; 41) "}" - WHITESPACE@[41; 42) " " - ELSE_KW@[42; 46) "else" - WHITESPACE@[46; 47) " " - BLOCK@[47; 49) - L_CURLY@[47; 48) "{" - R_CURLY@[48; 49) "}" - SEMI@[49; 50) ";" - WHITESPACE@[50; 55) "\n " - EXPR_STMT@[55; 91) - IF_EXPR@[55; 90) - IF_KW@[55; 57) "if" - WHITESPACE@[57; 58) " " - CONDITION@[58; 62) - LITERAL@[58; 62) - TRUE_KW@[58; 62) "true" - WHITESPACE@[62; 63) " " - BLOCK@[63; 65) - L_CURLY@[63; 64) "{" - R_CURLY@[64; 65) "}" - WHITESPACE@[65; 66) " " - ELSE_KW@[66; 70) "else" - WHITESPACE@[70; 71) " " - IF_EXPR@[71; 90) - IF_KW@[71; 73) "if" - WHITESPACE@[73; 74) " " - CONDITION@[74; 79) - LITERAL@[74; 79) - FALSE_KW@[74; 79) "false" - WHITESPACE@[79; 80) " " - BLOCK@[80; 82) - L_CURLY@[80; 81) "{" - R_CURLY@[81; 82) "}" - WHITESPACE@[82; 83) " " - ELSE_KW@[83; 87) "else" - WHITESPACE@[87; 88) " " - BLOCK@[88; 90) - L_CURLY@[88; 89) "{" - R_CURLY@[89; 90) "}" - SEMI@[90; 91) ";" - WHITESPACE@[91; 96) "\n " - EXPR_STMT@[96; 104) - IF_EXPR@[96; 103) - IF_KW@[96; 98) "if" - WHITESPACE@[98; 99) " " - CONDITION@[99; 100) - PATH_EXPR@[99; 100) - PATH@[99; 100) - PATH_SEGMENT@[99; 100) - NAME_REF@[99; 100) - IDENT@[99; 100) "S" - WHITESPACE@[100; 101) " " - BLOCK@[101; 103) - L_CURLY@[101; 102) "{" - R_CURLY@[102; 103) "}" - SEMI@[103; 104) ";" - WHITESPACE@[104; 105) "\n" - R_CURLY@[105; 106) "}" + BLOCK_EXPR@[9; 106) + BLOCK@[9; 106) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 26) + IF_EXPR@[15; 25) + IF_KW@[15; 17) "if" + WHITESPACE@[17; 18) " " + CONDITION@[18; 22) + LITERAL@[18; 22) + TRUE_KW@[18; 22) "true" + WHITESPACE@[22; 23) " " + BLOCK_EXPR@[23; 25) + BLOCK@[23; 25) + L_CURLY@[23; 24) "{" + R_CURLY@[24; 25) "}" + SEMI@[25; 26) ";" + WHITESPACE@[26; 31) "\n " + EXPR_STMT@[31; 50) + IF_EXPR@[31; 49) + IF_KW@[31; 33) "if" + WHITESPACE@[33; 34) " " + CONDITION@[34; 38) + LITERAL@[34; 38) + TRUE_KW@[34; 38) "true" + WHITESPACE@[38; 39) " " + BLOCK_EXPR@[39; 41) + BLOCK@[39; 41) + L_CURLY@[39; 40) "{" + R_CURLY@[40; 41) "}" + WHITESPACE@[41; 42) " " + ELSE_KW@[42; 46) "else" + WHITESPACE@[46; 47) " " + BLOCK_EXPR@[47; 49) + BLOCK@[47; 49) + L_CURLY@[47; 48) "{" + R_CURLY@[48; 49) "}" + SEMI@[49; 50) ";" + WHITESPACE@[50; 55) "\n " + EXPR_STMT@[55; 91) + IF_EXPR@[55; 90) + IF_KW@[55; 57) "if" + WHITESPACE@[57; 58) " " + CONDITION@[58; 62) + LITERAL@[58; 62) + TRUE_KW@[58; 62) "true" + WHITESPACE@[62; 63) " " + BLOCK_EXPR@[63; 65) + BLOCK@[63; 65) + L_CURLY@[63; 64) "{" + R_CURLY@[64; 65) "}" + WHITESPACE@[65; 66) " " + ELSE_KW@[66; 70) "else" + WHITESPACE@[70; 71) " " + IF_EXPR@[71; 90) + IF_KW@[71; 73) "if" + WHITESPACE@[73; 74) " " + CONDITION@[74; 79) + LITERAL@[74; 79) + FALSE_KW@[74; 79) "false" + WHITESPACE@[79; 80) " " + BLOCK_EXPR@[80; 82) + BLOCK@[80; 82) + L_CURLY@[80; 81) "{" + R_CURLY@[81; 82) "}" + WHITESPACE@[82; 83) " " + ELSE_KW@[83; 87) "else" + WHITESPACE@[87; 88) " " + BLOCK_EXPR@[88; 90) + BLOCK@[88; 90) + L_CURLY@[88; 89) "{" + R_CURLY@[89; 90) "}" + SEMI@[90; 91) ";" + WHITESPACE@[91; 96) "\n " + EXPR_STMT@[96; 104) + IF_EXPR@[96; 103) + IF_KW@[96; 98) "if" + WHITESPACE@[98; 99) " " + CONDITION@[99; 100) + PATH_EXPR@[99; 100) + PATH@[99; 100) + PATH_SEGMENT@[99; 100) + NAME_REF@[99; 100) + IDENT@[99; 100) "S" + WHITESPACE@[100; 101) " " + BLOCK_EXPR@[101; 103) + BLOCK@[101; 103) + L_CURLY@[101; 102) "{" + R_CURLY@[102; 103) "}" + SEMI@[103; 104) ";" + WHITESPACE@[104; 105) "\n" + R_CURLY@[105; 106) "}" WHITESPACE@[106; 107) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0066_match_arm.txt b/crates/ra_syntax/test_data/parser/inline/ok/0066_match_arm.txt index c2f256ac3..87272917b 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0066_match_arm.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0066_match_arm.txt @@ -8,142 +8,143 @@ SOURCE_FILE@[0; 167) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 166) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 164) - MATCH_EXPR@[15; 163) - MATCH_KW@[15; 20) "match" - WHITESPACE@[20; 21) " " - TUPLE_EXPR@[21; 23) - L_PAREN@[21; 22) "(" - R_PAREN@[22; 23) ")" - WHITESPACE@[23; 24) " " - MATCH_ARM_LIST@[24; 163) - L_CURLY@[24; 25) "{" - WHITESPACE@[25; 34) "\n " - MATCH_ARM@[34; 41) - PLACEHOLDER_PAT@[34; 35) - UNDERSCORE@[34; 35) "_" - WHITESPACE@[35; 36) " " - FAT_ARROW@[36; 38) "=>" - WHITESPACE@[38; 39) " " - TUPLE_EXPR@[39; 41) - L_PAREN@[39; 40) "(" - R_PAREN@[40; 41) ")" - COMMA@[41; 42) "," - WHITESPACE@[42; 51) "\n " - MATCH_ARM@[51; 83) - PLACEHOLDER_PAT@[51; 52) - UNDERSCORE@[51; 52) "_" - WHITESPACE@[52; 53) " " - MATCH_GUARD@[53; 77) - IF_KW@[53; 55) "if" - WHITESPACE@[55; 56) " " - BIN_EXPR@[56; 77) - PATH_EXPR@[56; 60) - PATH@[56; 60) - PATH_SEGMENT@[56; 60) - NAME_REF@[56; 60) - IDENT@[56; 60) "Test" - WHITESPACE@[60; 61) " " - R_ANGLE@[61; 62) ">" - WHITESPACE@[62; 63) " " - RECORD_LIT@[63; 77) - PATH@[63; 67) - PATH_SEGMENT@[63; 67) - NAME_REF@[63; 67) - IDENT@[63; 67) "Test" - RECORD_FIELD_LIST@[67; 77) - L_CURLY@[67; 68) "{" - RECORD_FIELD@[68; 76) - NAME_REF@[68; 73) - IDENT@[68; 73) "field" - COLON@[73; 74) ":" - WHITESPACE@[74; 75) " " - LITERAL@[75; 76) - INT_NUMBER@[75; 76) "0" - R_CURLY@[76; 77) "}" - WHITESPACE@[77; 78) " " - FAT_ARROW@[78; 80) "=>" - WHITESPACE@[80; 81) " " - TUPLE_EXPR@[81; 83) - L_PAREN@[81; 82) "(" - R_PAREN@[82; 83) ")" - COMMA@[83; 84) "," - WHITESPACE@[84; 93) "\n " - MATCH_ARM@[93; 109) - BIND_PAT@[93; 94) - NAME@[93; 94) - IDENT@[93; 94) "X" - WHITESPACE@[94; 95) " " - PIPE@[95; 96) "|" - WHITESPACE@[96; 97) " " - BIND_PAT@[97; 98) - NAME@[97; 98) - IDENT@[97; 98) "Y" - WHITESPACE@[98; 99) " " - MATCH_GUARD@[99; 103) - IF_KW@[99; 101) "if" - WHITESPACE@[101; 102) " " - PATH_EXPR@[102; 103) - PATH@[102; 103) - PATH_SEGMENT@[102; 103) - NAME_REF@[102; 103) - IDENT@[102; 103) "Z" - WHITESPACE@[103; 104) " " - FAT_ARROW@[104; 106) "=>" - WHITESPACE@[106; 107) " " - TUPLE_EXPR@[107; 109) - L_PAREN@[107; 108) "(" - R_PAREN@[108; 109) ")" - COMMA@[109; 110) "," - WHITESPACE@[110; 119) "\n " - MATCH_ARM@[119; 137) - PIPE@[119; 120) "|" - WHITESPACE@[120; 121) " " - BIND_PAT@[121; 122) - NAME@[121; 122) - IDENT@[121; 122) "X" - WHITESPACE@[122; 123) " " - PIPE@[123; 124) "|" - WHITESPACE@[124; 125) " " - BIND_PAT@[125; 126) - NAME@[125; 126) - IDENT@[125; 126) "Y" - WHITESPACE@[126; 127) " " - MATCH_GUARD@[127; 131) - IF_KW@[127; 129) "if" - WHITESPACE@[129; 130) " " - PATH_EXPR@[130; 131) - PATH@[130; 131) - PATH_SEGMENT@[130; 131) - NAME_REF@[130; 131) - IDENT@[130; 131) "Z" - WHITESPACE@[131; 132) " " - FAT_ARROW@[132; 134) "=>" - WHITESPACE@[134; 135) " " - TUPLE_EXPR@[135; 137) - L_PAREN@[135; 136) "(" - R_PAREN@[136; 137) ")" - COMMA@[137; 138) "," - WHITESPACE@[138; 147) "\n " - MATCH_ARM@[147; 156) - PIPE@[147; 148) "|" - WHITESPACE@[148; 149) " " - BIND_PAT@[149; 150) - NAME@[149; 150) - IDENT@[149; 150) "X" - WHITESPACE@[150; 151) " " - FAT_ARROW@[151; 153) "=>" - WHITESPACE@[153; 154) " " - TUPLE_EXPR@[154; 156) - L_PAREN@[154; 155) "(" - R_PAREN@[155; 156) ")" - COMMA@[156; 157) "," - WHITESPACE@[157; 162) "\n " - R_CURLY@[162; 163) "}" - SEMI@[163; 164) ";" - WHITESPACE@[164; 165) "\n" - R_CURLY@[165; 166) "}" + BLOCK_EXPR@[9; 166) + BLOCK@[9; 166) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 164) + MATCH_EXPR@[15; 163) + MATCH_KW@[15; 20) "match" + WHITESPACE@[20; 21) " " + TUPLE_EXPR@[21; 23) + L_PAREN@[21; 22) "(" + R_PAREN@[22; 23) ")" + WHITESPACE@[23; 24) " " + MATCH_ARM_LIST@[24; 163) + L_CURLY@[24; 25) "{" + WHITESPACE@[25; 34) "\n " + MATCH_ARM@[34; 41) + PLACEHOLDER_PAT@[34; 35) + UNDERSCORE@[34; 35) "_" + WHITESPACE@[35; 36) " " + FAT_ARROW@[36; 38) "=>" + WHITESPACE@[38; 39) " " + TUPLE_EXPR@[39; 41) + L_PAREN@[39; 40) "(" + R_PAREN@[40; 41) ")" + COMMA@[41; 42) "," + WHITESPACE@[42; 51) "\n " + MATCH_ARM@[51; 83) + PLACEHOLDER_PAT@[51; 52) + UNDERSCORE@[51; 52) "_" + WHITESPACE@[52; 53) " " + MATCH_GUARD@[53; 77) + IF_KW@[53; 55) "if" + WHITESPACE@[55; 56) " " + BIN_EXPR@[56; 77) + PATH_EXPR@[56; 60) + PATH@[56; 60) + PATH_SEGMENT@[56; 60) + NAME_REF@[56; 60) + IDENT@[56; 60) "Test" + WHITESPACE@[60; 61) " " + R_ANGLE@[61; 62) ">" + WHITESPACE@[62; 63) " " + RECORD_LIT@[63; 77) + PATH@[63; 67) + PATH_SEGMENT@[63; 67) + NAME_REF@[63; 67) + IDENT@[63; 67) "Test" + RECORD_FIELD_LIST@[67; 77) + L_CURLY@[67; 68) "{" + RECORD_FIELD@[68; 76) + NAME_REF@[68; 73) + IDENT@[68; 73) "field" + COLON@[73; 74) ":" + WHITESPACE@[74; 75) " " + LITERAL@[75; 76) + INT_NUMBER@[75; 76) "0" + R_CURLY@[76; 77) "}" + WHITESPACE@[77; 78) " " + FAT_ARROW@[78; 80) "=>" + WHITESPACE@[80; 81) " " + TUPLE_EXPR@[81; 83) + L_PAREN@[81; 82) "(" + R_PAREN@[82; 83) ")" + COMMA@[83; 84) "," + WHITESPACE@[84; 93) "\n " + MATCH_ARM@[93; 109) + BIND_PAT@[93; 94) + NAME@[93; 94) + IDENT@[93; 94) "X" + WHITESPACE@[94; 95) " " + PIPE@[95; 96) "|" + WHITESPACE@[96; 97) " " + BIND_PAT@[97; 98) + NAME@[97; 98) + IDENT@[97; 98) "Y" + WHITESPACE@[98; 99) " " + MATCH_GUARD@[99; 103) + IF_KW@[99; 101) "if" + WHITESPACE@[101; 102) " " + PATH_EXPR@[102; 103) + PATH@[102; 103) + PATH_SEGMENT@[102; 103) + NAME_REF@[102; 103) + IDENT@[102; 103) "Z" + WHITESPACE@[103; 104) " " + FAT_ARROW@[104; 106) "=>" + WHITESPACE@[106; 107) " " + TUPLE_EXPR@[107; 109) + L_PAREN@[107; 108) "(" + R_PAREN@[108; 109) ")" + COMMA@[109; 110) "," + WHITESPACE@[110; 119) "\n " + MATCH_ARM@[119; 137) + PIPE@[119; 120) "|" + WHITESPACE@[120; 121) " " + BIND_PAT@[121; 122) + NAME@[121; 122) + IDENT@[121; 122) "X" + WHITESPACE@[122; 123) " " + PIPE@[123; 124) "|" + WHITESPACE@[124; 125) " " + BIND_PAT@[125; 126) + NAME@[125; 126) + IDENT@[125; 126) "Y" + WHITESPACE@[126; 127) " " + MATCH_GUARD@[127; 131) + IF_KW@[127; 129) "if" + WHITESPACE@[129; 130) " " + PATH_EXPR@[130; 131) + PATH@[130; 131) + PATH_SEGMENT@[130; 131) + NAME_REF@[130; 131) + IDENT@[130; 131) "Z" + WHITESPACE@[131; 132) " " + FAT_ARROW@[132; 134) "=>" + WHITESPACE@[134; 135) " " + TUPLE_EXPR@[135; 137) + L_PAREN@[135; 136) "(" + R_PAREN@[136; 137) ")" + COMMA@[137; 138) "," + WHITESPACE@[138; 147) "\n " + MATCH_ARM@[147; 156) + PIPE@[147; 148) "|" + WHITESPACE@[148; 149) " " + BIND_PAT@[149; 150) + NAME@[149; 150) + IDENT@[149; 150) "X" + WHITESPACE@[150; 151) " " + FAT_ARROW@[151; 153) "=>" + WHITESPACE@[153; 154) " " + TUPLE_EXPR@[154; 156) + L_PAREN@[154; 155) "(" + R_PAREN@[155; 156) ")" + COMMA@[156; 157) "," + WHITESPACE@[157; 162) "\n " + R_CURLY@[162; 163) "}" + SEMI@[163; 164) ";" + WHITESPACE@[164; 165) "\n" + R_CURLY@[165; 166) "}" WHITESPACE@[166; 167) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0070_stmt_bin_expr_ambiguity.txt b/crates/ra_syntax/test_data/parser/inline/ok/0070_stmt_bin_expr_ambiguity.txt index 40333d565..cd63d10f7 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0070_stmt_bin_expr_ambiguity.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0070_stmt_bin_expr_ambiguity.txt @@ -8,45 +8,46 @@ SOURCE_FILE@[0; 46) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 45) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - LET_STMT@[15; 31) - LET_KW@[15; 18) "let" - WHITESPACE@[18; 19) " " - PLACEHOLDER_PAT@[19; 20) - UNDERSCORE@[19; 20) "_" - WHITESPACE@[20; 21) " " - EQ@[21; 22) "=" - WHITESPACE@[22; 23) " " - BIN_EXPR@[23; 30) - BLOCK_EXPR@[23; 26) - BLOCK@[23; 26) - L_CURLY@[23; 24) "{" - LITERAL@[24; 25) - INT_NUMBER@[24; 25) "1" - R_CURLY@[25; 26) "}" - WHITESPACE@[26; 27) " " - AMP@[27; 28) "&" - WHITESPACE@[28; 29) " " - LITERAL@[29; 30) - INT_NUMBER@[29; 30) "2" - SEMI@[30; 31) ";" - WHITESPACE@[31; 36) "\n " - EXPR_STMT@[36; 39) - BLOCK_EXPR@[36; 39) - BLOCK@[36; 39) - L_CURLY@[36; 37) "{" - LITERAL@[37; 38) - INT_NUMBER@[37; 38) "1" - R_CURLY@[38; 39) "}" - WHITESPACE@[39; 40) " " - EXPR_STMT@[40; 43) - REF_EXPR@[40; 42) - AMP@[40; 41) "&" - LITERAL@[41; 42) - INT_NUMBER@[41; 42) "2" - SEMI@[42; 43) ";" - WHITESPACE@[43; 44) "\n" - R_CURLY@[44; 45) "}" + BLOCK_EXPR@[9; 45) + BLOCK@[9; 45) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + LET_STMT@[15; 31) + LET_KW@[15; 18) "let" + WHITESPACE@[18; 19) " " + PLACEHOLDER_PAT@[19; 20) + UNDERSCORE@[19; 20) "_" + WHITESPACE@[20; 21) " " + EQ@[21; 22) "=" + WHITESPACE@[22; 23) " " + BIN_EXPR@[23; 30) + BLOCK_EXPR@[23; 26) + BLOCK@[23; 26) + L_CURLY@[23; 24) "{" + LITERAL@[24; 25) + INT_NUMBER@[24; 25) "1" + R_CURLY@[25; 26) "}" + WHITESPACE@[26; 27) " " + AMP@[27; 28) "&" + WHITESPACE@[28; 29) " " + LITERAL@[29; 30) + INT_NUMBER@[29; 30) "2" + SEMI@[30; 31) ";" + WHITESPACE@[31; 36) "\n " + EXPR_STMT@[36; 39) + BLOCK_EXPR@[36; 39) + BLOCK@[36; 39) + L_CURLY@[36; 37) "{" + LITERAL@[37; 38) + INT_NUMBER@[37; 38) "1" + R_CURLY@[38; 39) "}" + WHITESPACE@[39; 40) " " + EXPR_STMT@[40; 43) + REF_EXPR@[40; 42) + AMP@[40; 41) "&" + LITERAL@[41; 42) + INT_NUMBER@[41; 42) "2" + SEMI@[42; 43) ";" + WHITESPACE@[43; 44) "\n" + R_CURLY@[44; 45) "}" WHITESPACE@[45; 46) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0071_match_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0071_match_expr.txt index 658948c66..f62b6c6d5 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0071_match_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0071_match_expr.txt @@ -8,37 +8,38 @@ SOURCE_FILE@[0; 47) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 46) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 28) - MATCH_EXPR@[15; 27) - MATCH_KW@[15; 20) "match" - WHITESPACE@[20; 21) " " - TUPLE_EXPR@[21; 23) - L_PAREN@[21; 22) "(" - R_PAREN@[22; 23) ")" - WHITESPACE@[23; 24) " " - MATCH_ARM_LIST@[24; 27) - L_CURLY@[24; 25) "{" - WHITESPACE@[25; 26) " " - R_CURLY@[26; 27) "}" - SEMI@[27; 28) ";" - WHITESPACE@[28; 33) "\n " - EXPR_STMT@[33; 44) - MATCH_EXPR@[33; 43) - MATCH_KW@[33; 38) "match" - WHITESPACE@[38; 39) " " - PATH_EXPR@[39; 40) - PATH@[39; 40) - PATH_SEGMENT@[39; 40) - NAME_REF@[39; 40) - IDENT@[39; 40) "S" - WHITESPACE@[40; 41) " " - MATCH_ARM_LIST@[41; 43) - L_CURLY@[41; 42) "{" - R_CURLY@[42; 43) "}" - SEMI@[43; 44) ";" - WHITESPACE@[44; 45) "\n" - R_CURLY@[45; 46) "}" + BLOCK_EXPR@[9; 46) + BLOCK@[9; 46) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 28) + MATCH_EXPR@[15; 27) + MATCH_KW@[15; 20) "match" + WHITESPACE@[20; 21) " " + TUPLE_EXPR@[21; 23) + L_PAREN@[21; 22) "(" + R_PAREN@[22; 23) ")" + WHITESPACE@[23; 24) " " + MATCH_ARM_LIST@[24; 27) + L_CURLY@[24; 25) "{" + WHITESPACE@[25; 26) " " + R_CURLY@[26; 27) "}" + SEMI@[27; 28) ";" + WHITESPACE@[28; 33) "\n " + EXPR_STMT@[33; 44) + MATCH_EXPR@[33; 43) + MATCH_KW@[33; 38) "match" + WHITESPACE@[38; 39) " " + PATH_EXPR@[39; 40) + PATH@[39; 40) + PATH_SEGMENT@[39; 40) + NAME_REF@[39; 40) + IDENT@[39; 40) "S" + WHITESPACE@[40; 41) " " + MATCH_ARM_LIST@[41; 43) + L_CURLY@[41; 42) "{" + R_CURLY@[42; 43) "}" + SEMI@[43; 44) ";" + WHITESPACE@[44; 45) "\n" + R_CURLY@[45; 46) "}" WHITESPACE@[46; 47) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0072_return_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0072_return_expr.txt index cd9e10bed..4a83a7200 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0072_return_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0072_return_expr.txt @@ -8,21 +8,22 @@ SOURCE_FILE@[0; 40) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 39) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 22) - RETURN_EXPR@[15; 21) - RETURN_KW@[15; 21) "return" - SEMI@[21; 22) ";" - WHITESPACE@[22; 27) "\n " - EXPR_STMT@[27; 37) - RETURN_EXPR@[27; 36) - RETURN_KW@[27; 33) "return" - WHITESPACE@[33; 34) " " - LITERAL@[34; 36) - INT_NUMBER@[34; 36) "92" - SEMI@[36; 37) ";" - WHITESPACE@[37; 38) "\n" - R_CURLY@[38; 39) "}" + BLOCK_EXPR@[9; 39) + BLOCK@[9; 39) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 22) + RETURN_EXPR@[15; 21) + RETURN_KW@[15; 21) "return" + SEMI@[21; 22) ";" + WHITESPACE@[22; 27) "\n " + EXPR_STMT@[27; 37) + RETURN_EXPR@[27; 36) + RETURN_KW@[27; 33) "return" + WHITESPACE@[33; 34) " " + LITERAL@[34; 36) + INT_NUMBER@[34; 36) "92" + SEMI@[36; 37) ";" + WHITESPACE@[37; 38) "\n" + R_CURLY@[38; 39) "}" WHITESPACE@[39; 40) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0074_stmt_postfix_expr_ambiguity.txt b/crates/ra_syntax/test_data/parser/inline/ok/0074_stmt_postfix_expr_ambiguity.txt index 48af2f350..cbd2d5fbf 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0074_stmt_postfix_expr_ambiguity.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0074_stmt_postfix_expr_ambiguity.txt @@ -8,55 +8,56 @@ SOURCE_FILE@[0; 84) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 83) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - MATCH_EXPR@[15; 81) - MATCH_KW@[15; 20) "match" - WHITESPACE@[20; 21) " " - TUPLE_EXPR@[21; 23) - L_PAREN@[21; 22) "(" - R_PAREN@[22; 23) ")" - WHITESPACE@[23; 24) " " - MATCH_ARM_LIST@[24; 81) - L_CURLY@[24; 25) "{" - WHITESPACE@[25; 34) "\n " - MATCH_ARM@[34; 41) - PLACEHOLDER_PAT@[34; 35) - UNDERSCORE@[34; 35) "_" - WHITESPACE@[35; 36) " " - FAT_ARROW@[36; 38) "=>" - WHITESPACE@[38; 39) " " - BLOCK_EXPR@[39; 41) - BLOCK@[39; 41) - L_CURLY@[39; 40) "{" - R_CURLY@[40; 41) "}" - WHITESPACE@[41; 50) "\n " - MATCH_ARM@[50; 58) - TUPLE_PAT@[50; 52) - L_PAREN@[50; 51) "(" - R_PAREN@[51; 52) ")" - WHITESPACE@[52; 53) " " - FAT_ARROW@[53; 55) "=>" - WHITESPACE@[55; 56) " " - BLOCK_EXPR@[56; 58) - BLOCK@[56; 58) - L_CURLY@[56; 57) "{" - R_CURLY@[57; 58) "}" - WHITESPACE@[58; 67) "\n " - MATCH_ARM@[67; 75) - SLICE_PAT@[67; 69) - L_BRACK@[67; 68) "[" - R_BRACK@[68; 69) "]" - WHITESPACE@[69; 70) " " - FAT_ARROW@[70; 72) "=>" - WHITESPACE@[72; 73) " " - BLOCK_EXPR@[73; 75) - BLOCK@[73; 75) - L_CURLY@[73; 74) "{" - R_CURLY@[74; 75) "}" - WHITESPACE@[75; 80) "\n " - R_CURLY@[80; 81) "}" - WHITESPACE@[81; 82) "\n" - R_CURLY@[82; 83) "}" + BLOCK_EXPR@[9; 83) + BLOCK@[9; 83) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + MATCH_EXPR@[15; 81) + MATCH_KW@[15; 20) "match" + WHITESPACE@[20; 21) " " + TUPLE_EXPR@[21; 23) + L_PAREN@[21; 22) "(" + R_PAREN@[22; 23) ")" + WHITESPACE@[23; 24) " " + MATCH_ARM_LIST@[24; 81) + L_CURLY@[24; 25) "{" + WHITESPACE@[25; 34) "\n " + MATCH_ARM@[34; 41) + PLACEHOLDER_PAT@[34; 35) + UNDERSCORE@[34; 35) "_" + WHITESPACE@[35; 36) " " + FAT_ARROW@[36; 38) "=>" + WHITESPACE@[38; 39) " " + BLOCK_EXPR@[39; 41) + BLOCK@[39; 41) + L_CURLY@[39; 40) "{" + R_CURLY@[40; 41) "}" + WHITESPACE@[41; 50) "\n " + MATCH_ARM@[50; 58) + TUPLE_PAT@[50; 52) + L_PAREN@[50; 51) "(" + R_PAREN@[51; 52) ")" + WHITESPACE@[52; 53) " " + FAT_ARROW@[53; 55) "=>" + WHITESPACE@[55; 56) " " + BLOCK_EXPR@[56; 58) + BLOCK@[56; 58) + L_CURLY@[56; 57) "{" + R_CURLY@[57; 58) "}" + WHITESPACE@[58; 67) "\n " + MATCH_ARM@[67; 75) + SLICE_PAT@[67; 69) + L_BRACK@[67; 68) "[" + R_BRACK@[68; 69) "]" + WHITESPACE@[69; 70) " " + FAT_ARROW@[70; 72) "=>" + WHITESPACE@[72; 73) " " + BLOCK_EXPR@[73; 75) + BLOCK@[73; 75) + L_CURLY@[73; 74) "{" + R_CURLY@[74; 75) "}" + WHITESPACE@[75; 80) "\n " + R_CURLY@[80; 81) "}" + WHITESPACE@[81; 82) "\n" + R_CURLY@[82; 83) "}" WHITESPACE@[83; 84) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0075_block.txt b/crates/ra_syntax/test_data/parser/inline/ok/0075_block.txt index 36983590f..28d1bad97 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0075_block.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0075_block.txt @@ -8,9 +8,10 @@ SOURCE_FILE@[0; 65) L_PAREN@[4; 5) "(" R_PAREN@[5; 6) ")" WHITESPACE@[6; 7) " " - BLOCK@[7; 9) - L_CURLY@[7; 8) "{" - R_CURLY@[8; 9) "}" + BLOCK_EXPR@[7; 9) + BLOCK@[7; 9) + L_CURLY@[7; 8) "{" + R_CURLY@[8; 9) "}" WHITESPACE@[9; 10) "\n" FN_DEF@[10; 31) FN_KW@[10; 12) "fn" @@ -21,22 +22,23 @@ SOURCE_FILE@[0; 65) L_PAREN@[14; 15) "(" R_PAREN@[15; 16) ")" WHITESPACE@[16; 17) " " - BLOCK@[17; 31) - L_CURLY@[17; 18) "{" - WHITESPACE@[18; 19) " " - LET_STMT@[19; 29) - LET_KW@[19; 22) "let" - WHITESPACE@[22; 23) " " - PLACEHOLDER_PAT@[23; 24) - UNDERSCORE@[23; 24) "_" - WHITESPACE@[24; 25) " " - EQ@[25; 26) "=" - WHITESPACE@[26; 27) " " - LITERAL@[27; 28) - INT_NUMBER@[27; 28) "1" - SEMI@[28; 29) ";" - WHITESPACE@[29; 30) " " - R_CURLY@[30; 31) "}" + BLOCK_EXPR@[17; 31) + BLOCK@[17; 31) + L_CURLY@[17; 18) "{" + WHITESPACE@[18; 19) " " + LET_STMT@[19; 29) + LET_KW@[19; 22) "let" + WHITESPACE@[22; 23) " " + PLACEHOLDER_PAT@[23; 24) + UNDERSCORE@[23; 24) "_" + WHITESPACE@[24; 25) " " + EQ@[25; 26) "=" + WHITESPACE@[26; 27) " " + LITERAL@[27; 28) + INT_NUMBER@[27; 28) "1" + SEMI@[28; 29) ";" + WHITESPACE@[29; 30) " " + R_CURLY@[30; 31) "}" WHITESPACE@[31; 32) "\n" FN_DEF@[32; 48) FN_KW@[32; 34) "fn" @@ -47,20 +49,21 @@ SOURCE_FILE@[0; 65) L_PAREN@[36; 37) "(" R_PAREN@[37; 38) ")" WHITESPACE@[38; 39) " " - BLOCK@[39; 48) - L_CURLY@[39; 40) "{" - WHITESPACE@[40; 41) " " - EXPR_STMT@[41; 43) - LITERAL@[41; 42) - INT_NUMBER@[41; 42) "1" - SEMI@[42; 43) ";" - WHITESPACE@[43; 44) " " - EXPR_STMT@[44; 46) - LITERAL@[44; 45) - INT_NUMBER@[44; 45) "2" - SEMI@[45; 46) ";" - WHITESPACE@[46; 47) " " - R_CURLY@[47; 48) "}" + BLOCK_EXPR@[39; 48) + BLOCK@[39; 48) + L_CURLY@[39; 40) "{" + WHITESPACE@[40; 41) " " + EXPR_STMT@[41; 43) + LITERAL@[41; 42) + INT_NUMBER@[41; 42) "1" + SEMI@[42; 43) ";" + WHITESPACE@[43; 44) " " + EXPR_STMT@[44; 46) + LITERAL@[44; 45) + INT_NUMBER@[44; 45) "2" + SEMI@[45; 46) ";" + WHITESPACE@[46; 47) " " + R_CURLY@[47; 48) "}" WHITESPACE@[48; 49) "\n" FN_DEF@[49; 64) FN_KW@[49; 51) "fn" @@ -71,16 +74,17 @@ SOURCE_FILE@[0; 65) L_PAREN@[53; 54) "(" R_PAREN@[54; 55) ")" WHITESPACE@[55; 56) " " - BLOCK@[56; 64) - L_CURLY@[56; 57) "{" - WHITESPACE@[57; 58) " " - EXPR_STMT@[58; 60) - LITERAL@[58; 59) - INT_NUMBER@[58; 59) "1" - SEMI@[59; 60) ";" - WHITESPACE@[60; 61) " " - LITERAL@[61; 62) - INT_NUMBER@[61; 62) "2" - WHITESPACE@[62; 63) " " - R_CURLY@[63; 64) "}" + BLOCK_EXPR@[56; 64) + BLOCK@[56; 64) + L_CURLY@[56; 57) "{" + WHITESPACE@[57; 58) " " + EXPR_STMT@[58; 60) + LITERAL@[58; 59) + INT_NUMBER@[58; 59) "1" + SEMI@[59; 60) ";" + WHITESPACE@[60; 61) " " + LITERAL@[61; 62) + INT_NUMBER@[61; 62) "2" + WHITESPACE@[62; 63) " " + R_CURLY@[63; 64) "}" WHITESPACE@[64; 65) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0076_function_where_clause.txt b/crates/ra_syntax/test_data/parser/inline/ok/0076_function_where_clause.txt index 32979c523..8e4b63f02 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0076_function_where_clause.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0076_function_where_clause.txt @@ -33,7 +33,8 @@ SOURCE_FILE@[0; 29) NAME_REF@[21; 25) IDENT@[21; 25) "Copy" WHITESPACE@[25; 26) " " - BLOCK@[26; 28) - L_CURLY@[26; 27) "{" - R_CURLY@[27; 28) "}" + BLOCK_EXPR@[26; 28) + BLOCK@[26; 28) + L_CURLY@[26; 27) "{" + R_CURLY@[27; 28) "}" WHITESPACE@[28; 29) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0077_try_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0077_try_expr.txt index 72de14b98..18ccfe9ef 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0077_try_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0077_try_expr.txt @@ -8,18 +8,19 @@ SOURCE_FILE@[0; 21) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 20) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 18) - TRY_EXPR@[15; 17) - PATH_EXPR@[15; 16) - PATH@[15; 16) - PATH_SEGMENT@[15; 16) - NAME_REF@[15; 16) - IDENT@[15; 16) "x" - QUESTION@[16; 17) "?" - SEMI@[17; 18) ";" - WHITESPACE@[18; 19) "\n" - R_CURLY@[19; 20) "}" + BLOCK_EXPR@[9; 20) + BLOCK@[9; 20) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 18) + TRY_EXPR@[15; 17) + PATH_EXPR@[15; 16) + PATH@[15; 16) + PATH_SEGMENT@[15; 16) + NAME_REF@[15; 16) + IDENT@[15; 16) "x" + QUESTION@[16; 17) "?" + SEMI@[17; 18) ";" + WHITESPACE@[18; 19) "\n" + R_CURLY@[19; 20) "}" WHITESPACE@[20; 21) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0080_postfix_range.txt b/crates/ra_syntax/test_data/parser/inline/ok/0080_postfix_range.txt index 541add812..f3c292f5e 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0080_postfix_range.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0080_postfix_range.txt @@ -8,23 +8,24 @@ SOURCE_FILE@[0; 26) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 25) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 11) " " - LET_STMT@[11; 23) - LET_KW@[11; 14) "let" - WHITESPACE@[14; 15) " " - BIND_PAT@[15; 16) - NAME@[15; 16) - IDENT@[15; 16) "x" - WHITESPACE@[16; 17) " " - EQ@[17; 18) "=" - WHITESPACE@[18; 19) " " - RANGE_EXPR@[19; 22) - LITERAL@[19; 20) - INT_NUMBER@[19; 20) "1" - DOTDOT@[20; 22) ".." - SEMI@[22; 23) ";" - WHITESPACE@[23; 24) " " - R_CURLY@[24; 25) "}" + BLOCK_EXPR@[9; 25) + BLOCK@[9; 25) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 11) " " + LET_STMT@[11; 23) + LET_KW@[11; 14) "let" + WHITESPACE@[14; 15) " " + BIND_PAT@[15; 16) + NAME@[15; 16) + IDENT@[15; 16) "x" + WHITESPACE@[16; 17) " " + EQ@[17; 18) "=" + WHITESPACE@[18; 19) " " + RANGE_EXPR@[19; 22) + LITERAL@[19; 20) + INT_NUMBER@[19; 20) "1" + DOTDOT@[20; 22) ".." + SEMI@[22; 23) ";" + WHITESPACE@[23; 24) " " + R_CURLY@[24; 25) "}" WHITESPACE@[25; 26) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0081_for_type.txt b/crates/ra_syntax/test_data/parser/inline/ok/0081_for_type.txt index c12ce4ddb..b1353c2c6 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0081_for_type.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0081_for_type.txt @@ -88,9 +88,10 @@ SOURCE_FILE@[0; 200) NAME_REF@[68; 76) IDENT@[68; 76) "Iterator" WHITESPACE@[76; 77) " " - BLOCK@[77; 79) - L_CURLY@[77; 78) "{" - R_CURLY@[78; 79) "}" + BLOCK_EXPR@[77; 79) + BLOCK@[77; 79) + L_CURLY@[77; 78) "{" + R_CURLY@[78; 79) "}" WHITESPACE@[79; 80) "\n" FN_DEF@[80; 134) FN_KW@[80; 82) "fn" @@ -153,9 +154,10 @@ SOURCE_FILE@[0; 200) NAME_REF@[123; 131) IDENT@[123; 131) "Iterator" WHITESPACE@[131; 132) " " - BLOCK@[132; 134) - L_CURLY@[132; 133) "{" - R_CURLY@[133; 134) "}" + BLOCK_EXPR@[132; 134) + BLOCK@[132; 134) + L_CURLY@[132; 133) "{" + R_CURLY@[133; 134) "}" WHITESPACE@[134; 135) "\n" FN_DEF@[135; 199) FN_KW@[135; 137) "fn" @@ -234,7 +236,8 @@ SOURCE_FILE@[0; 200) NAME_REF@[188; 196) IDENT@[188; 196) "Iterator" WHITESPACE@[196; 197) " " - BLOCK@[197; 199) - L_CURLY@[197; 198) "{" - R_CURLY@[198; 199) "}" + BLOCK_EXPR@[197; 199) + BLOCK@[197; 199) + L_CURLY@[197; 198) "{" + R_CURLY@[198; 199) "}" WHITESPACE@[199; 200) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0082_ref_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0082_ref_expr.txt index 87a56d8ce..8f34afe76 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0082_ref_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0082_ref_expr.txt @@ -8,47 +8,48 @@ SOURCE_FILE@[0; 52) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 51) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - LET_STMT@[15; 26) - LET_KW@[15; 18) "let" - WHITESPACE@[18; 19) " " - PLACEHOLDER_PAT@[19; 20) - UNDERSCORE@[19; 20) "_" - WHITESPACE@[20; 21) " " - EQ@[21; 22) "=" - WHITESPACE@[22; 23) " " - REF_EXPR@[23; 25) - AMP@[23; 24) "&" - LITERAL@[24; 25) - INT_NUMBER@[24; 25) "1" - SEMI@[25; 26) ";" - WHITESPACE@[26; 31) "\n " - LET_STMT@[31; 49) - LET_KW@[31; 34) "let" - WHITESPACE@[34; 35) " " - PLACEHOLDER_PAT@[35; 36) - UNDERSCORE@[35; 36) "_" - WHITESPACE@[36; 37) " " - EQ@[37; 38) "=" - WHITESPACE@[38; 39) " " - REF_EXPR@[39; 48) - AMP@[39; 40) "&" - MUT_KW@[40; 43) "mut" - WHITESPACE@[43; 44) " " - REF_EXPR@[44; 48) - AMP@[44; 45) "&" - CALL_EXPR@[45; 48) - PATH_EXPR@[45; 46) - PATH@[45; 46) - PATH_SEGMENT@[45; 46) - NAME_REF@[45; 46) - IDENT@[45; 46) "f" - ARG_LIST@[46; 48) - L_PAREN@[46; 47) "(" - R_PAREN@[47; 48) ")" - SEMI@[48; 49) ";" - WHITESPACE@[49; 50) "\n" - R_CURLY@[50; 51) "}" + BLOCK_EXPR@[9; 51) + BLOCK@[9; 51) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + LET_STMT@[15; 26) + LET_KW@[15; 18) "let" + WHITESPACE@[18; 19) " " + PLACEHOLDER_PAT@[19; 20) + UNDERSCORE@[19; 20) "_" + WHITESPACE@[20; 21) " " + EQ@[21; 22) "=" + WHITESPACE@[22; 23) " " + REF_EXPR@[23; 25) + AMP@[23; 24) "&" + LITERAL@[24; 25) + INT_NUMBER@[24; 25) "1" + SEMI@[25; 26) ";" + WHITESPACE@[26; 31) "\n " + LET_STMT@[31; 49) + LET_KW@[31; 34) "let" + WHITESPACE@[34; 35) " " + PLACEHOLDER_PAT@[35; 36) + UNDERSCORE@[35; 36) "_" + WHITESPACE@[36; 37) " " + EQ@[37; 38) "=" + WHITESPACE@[38; 39) " " + REF_EXPR@[39; 48) + AMP@[39; 40) "&" + MUT_KW@[40; 43) "mut" + WHITESPACE@[43; 44) " " + REF_EXPR@[44; 48) + AMP@[44; 45) "&" + CALL_EXPR@[45; 48) + PATH_EXPR@[45; 46) + PATH@[45; 46) + PATH_SEGMENT@[45; 46) + NAME_REF@[45; 46) + IDENT@[45; 46) "f" + ARG_LIST@[46; 48) + L_PAREN@[46; 47) "(" + R_PAREN@[47; 48) ")" + SEMI@[48; 49) ";" + WHITESPACE@[49; 50) "\n" + R_CURLY@[50; 51) "}" WHITESPACE@[51; 52) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0085_expr_literals.txt b/crates/ra_syntax/test_data/parser/inline/ok/0085_expr_literals.txt index 2f2be32b9..2903c6f9a 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0085_expr_literals.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0085_expr_literals.txt @@ -8,128 +8,129 @@ SOURCE_FILE@[0; 189) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 188) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - LET_STMT@[15; 28) - LET_KW@[15; 18) "let" - WHITESPACE@[18; 19) " " - PLACEHOLDER_PAT@[19; 20) - UNDERSCORE@[19; 20) "_" - WHITESPACE@[20; 21) " " - EQ@[21; 22) "=" - WHITESPACE@[22; 23) " " - LITERAL@[23; 27) - TRUE_KW@[23; 27) "true" - SEMI@[27; 28) ";" - WHITESPACE@[28; 33) "\n " - LET_STMT@[33; 47) - LET_KW@[33; 36) "let" - WHITESPACE@[36; 37) " " - PLACEHOLDER_PAT@[37; 38) - UNDERSCORE@[37; 38) "_" - WHITESPACE@[38; 39) " " - EQ@[39; 40) "=" - WHITESPACE@[40; 41) " " - LITERAL@[41; 46) - FALSE_KW@[41; 46) "false" - SEMI@[46; 47) ";" - WHITESPACE@[47; 52) "\n " - LET_STMT@[52; 62) - LET_KW@[52; 55) "let" - WHITESPACE@[55; 56) " " - PLACEHOLDER_PAT@[56; 57) - UNDERSCORE@[56; 57) "_" - WHITESPACE@[57; 58) " " - EQ@[58; 59) "=" - WHITESPACE@[59; 60) " " - LITERAL@[60; 61) - INT_NUMBER@[60; 61) "1" - SEMI@[61; 62) ";" - WHITESPACE@[62; 67) "\n " - LET_STMT@[67; 79) - LET_KW@[67; 70) "let" - WHITESPACE@[70; 71) " " - PLACEHOLDER_PAT@[71; 72) - UNDERSCORE@[71; 72) "_" - WHITESPACE@[72; 73) " " - EQ@[73; 74) "=" - WHITESPACE@[74; 75) " " - LITERAL@[75; 78) - FLOAT_NUMBER@[75; 78) "2.0" - SEMI@[78; 79) ";" - WHITESPACE@[79; 84) "\n " - LET_STMT@[84; 97) - LET_KW@[84; 87) "let" - WHITESPACE@[87; 88) " " - PLACEHOLDER_PAT@[88; 89) - UNDERSCORE@[88; 89) "_" - WHITESPACE@[89; 90) " " - EQ@[90; 91) "=" - WHITESPACE@[91; 92) " " - LITERAL@[92; 96) - BYTE@[92; 96) "b\'a\'" - SEMI@[96; 97) ";" - WHITESPACE@[97; 102) "\n " - LET_STMT@[102; 114) - LET_KW@[102; 105) "let" - WHITESPACE@[105; 106) " " - PLACEHOLDER_PAT@[106; 107) - UNDERSCORE@[106; 107) "_" - WHITESPACE@[107; 108) " " - EQ@[108; 109) "=" - WHITESPACE@[109; 110) " " - LITERAL@[110; 113) - CHAR@[110; 113) "\'b\'" - SEMI@[113; 114) ";" - WHITESPACE@[114; 119) "\n " - LET_STMT@[119; 131) - LET_KW@[119; 122) "let" - WHITESPACE@[122; 123) " " - PLACEHOLDER_PAT@[123; 124) - UNDERSCORE@[123; 124) "_" - WHITESPACE@[124; 125) " " - EQ@[125; 126) "=" - WHITESPACE@[126; 127) " " - LITERAL@[127; 130) - STRING@[127; 130) "\"c\"" - SEMI@[130; 131) ";" - WHITESPACE@[131; 136) "\n " - LET_STMT@[136; 149) - LET_KW@[136; 139) "let" - WHITESPACE@[139; 140) " " - PLACEHOLDER_PAT@[140; 141) - UNDERSCORE@[140; 141) "_" - WHITESPACE@[141; 142) " " - EQ@[142; 143) "=" - WHITESPACE@[143; 144) " " - LITERAL@[144; 148) - RAW_STRING@[144; 148) "r\"d\"" - SEMI@[148; 149) ";" - WHITESPACE@[149; 154) "\n " - LET_STMT@[154; 167) - LET_KW@[154; 157) "let" - WHITESPACE@[157; 158) " " - PLACEHOLDER_PAT@[158; 159) - UNDERSCORE@[158; 159) "_" - WHITESPACE@[159; 160) " " - EQ@[160; 161) "=" - WHITESPACE@[161; 162) " " - LITERAL@[162; 166) - BYTE_STRING@[162; 166) "b\"e\"" - SEMI@[166; 167) ";" - WHITESPACE@[167; 172) "\n " - LET_STMT@[172; 186) - LET_KW@[172; 175) "let" - WHITESPACE@[175; 176) " " - PLACEHOLDER_PAT@[176; 177) - UNDERSCORE@[176; 177) "_" - WHITESPACE@[177; 178) " " - EQ@[178; 179) "=" - WHITESPACE@[179; 180) " " - LITERAL@[180; 185) - RAW_BYTE_STRING@[180; 185) "br\"f\"" - SEMI@[185; 186) ";" - WHITESPACE@[186; 187) "\n" - R_CURLY@[187; 188) "}" + BLOCK_EXPR@[9; 188) + BLOCK@[9; 188) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + LET_STMT@[15; 28) + LET_KW@[15; 18) "let" + WHITESPACE@[18; 19) " " + PLACEHOLDER_PAT@[19; 20) + UNDERSCORE@[19; 20) "_" + WHITESPACE@[20; 21) " " + EQ@[21; 22) "=" + WHITESPACE@[22; 23) " " + LITERAL@[23; 27) + TRUE_KW@[23; 27) "true" + SEMI@[27; 28) ";" + WHITESPACE@[28; 33) "\n " + LET_STMT@[33; 47) + LET_KW@[33; 36) "let" + WHITESPACE@[36; 37) " " + PLACEHOLDER_PAT@[37; 38) + UNDERSCORE@[37; 38) "_" + WHITESPACE@[38; 39) " " + EQ@[39; 40) "=" + WHITESPACE@[40; 41) " " + LITERAL@[41; 46) + FALSE_KW@[41; 46) "false" + SEMI@[46; 47) ";" + WHITESPACE@[47; 52) "\n " + LET_STMT@[52; 62) + LET_KW@[52; 55) "let" + WHITESPACE@[55; 56) " " + PLACEHOLDER_PAT@[56; 57) + UNDERSCORE@[56; 57) "_" + WHITESPACE@[57; 58) " " + EQ@[58; 59) "=" + WHITESPACE@[59; 60) " " + LITERAL@[60; 61) + INT_NUMBER@[60; 61) "1" + SEMI@[61; 62) ";" + WHITESPACE@[62; 67) "\n " + LET_STMT@[67; 79) + LET_KW@[67; 70) "let" + WHITESPACE@[70; 71) " " + PLACEHOLDER_PAT@[71; 72) + UNDERSCORE@[71; 72) "_" + WHITESPACE@[72; 73) " " + EQ@[73; 74) "=" + WHITESPACE@[74; 75) " " + LITERAL@[75; 78) + FLOAT_NUMBER@[75; 78) "2.0" + SEMI@[78; 79) ";" + WHITESPACE@[79; 84) "\n " + LET_STMT@[84; 97) + LET_KW@[84; 87) "let" + WHITESPACE@[87; 88) " " + PLACEHOLDER_PAT@[88; 89) + UNDERSCORE@[88; 89) "_" + WHITESPACE@[89; 90) " " + EQ@[90; 91) "=" + WHITESPACE@[91; 92) " " + LITERAL@[92; 96) + BYTE@[92; 96) "b\'a\'" + SEMI@[96; 97) ";" + WHITESPACE@[97; 102) "\n " + LET_STMT@[102; 114) + LET_KW@[102; 105) "let" + WHITESPACE@[105; 106) " " + PLACEHOLDER_PAT@[106; 107) + UNDERSCORE@[106; 107) "_" + WHITESPACE@[107; 108) " " + EQ@[108; 109) "=" + WHITESPACE@[109; 110) " " + LITERAL@[110; 113) + CHAR@[110; 113) "\'b\'" + SEMI@[113; 114) ";" + WHITESPACE@[114; 119) "\n " + LET_STMT@[119; 131) + LET_KW@[119; 122) "let" + WHITESPACE@[122; 123) " " + PLACEHOLDER_PAT@[123; 124) + UNDERSCORE@[123; 124) "_" + WHITESPACE@[124; 125) " " + EQ@[125; 126) "=" + WHITESPACE@[126; 127) " " + LITERAL@[127; 130) + STRING@[127; 130) "\"c\"" + SEMI@[130; 131) ";" + WHITESPACE@[131; 136) "\n " + LET_STMT@[136; 149) + LET_KW@[136; 139) "let" + WHITESPACE@[139; 140) " " + PLACEHOLDER_PAT@[140; 141) + UNDERSCORE@[140; 141) "_" + WHITESPACE@[141; 142) " " + EQ@[142; 143) "=" + WHITESPACE@[143; 144) " " + LITERAL@[144; 148) + RAW_STRING@[144; 148) "r\"d\"" + SEMI@[148; 149) ";" + WHITESPACE@[149; 154) "\n " + LET_STMT@[154; 167) + LET_KW@[154; 157) "let" + WHITESPACE@[157; 158) " " + PLACEHOLDER_PAT@[158; 159) + UNDERSCORE@[158; 159) "_" + WHITESPACE@[159; 160) " " + EQ@[160; 161) "=" + WHITESPACE@[161; 162) " " + LITERAL@[162; 166) + BYTE_STRING@[162; 166) "b\"e\"" + SEMI@[166; 167) ";" + WHITESPACE@[167; 172) "\n " + LET_STMT@[172; 186) + LET_KW@[172; 175) "let" + WHITESPACE@[175; 176) " " + PLACEHOLDER_PAT@[176; 177) + UNDERSCORE@[176; 177) "_" + WHITESPACE@[177; 178) " " + EQ@[178; 179) "=" + WHITESPACE@[179; 180) " " + LITERAL@[180; 185) + RAW_BYTE_STRING@[180; 185) "br\"f\"" + SEMI@[185; 186) ";" + WHITESPACE@[186; 187) "\n" + R_CURLY@[187; 188) "}" WHITESPACE@[188; 189) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0086_function_ret_type.txt b/crates/ra_syntax/test_data/parser/inline/ok/0086_function_ret_type.txt index ac793c95c..ca1a97161 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0086_function_ret_type.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0086_function_ret_type.txt @@ -8,9 +8,10 @@ SOURCE_FILE@[0; 30) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 11) - L_CURLY@[9; 10) "{" - R_CURLY@[10; 11) "}" + BLOCK_EXPR@[9; 11) + BLOCK@[9; 11) + L_CURLY@[9; 10) "{" + R_CURLY@[10; 11) "}" WHITESPACE@[11; 12) "\n" FN_DEF@[12; 29) FN_KW@[12; 14) "fn" @@ -28,7 +29,8 @@ SOURCE_FILE@[0; 30) L_PAREN@[24; 25) "(" R_PAREN@[25; 26) ")" WHITESPACE@[26; 27) " " - BLOCK@[27; 29) - L_CURLY@[27; 28) "{" - R_CURLY@[28; 29) "}" + BLOCK_EXPR@[27; 29) + BLOCK@[27; 29) + L_CURLY@[27; 28) "{" + R_CURLY@[28; 29) "}" WHITESPACE@[29; 30) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0088_break_ambiguity.txt b/crates/ra_syntax/test_data/parser/inline/ok/0088_break_ambiguity.txt index b93a10c5b..b23f43b46 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0088_break_ambiguity.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0088_break_ambiguity.txt @@ -7,59 +7,63 @@ SOURCE_FILE@[0; 88) PARAM_LIST@[6; 8) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" - BLOCK@[8; 87) - L_CURLY@[8; 9) "{" - WHITESPACE@[9; 14) "\n " - EXPR_STMT@[14; 25) - IF_EXPR@[14; 25) - IF_KW@[14; 16) "if" - WHITESPACE@[16; 17) " " - CONDITION@[17; 22) - BREAK_EXPR@[17; 22) - BREAK_KW@[17; 22) "break" - WHITESPACE@[22; 23) " " - BLOCK@[23; 25) - L_CURLY@[23; 24) "{" - R_CURLY@[24; 25) "}" - WHITESPACE@[25; 30) "\n " - EXPR_STMT@[30; 44) - WHILE_EXPR@[30; 44) - WHILE_KW@[30; 35) "while" - WHITESPACE@[35; 36) " " - CONDITION@[36; 41) - BREAK_EXPR@[36; 41) - BREAK_KW@[36; 41) "break" - WHITESPACE@[41; 42) " " - BLOCK@[42; 44) - L_CURLY@[42; 43) "{" - R_CURLY@[43; 44) "}" - WHITESPACE@[44; 49) "\n " - EXPR_STMT@[49; 66) - FOR_EXPR@[49; 66) - FOR_KW@[49; 52) "for" - WHITESPACE@[52; 53) " " - BIND_PAT@[53; 54) - NAME@[53; 54) - IDENT@[53; 54) "i" - WHITESPACE@[54; 55) " " - IN_KW@[55; 57) "in" - WHITESPACE@[57; 58) " " - BREAK_EXPR@[58; 63) - BREAK_KW@[58; 63) "break" - WHITESPACE@[63; 64) " " - BLOCK@[64; 66) - L_CURLY@[64; 65) "{" - R_CURLY@[65; 66) "}" - WHITESPACE@[66; 71) "\n " - MATCH_EXPR@[71; 85) - MATCH_KW@[71; 76) "match" - WHITESPACE@[76; 77) " " - BREAK_EXPR@[77; 82) - BREAK_KW@[77; 82) "break" - WHITESPACE@[82; 83) " " - MATCH_ARM_LIST@[83; 85) - L_CURLY@[83; 84) "{" - R_CURLY@[84; 85) "}" - WHITESPACE@[85; 86) "\n" - R_CURLY@[86; 87) "}" + BLOCK_EXPR@[8; 87) + BLOCK@[8; 87) + L_CURLY@[8; 9) "{" + WHITESPACE@[9; 14) "\n " + EXPR_STMT@[14; 25) + IF_EXPR@[14; 25) + IF_KW@[14; 16) "if" + WHITESPACE@[16; 17) " " + CONDITION@[17; 22) + BREAK_EXPR@[17; 22) + BREAK_KW@[17; 22) "break" + WHITESPACE@[22; 23) " " + BLOCK_EXPR@[23; 25) + BLOCK@[23; 25) + L_CURLY@[23; 24) "{" + R_CURLY@[24; 25) "}" + WHITESPACE@[25; 30) "\n " + EXPR_STMT@[30; 44) + WHILE_EXPR@[30; 44) + WHILE_KW@[30; 35) "while" + WHITESPACE@[35; 36) " " + CONDITION@[36; 41) + BREAK_EXPR@[36; 41) + BREAK_KW@[36; 41) "break" + WHITESPACE@[41; 42) " " + BLOCK_EXPR@[42; 44) + BLOCK@[42; 44) + L_CURLY@[42; 43) "{" + R_CURLY@[43; 44) "}" + WHITESPACE@[44; 49) "\n " + EXPR_STMT@[49; 66) + FOR_EXPR@[49; 66) + FOR_KW@[49; 52) "for" + WHITESPACE@[52; 53) " " + BIND_PAT@[53; 54) + NAME@[53; 54) + IDENT@[53; 54) "i" + WHITESPACE@[54; 55) " " + IN_KW@[55; 57) "in" + WHITESPACE@[57; 58) " " + BREAK_EXPR@[58; 63) + BREAK_KW@[58; 63) "break" + WHITESPACE@[63; 64) " " + BLOCK_EXPR@[64; 66) + BLOCK@[64; 66) + L_CURLY@[64; 65) "{" + R_CURLY@[65; 66) "}" + WHITESPACE@[66; 71) "\n " + MATCH_EXPR@[71; 85) + MATCH_KW@[71; 76) "match" + WHITESPACE@[76; 77) " " + BREAK_EXPR@[77; 82) + BREAK_KW@[77; 82) "break" + WHITESPACE@[82; 83) " " + MATCH_ARM_LIST@[83; 85) + L_CURLY@[83; 84) "{" + R_CURLY@[84; 85) "}" + WHITESPACE@[85; 86) "\n" + R_CURLY@[86; 87) "}" WHITESPACE@[87; 88) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0089_extern_fn.txt b/crates/ra_syntax/test_data/parser/inline/ok/0089_extern_fn.txt index ed5339e64..b494f6c59 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0089_extern_fn.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0089_extern_fn.txt @@ -11,7 +11,8 @@ SOURCE_FILE@[0; 19) L_PAREN@[13; 14) "(" R_PAREN@[14; 15) ")" WHITESPACE@[15; 16) " " - BLOCK@[16; 18) - L_CURLY@[16; 17) "{" - R_CURLY@[17; 18) "}" + BLOCK_EXPR@[16; 18) + BLOCK@[16; 18) + L_CURLY@[16; 17) "{" + R_CURLY@[17; 18) "}" WHITESPACE@[18; 19) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0093_index_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0093_index_expr.txt index b4a71f925..1a979e597 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0093_index_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0093_index_expr.txt @@ -8,26 +8,27 @@ SOURCE_FILE@[0; 26) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 25) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 23) - INDEX_EXPR@[15; 22) - INDEX_EXPR@[15; 19) - PATH_EXPR@[15; 16) - PATH@[15; 16) - PATH_SEGMENT@[15; 16) - NAME_REF@[15; 16) - IDENT@[15; 16) "x" - L_BRACK@[16; 17) "[" - LITERAL@[17; 18) - INT_NUMBER@[17; 18) "1" - R_BRACK@[18; 19) "]" - L_BRACK@[19; 20) "[" - LITERAL@[20; 21) - INT_NUMBER@[20; 21) "2" - R_BRACK@[21; 22) "]" - SEMI@[22; 23) ";" - WHITESPACE@[23; 24) "\n" - R_CURLY@[24; 25) "}" + BLOCK_EXPR@[9; 25) + BLOCK@[9; 25) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 23) + INDEX_EXPR@[15; 22) + INDEX_EXPR@[15; 19) + PATH_EXPR@[15; 16) + PATH@[15; 16) + PATH_SEGMENT@[15; 16) + NAME_REF@[15; 16) + IDENT@[15; 16) "x" + L_BRACK@[16; 17) "[" + LITERAL@[17; 18) + INT_NUMBER@[17; 18) "1" + R_BRACK@[18; 19) "]" + L_BRACK@[19; 20) "[" + LITERAL@[20; 21) + INT_NUMBER@[20; 21) "2" + R_BRACK@[21; 22) "]" + SEMI@[22; 23) ";" + WHITESPACE@[23; 24) "\n" + R_CURLY@[24; 25) "}" WHITESPACE@[25; 26) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0095_placeholder_pat.txt b/crates/ra_syntax/test_data/parser/inline/ok/0095_placeholder_pat.txt index f11bc1fc8..fe86894a9 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0095_placeholder_pat.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0095_placeholder_pat.txt @@ -8,21 +8,22 @@ SOURCE_FILE@[0; 26) L_PAREN@[7; 8) "(" R_PAREN@[8; 9) ")" WHITESPACE@[9; 10) " " - BLOCK@[10; 25) - L_CURLY@[10; 11) "{" - WHITESPACE@[11; 12) " " - LET_STMT@[12; 23) - LET_KW@[12; 15) "let" - WHITESPACE@[15; 16) " " - PLACEHOLDER_PAT@[16; 17) - UNDERSCORE@[16; 17) "_" - WHITESPACE@[17; 18) " " - EQ@[18; 19) "=" - WHITESPACE@[19; 20) " " - TUPLE_EXPR@[20; 22) - L_PAREN@[20; 21) "(" - R_PAREN@[21; 22) ")" - SEMI@[22; 23) ";" - WHITESPACE@[23; 24) " " - R_CURLY@[24; 25) "}" + BLOCK_EXPR@[10; 25) + BLOCK@[10; 25) + L_CURLY@[10; 11) "{" + WHITESPACE@[11; 12) " " + LET_STMT@[12; 23) + LET_KW@[12; 15) "let" + WHITESPACE@[15; 16) " " + PLACEHOLDER_PAT@[16; 17) + UNDERSCORE@[16; 17) "_" + WHITESPACE@[17; 18) " " + EQ@[18; 19) "=" + WHITESPACE@[19; 20) " " + TUPLE_EXPR@[20; 22) + L_PAREN@[20; 21) "(" + R_PAREN@[21; 22) ")" + SEMI@[22; 23) ";" + WHITESPACE@[23; 24) " " + R_CURLY@[24; 25) "}" WHITESPACE@[25; 26) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0096_no_semi_after_block.txt b/crates/ra_syntax/test_data/parser/inline/ok/0096_no_semi_after_block.txt index 6d24f214e..157aa29f5 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0096_no_semi_after_block.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0096_no_semi_after_block.txt @@ -8,118 +8,123 @@ SOURCE_FILE@[0; 167) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 166) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 25) - IF_EXPR@[15; 25) - IF_KW@[15; 17) "if" - WHITESPACE@[17; 18) " " - CONDITION@[18; 22) - LITERAL@[18; 22) - TRUE_KW@[18; 22) "true" - WHITESPACE@[22; 23) " " - BLOCK@[23; 25) - L_CURLY@[23; 24) "{" - R_CURLY@[24; 25) "}" - WHITESPACE@[25; 30) "\n " - EXPR_STMT@[30; 37) - LOOP_EXPR@[30; 37) - LOOP_KW@[30; 34) "loop" - WHITESPACE@[34; 35) " " - BLOCK@[35; 37) - L_CURLY@[35; 36) "{" - R_CURLY@[36; 37) "}" - WHITESPACE@[37; 42) "\n " - EXPR_STMT@[42; 53) - MATCH_EXPR@[42; 53) - MATCH_KW@[42; 47) "match" - WHITESPACE@[47; 48) " " - TUPLE_EXPR@[48; 50) - L_PAREN@[48; 49) "(" - R_PAREN@[49; 50) ")" - WHITESPACE@[50; 51) " " - MATCH_ARM_LIST@[51; 53) - L_CURLY@[51; 52) "{" - R_CURLY@[52; 53) "}" - WHITESPACE@[53; 58) "\n " - EXPR_STMT@[58; 71) - WHILE_EXPR@[58; 71) - WHILE_KW@[58; 63) "while" - WHITESPACE@[63; 64) " " - CONDITION@[64; 68) - LITERAL@[64; 68) - TRUE_KW@[64; 68) "true" - WHITESPACE@[68; 69) " " - BLOCK@[69; 71) - L_CURLY@[69; 70) "{" - R_CURLY@[70; 71) "}" - WHITESPACE@[71; 76) "\n " - EXPR_STMT@[76; 90) - FOR_EXPR@[76; 90) - FOR_KW@[76; 79) "for" - WHITESPACE@[79; 80) " " - PLACEHOLDER_PAT@[80; 81) - UNDERSCORE@[80; 81) "_" - WHITESPACE@[81; 82) " " - IN_KW@[82; 84) "in" - WHITESPACE@[84; 85) " " - TUPLE_EXPR@[85; 87) - L_PAREN@[85; 86) "(" - R_PAREN@[86; 87) ")" - WHITESPACE@[87; 88) " " - BLOCK@[88; 90) - L_CURLY@[88; 89) "{" - R_CURLY@[89; 90) "}" - WHITESPACE@[90; 95) "\n " - EXPR_STMT@[95; 97) - BLOCK_EXPR@[95; 97) - BLOCK@[95; 97) - L_CURLY@[95; 96) "{" - R_CURLY@[96; 97) "}" - WHITESPACE@[97; 102) "\n " - EXPR_STMT@[102; 104) - BLOCK_EXPR@[102; 104) - BLOCK@[102; 104) - L_CURLY@[102; 103) "{" - R_CURLY@[103; 104) "}" - WHITESPACE@[104; 109) "\n " - EXPR_STMT@[109; 152) - MACRO_CALL@[109; 152) - PATH@[109; 120) - PATH_SEGMENT@[109; 120) - NAME_REF@[109; 120) - IDENT@[109; 120) "macro_rules" - EXCL@[120; 121) "!" - WHITESPACE@[121; 122) " " - NAME@[122; 126) - IDENT@[122; 126) "test" - WHITESPACE@[126; 127) " " - TOKEN_TREE@[127; 152) - L_CURLY@[127; 128) "{" - WHITESPACE@[128; 138) "\n " - TOKEN_TREE@[138; 140) - L_PAREN@[138; 139) "(" - R_PAREN@[139; 140) ")" - WHITESPACE@[140; 141) " " - EQ@[141; 142) "=" - R_ANGLE@[142; 143) ">" - WHITESPACE@[143; 144) " " - TOKEN_TREE@[144; 146) - L_CURLY@[144; 145) "{" - R_CURLY@[145; 146) "}" - WHITESPACE@[146; 151) "\n " - R_CURLY@[151; 152) "}" - WHITESPACE@[152; 157) "\n " - MACRO_CALL@[157; 164) - PATH@[157; 161) - PATH_SEGMENT@[157; 161) - NAME_REF@[157; 161) - IDENT@[157; 161) "test" - EXCL@[161; 162) "!" - TOKEN_TREE@[162; 164) - L_CURLY@[162; 163) "{" - R_CURLY@[163; 164) "}" - WHITESPACE@[164; 165) "\n" - R_CURLY@[165; 166) "}" + BLOCK_EXPR@[9; 166) + BLOCK@[9; 166) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 25) + IF_EXPR@[15; 25) + IF_KW@[15; 17) "if" + WHITESPACE@[17; 18) " " + CONDITION@[18; 22) + LITERAL@[18; 22) + TRUE_KW@[18; 22) "true" + WHITESPACE@[22; 23) " " + BLOCK_EXPR@[23; 25) + BLOCK@[23; 25) + L_CURLY@[23; 24) "{" + R_CURLY@[24; 25) "}" + WHITESPACE@[25; 30) "\n " + EXPR_STMT@[30; 37) + LOOP_EXPR@[30; 37) + LOOP_KW@[30; 34) "loop" + WHITESPACE@[34; 35) " " + BLOCK_EXPR@[35; 37) + BLOCK@[35; 37) + L_CURLY@[35; 36) "{" + R_CURLY@[36; 37) "}" + WHITESPACE@[37; 42) "\n " + EXPR_STMT@[42; 53) + MATCH_EXPR@[42; 53) + MATCH_KW@[42; 47) "match" + WHITESPACE@[47; 48) " " + TUPLE_EXPR@[48; 50) + L_PAREN@[48; 49) "(" + R_PAREN@[49; 50) ")" + WHITESPACE@[50; 51) " " + MATCH_ARM_LIST@[51; 53) + L_CURLY@[51; 52) "{" + R_CURLY@[52; 53) "}" + WHITESPACE@[53; 58) "\n " + EXPR_STMT@[58; 71) + WHILE_EXPR@[58; 71) + WHILE_KW@[58; 63) "while" + WHITESPACE@[63; 64) " " + CONDITION@[64; 68) + LITERAL@[64; 68) + TRUE_KW@[64; 68) "true" + WHITESPACE@[68; 69) " " + BLOCK_EXPR@[69; 71) + BLOCK@[69; 71) + L_CURLY@[69; 70) "{" + R_CURLY@[70; 71) "}" + WHITESPACE@[71; 76) "\n " + EXPR_STMT@[76; 90) + FOR_EXPR@[76; 90) + FOR_KW@[76; 79) "for" + WHITESPACE@[79; 80) " " + PLACEHOLDER_PAT@[80; 81) + UNDERSCORE@[80; 81) "_" + WHITESPACE@[81; 82) " " + IN_KW@[82; 84) "in" + WHITESPACE@[84; 85) " " + TUPLE_EXPR@[85; 87) + L_PAREN@[85; 86) "(" + R_PAREN@[86; 87) ")" + WHITESPACE@[87; 88) " " + BLOCK_EXPR@[88; 90) + BLOCK@[88; 90) + L_CURLY@[88; 89) "{" + R_CURLY@[89; 90) "}" + WHITESPACE@[90; 95) "\n " + EXPR_STMT@[95; 97) + BLOCK_EXPR@[95; 97) + BLOCK@[95; 97) + L_CURLY@[95; 96) "{" + R_CURLY@[96; 97) "}" + WHITESPACE@[97; 102) "\n " + EXPR_STMT@[102; 104) + BLOCK_EXPR@[102; 104) + BLOCK@[102; 104) + L_CURLY@[102; 103) "{" + R_CURLY@[103; 104) "}" + WHITESPACE@[104; 109) "\n " + EXPR_STMT@[109; 152) + MACRO_CALL@[109; 152) + PATH@[109; 120) + PATH_SEGMENT@[109; 120) + NAME_REF@[109; 120) + IDENT@[109; 120) "macro_rules" + EXCL@[120; 121) "!" + WHITESPACE@[121; 122) " " + NAME@[122; 126) + IDENT@[122; 126) "test" + WHITESPACE@[126; 127) " " + TOKEN_TREE@[127; 152) + L_CURLY@[127; 128) "{" + WHITESPACE@[128; 138) "\n " + TOKEN_TREE@[138; 140) + L_PAREN@[138; 139) "(" + R_PAREN@[139; 140) ")" + WHITESPACE@[140; 141) " " + EQ@[141; 142) "=" + R_ANGLE@[142; 143) ">" + WHITESPACE@[143; 144) " " + TOKEN_TREE@[144; 146) + L_CURLY@[144; 145) "{" + R_CURLY@[145; 146) "}" + WHITESPACE@[146; 151) "\n " + R_CURLY@[151; 152) "}" + WHITESPACE@[152; 157) "\n " + MACRO_CALL@[157; 164) + PATH@[157; 161) + PATH_SEGMENT@[157; 161) + NAME_REF@[157; 161) + IDENT@[157; 161) "test" + EXCL@[161; 162) "!" + TOKEN_TREE@[162; 164) + L_CURLY@[162; 163) "{" + R_CURLY@[163; 164) "}" + WHITESPACE@[164; 165) "\n" + R_CURLY@[165; 166) "}" WHITESPACE@[166; 167) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0098_const_unsafe_fn.txt b/crates/ra_syntax/test_data/parser/inline/ok/0098_const_unsafe_fn.txt index 0dd42ab8e..072dc9d16 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0098_const_unsafe_fn.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0098_const_unsafe_fn.txt @@ -12,7 +12,8 @@ SOURCE_FILE@[0; 25) L_PAREN@[19; 20) "(" R_PAREN@[20; 21) ")" WHITESPACE@[21; 22) " " - BLOCK@[22; 24) - L_CURLY@[22; 23) "{" - R_CURLY@[23; 24) "}" + BLOCK_EXPR@[22; 24) + BLOCK@[22; 24) + L_CURLY@[22; 23) "{" + R_CURLY@[23; 24) "}" WHITESPACE@[24; 25) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0099_param_list.txt b/crates/ra_syntax/test_data/parser/inline/ok/0099_param_list.txt index 80d636819..ed57a9eea 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0099_param_list.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0099_param_list.txt @@ -8,9 +8,10 @@ SOURCE_FILE@[0; 67) L_PAREN@[4; 5) "(" R_PAREN@[5; 6) ")" WHITESPACE@[6; 7) " " - BLOCK@[7; 9) - L_CURLY@[7; 8) "{" - R_CURLY@[8; 9) "}" + BLOCK_EXPR@[7; 9) + BLOCK@[7; 9) + L_CURLY@[7; 8) "{" + R_CURLY@[8; 9) "}" WHITESPACE@[9; 10) "\n" FN_DEF@[10; 25) FN_KW@[10; 12) "fn" @@ -32,9 +33,10 @@ SOURCE_FILE@[0; 67) IDENT@[18; 21) "i32" R_PAREN@[21; 22) ")" WHITESPACE@[22; 23) " " - BLOCK@[23; 25) - L_CURLY@[23; 24) "{" - R_CURLY@[24; 25) "}" + BLOCK_EXPR@[23; 25) + BLOCK@[23; 25) + L_CURLY@[23; 24) "{" + R_CURLY@[24; 25) "}" WHITESPACE@[25; 26) "\n" FN_DEF@[26; 43) FN_KW@[26; 28) "fn" @@ -58,9 +60,10 @@ SOURCE_FILE@[0; 67) WHITESPACE@[38; 39) " " R_PAREN@[39; 40) ")" WHITESPACE@[40; 41) " " - BLOCK@[41; 43) - L_CURLY@[41; 42) "{" - R_CURLY@[42; 43) "}" + BLOCK_EXPR@[41; 43) + BLOCK@[41; 43) + L_CURLY@[41; 42) "{" + R_CURLY@[42; 43) "}" WHITESPACE@[43; 44) "\n" FN_DEF@[44; 66) FN_KW@[44; 46) "fn" @@ -93,7 +96,8 @@ SOURCE_FILE@[0; 67) R_PAREN@[61; 62) ")" R_PAREN@[62; 63) ")" WHITESPACE@[63; 64) " " - BLOCK@[64; 66) - L_CURLY@[64; 65) "{" - R_CURLY@[65; 66) "}" + BLOCK_EXPR@[64; 66) + BLOCK@[64; 66) + L_CURLY@[64; 65) "{" + R_CURLY@[65; 66) "}" WHITESPACE@[66; 67) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0100_for_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0100_for_expr.txt index 09e108570..83c58d25f 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0100_for_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0100_for_expr.txt @@ -8,27 +8,29 @@ SOURCE_FILE@[0; 33) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 32) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 30) - FOR_EXPR@[15; 29) - FOR_KW@[15; 18) "for" - WHITESPACE@[18; 19) " " - BIND_PAT@[19; 20) - NAME@[19; 20) - IDENT@[19; 20) "x" - WHITESPACE@[20; 21) " " - IN_KW@[21; 23) "in" - WHITESPACE@[23; 24) " " - ARRAY_EXPR@[24; 26) - L_BRACK@[24; 25) "[" - R_BRACK@[25; 26) "]" - WHITESPACE@[26; 27) " " - BLOCK@[27; 29) - L_CURLY@[27; 28) "{" - R_CURLY@[28; 29) "}" - SEMI@[29; 30) ";" - WHITESPACE@[30; 31) "\n" - R_CURLY@[31; 32) "}" + BLOCK_EXPR@[9; 32) + BLOCK@[9; 32) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 30) + FOR_EXPR@[15; 29) + FOR_KW@[15; 18) "for" + WHITESPACE@[18; 19) " " + BIND_PAT@[19; 20) + NAME@[19; 20) + IDENT@[19; 20) "x" + WHITESPACE@[20; 21) " " + IN_KW@[21; 23) "in" + WHITESPACE@[23; 24) " " + ARRAY_EXPR@[24; 26) + L_BRACK@[24; 25) "[" + R_BRACK@[25; 26) "]" + WHITESPACE@[26; 27) " " + BLOCK_EXPR@[27; 29) + BLOCK@[27; 29) + L_CURLY@[27; 28) "{" + R_CURLY@[28; 29) "}" + SEMI@[29; 30) ";" + WHITESPACE@[30; 31) "\n" + R_CURLY@[31; 32) "}" WHITESPACE@[32; 33) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0101_unsafe_fn.txt b/crates/ra_syntax/test_data/parser/inline/ok/0101_unsafe_fn.txt index 1a60f6ffe..b7979fbf5 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0101_unsafe_fn.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0101_unsafe_fn.txt @@ -10,7 +10,8 @@ SOURCE_FILE@[0; 19) L_PAREN@[13; 14) "(" R_PAREN@[14; 15) ")" WHITESPACE@[15; 16) " " - BLOCK@[16; 18) - L_CURLY@[16; 17) "{" - R_CURLY@[17; 18) "}" + BLOCK_EXPR@[16; 18) + BLOCK@[16; 18) + L_CURLY@[16; 17) "{" + R_CURLY@[17; 18) "}" WHITESPACE@[18; 19) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0102_record_field_pat_list.txt b/crates/ra_syntax/test_data/parser/inline/ok/0102_record_field_pat_list.txt index 22db72c12..d8e04bd90 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0102_record_field_pat_list.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0102_record_field_pat_list.txt @@ -8,123 +8,124 @@ SOURCE_FILE@[0; 119) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 118) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - LET_STMT@[15; 29) - LET_KW@[15; 18) "let" - WHITESPACE@[18; 19) " " - RECORD_PAT@[19; 23) - PATH@[19; 20) - PATH_SEGMENT@[19; 20) - NAME_REF@[19; 20) - IDENT@[19; 20) "S" - WHITESPACE@[20; 21) " " - RECORD_FIELD_PAT_LIST@[21; 23) - L_CURLY@[21; 22) "{" - R_CURLY@[22; 23) "}" - WHITESPACE@[23; 24) " " - EQ@[24; 25) "=" - WHITESPACE@[25; 26) " " - TUPLE_EXPR@[26; 28) - L_PAREN@[26; 27) "(" - R_PAREN@[27; 28) ")" - SEMI@[28; 29) ";" - WHITESPACE@[29; 34) "\n " - LET_STMT@[34; 62) - LET_KW@[34; 37) "let" - WHITESPACE@[37; 38) " " - RECORD_PAT@[38; 56) - PATH@[38; 39) - PATH_SEGMENT@[38; 39) - NAME_REF@[38; 39) - IDENT@[38; 39) "S" - WHITESPACE@[39; 40) " " - RECORD_FIELD_PAT_LIST@[40; 56) - L_CURLY@[40; 41) "{" - WHITESPACE@[41; 42) " " - BIND_PAT@[42; 43) - NAME@[42; 43) - IDENT@[42; 43) "f" - COMMA@[43; 44) "," - WHITESPACE@[44; 45) " " - BIND_PAT@[45; 54) - REF_KW@[45; 48) "ref" - WHITESPACE@[48; 49) " " - MUT_KW@[49; 52) "mut" - WHITESPACE@[52; 53) " " - NAME@[53; 54) - IDENT@[53; 54) "g" - WHITESPACE@[54; 55) " " - R_CURLY@[55; 56) "}" - WHITESPACE@[56; 57) " " - EQ@[57; 58) "=" - WHITESPACE@[58; 59) " " - TUPLE_EXPR@[59; 61) - L_PAREN@[59; 60) "(" - R_PAREN@[60; 61) ")" - SEMI@[61; 62) ";" - WHITESPACE@[62; 67) "\n " - LET_STMT@[67; 90) - LET_KW@[67; 70) "let" - WHITESPACE@[70; 71) " " - RECORD_PAT@[71; 84) - PATH@[71; 72) - PATH_SEGMENT@[71; 72) - NAME_REF@[71; 72) - IDENT@[71; 72) "S" - WHITESPACE@[72; 73) " " - RECORD_FIELD_PAT_LIST@[73; 84) - L_CURLY@[73; 74) "{" - WHITESPACE@[74; 75) " " - RECORD_FIELD_PAT@[75; 79) - NAME@[75; 76) - IDENT@[75; 76) "h" - COLON@[76; 77) ":" - WHITESPACE@[77; 78) " " - PLACEHOLDER_PAT@[78; 79) - UNDERSCORE@[78; 79) "_" - COMMA@[79; 80) "," - WHITESPACE@[80; 81) " " - DOTDOT@[81; 83) ".." - R_CURLY@[83; 84) "}" - WHITESPACE@[84; 85) " " - EQ@[85; 86) "=" - WHITESPACE@[86; 87) " " - TUPLE_EXPR@[87; 89) - L_PAREN@[87; 88) "(" - R_PAREN@[88; 89) ")" - SEMI@[89; 90) ";" - WHITESPACE@[90; 95) "\n " - LET_STMT@[95; 116) - LET_KW@[95; 98) "let" - WHITESPACE@[98; 99) " " - RECORD_PAT@[99; 110) - PATH@[99; 100) - PATH_SEGMENT@[99; 100) - NAME_REF@[99; 100) - IDENT@[99; 100) "S" - WHITESPACE@[100; 101) " " - RECORD_FIELD_PAT_LIST@[101; 110) - L_CURLY@[101; 102) "{" - WHITESPACE@[102; 103) " " - RECORD_FIELD_PAT@[103; 107) - NAME@[103; 104) - IDENT@[103; 104) "h" - COLON@[104; 105) ":" - WHITESPACE@[105; 106) " " - PLACEHOLDER_PAT@[106; 107) - UNDERSCORE@[106; 107) "_" - COMMA@[107; 108) "," - WHITESPACE@[108; 109) " " - R_CURLY@[109; 110) "}" - WHITESPACE@[110; 111) " " - EQ@[111; 112) "=" - WHITESPACE@[112; 113) " " - TUPLE_EXPR@[113; 115) - L_PAREN@[113; 114) "(" - R_PAREN@[114; 115) ")" - SEMI@[115; 116) ";" - WHITESPACE@[116; 117) "\n" - R_CURLY@[117; 118) "}" + BLOCK_EXPR@[9; 118) + BLOCK@[9; 118) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + LET_STMT@[15; 29) + LET_KW@[15; 18) "let" + WHITESPACE@[18; 19) " " + RECORD_PAT@[19; 23) + PATH@[19; 20) + PATH_SEGMENT@[19; 20) + NAME_REF@[19; 20) + IDENT@[19; 20) "S" + WHITESPACE@[20; 21) " " + RECORD_FIELD_PAT_LIST@[21; 23) + L_CURLY@[21; 22) "{" + R_CURLY@[22; 23) "}" + WHITESPACE@[23; 24) " " + EQ@[24; 25) "=" + WHITESPACE@[25; 26) " " + TUPLE_EXPR@[26; 28) + L_PAREN@[26; 27) "(" + R_PAREN@[27; 28) ")" + SEMI@[28; 29) ";" + WHITESPACE@[29; 34) "\n " + LET_STMT@[34; 62) + LET_KW@[34; 37) "let" + WHITESPACE@[37; 38) " " + RECORD_PAT@[38; 56) + PATH@[38; 39) + PATH_SEGMENT@[38; 39) + NAME_REF@[38; 39) + IDENT@[38; 39) "S" + WHITESPACE@[39; 40) " " + RECORD_FIELD_PAT_LIST@[40; 56) + L_CURLY@[40; 41) "{" + WHITESPACE@[41; 42) " " + BIND_PAT@[42; 43) + NAME@[42; 43) + IDENT@[42; 43) "f" + COMMA@[43; 44) "," + WHITESPACE@[44; 45) " " + BIND_PAT@[45; 54) + REF_KW@[45; 48) "ref" + WHITESPACE@[48; 49) " " + MUT_KW@[49; 52) "mut" + WHITESPACE@[52; 53) " " + NAME@[53; 54) + IDENT@[53; 54) "g" + WHITESPACE@[54; 55) " " + R_CURLY@[55; 56) "}" + WHITESPACE@[56; 57) " " + EQ@[57; 58) "=" + WHITESPACE@[58; 59) " " + TUPLE_EXPR@[59; 61) + L_PAREN@[59; 60) "(" + R_PAREN@[60; 61) ")" + SEMI@[61; 62) ";" + WHITESPACE@[62; 67) "\n " + LET_STMT@[67; 90) + LET_KW@[67; 70) "let" + WHITESPACE@[70; 71) " " + RECORD_PAT@[71; 84) + PATH@[71; 72) + PATH_SEGMENT@[71; 72) + NAME_REF@[71; 72) + IDENT@[71; 72) "S" + WHITESPACE@[72; 73) " " + RECORD_FIELD_PAT_LIST@[73; 84) + L_CURLY@[73; 74) "{" + WHITESPACE@[74; 75) " " + RECORD_FIELD_PAT@[75; 79) + NAME@[75; 76) + IDENT@[75; 76) "h" + COLON@[76; 77) ":" + WHITESPACE@[77; 78) " " + PLACEHOLDER_PAT@[78; 79) + UNDERSCORE@[78; 79) "_" + COMMA@[79; 80) "," + WHITESPACE@[80; 81) " " + DOTDOT@[81; 83) ".." + R_CURLY@[83; 84) "}" + WHITESPACE@[84; 85) " " + EQ@[85; 86) "=" + WHITESPACE@[86; 87) " " + TUPLE_EXPR@[87; 89) + L_PAREN@[87; 88) "(" + R_PAREN@[88; 89) ")" + SEMI@[89; 90) ";" + WHITESPACE@[90; 95) "\n " + LET_STMT@[95; 116) + LET_KW@[95; 98) "let" + WHITESPACE@[98; 99) " " + RECORD_PAT@[99; 110) + PATH@[99; 100) + PATH_SEGMENT@[99; 100) + NAME_REF@[99; 100) + IDENT@[99; 100) "S" + WHITESPACE@[100; 101) " " + RECORD_FIELD_PAT_LIST@[101; 110) + L_CURLY@[101; 102) "{" + WHITESPACE@[102; 103) " " + RECORD_FIELD_PAT@[103; 107) + NAME@[103; 104) + IDENT@[103; 104) "h" + COLON@[104; 105) ":" + WHITESPACE@[105; 106) " " + PLACEHOLDER_PAT@[106; 107) + UNDERSCORE@[106; 107) "_" + COMMA@[107; 108) "," + WHITESPACE@[108; 109) " " + R_CURLY@[109; 110) "}" + WHITESPACE@[110; 111) " " + EQ@[111; 112) "=" + WHITESPACE@[112; 113) " " + TUPLE_EXPR@[113; 115) + L_PAREN@[113; 114) "(" + R_PAREN@[114; 115) ")" + SEMI@[115; 116) ";" + WHITESPACE@[116; 117) "\n" + R_CURLY@[117; 118) "}" WHITESPACE@[118; 119) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0103_array_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0103_array_expr.txt index e74e231b3..0db62a1f5 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0103_array_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0103_array_expr.txt @@ -8,47 +8,48 @@ SOURCE_FILE@[0; 55) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 54) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 18) - ARRAY_EXPR@[15; 17) - L_BRACK@[15; 16) "[" - R_BRACK@[16; 17) "]" - SEMI@[17; 18) ";" - WHITESPACE@[18; 23) "\n " - EXPR_STMT@[23; 27) - ARRAY_EXPR@[23; 26) - L_BRACK@[23; 24) "[" - LITERAL@[24; 25) - INT_NUMBER@[24; 25) "1" - R_BRACK@[25; 26) "]" - SEMI@[26; 27) ";" - WHITESPACE@[27; 32) "\n " - EXPR_STMT@[32; 40) - ARRAY_EXPR@[32; 39) - L_BRACK@[32; 33) "[" - LITERAL@[33; 34) - INT_NUMBER@[33; 34) "1" - COMMA@[34; 35) "," - WHITESPACE@[35; 36) " " - LITERAL@[36; 37) - INT_NUMBER@[36; 37) "2" - COMMA@[37; 38) "," - R_BRACK@[38; 39) "]" - SEMI@[39; 40) ";" - WHITESPACE@[40; 45) "\n " - EXPR_STMT@[45; 52) - ARRAY_EXPR@[45; 51) - L_BRACK@[45; 46) "[" - LITERAL@[46; 47) - INT_NUMBER@[46; 47) "1" - SEMI@[47; 48) ";" - WHITESPACE@[48; 49) " " - LITERAL@[49; 50) - INT_NUMBER@[49; 50) "2" - R_BRACK@[50; 51) "]" - SEMI@[51; 52) ";" - WHITESPACE@[52; 53) "\n" - R_CURLY@[53; 54) "}" + BLOCK_EXPR@[9; 54) + BLOCK@[9; 54) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 18) + ARRAY_EXPR@[15; 17) + L_BRACK@[15; 16) "[" + R_BRACK@[16; 17) "]" + SEMI@[17; 18) ";" + WHITESPACE@[18; 23) "\n " + EXPR_STMT@[23; 27) + ARRAY_EXPR@[23; 26) + L_BRACK@[23; 24) "[" + LITERAL@[24; 25) + INT_NUMBER@[24; 25) "1" + R_BRACK@[25; 26) "]" + SEMI@[26; 27) ";" + WHITESPACE@[27; 32) "\n " + EXPR_STMT@[32; 40) + ARRAY_EXPR@[32; 39) + L_BRACK@[32; 33) "[" + LITERAL@[33; 34) + INT_NUMBER@[33; 34) "1" + COMMA@[34; 35) "," + WHITESPACE@[35; 36) " " + LITERAL@[36; 37) + INT_NUMBER@[36; 37) "2" + COMMA@[37; 38) "," + R_BRACK@[38; 39) "]" + SEMI@[39; 40) ";" + WHITESPACE@[40; 45) "\n " + EXPR_STMT@[45; 52) + ARRAY_EXPR@[45; 51) + L_BRACK@[45; 46) "[" + LITERAL@[46; 47) + INT_NUMBER@[46; 47) "1" + SEMI@[47; 48) ";" + WHITESPACE@[48; 49) " " + LITERAL@[49; 50) + INT_NUMBER@[49; 50) "2" + R_BRACK@[50; 51) "]" + SEMI@[51; 52) ";" + WHITESPACE@[52; 53) "\n" + R_CURLY@[53; 54) "}" WHITESPACE@[54; 55) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0105_block_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0105_block_expr.txt index 4bc446a55..6bce37a4f 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0105_block_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0105_block_expr.txt @@ -8,35 +8,36 @@ SOURCE_FILE@[0; 52) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 51) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 18) - BLOCK_EXPR@[15; 17) - BLOCK@[15; 17) - L_CURLY@[15; 16) "{" - R_CURLY@[16; 17) "}" - SEMI@[17; 18) ";" - WHITESPACE@[18; 23) "\n " - EXPR_STMT@[23; 33) - BLOCK_EXPR@[23; 32) - UNSAFE_KW@[23; 29) "unsafe" - WHITESPACE@[29; 30) " " - BLOCK@[30; 32) - L_CURLY@[30; 31) "{" - R_CURLY@[31; 32) "}" - SEMI@[32; 33) ";" - WHITESPACE@[33; 38) "\n " - EXPR_STMT@[38; 49) - BLOCK_EXPR@[38; 48) - LABEL@[38; 45) - LIFETIME@[38; 44) "\'label" - COLON@[44; 45) ":" - WHITESPACE@[45; 46) " " - BLOCK@[46; 48) - L_CURLY@[46; 47) "{" - R_CURLY@[47; 48) "}" - SEMI@[48; 49) ";" - WHITESPACE@[49; 50) "\n" - R_CURLY@[50; 51) "}" + BLOCK_EXPR@[9; 51) + BLOCK@[9; 51) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 18) + BLOCK_EXPR@[15; 17) + BLOCK@[15; 17) + L_CURLY@[15; 16) "{" + R_CURLY@[16; 17) "}" + SEMI@[17; 18) ";" + WHITESPACE@[18; 23) "\n " + EXPR_STMT@[23; 33) + BLOCK_EXPR@[23; 32) + UNSAFE_KW@[23; 29) "unsafe" + WHITESPACE@[29; 30) " " + BLOCK@[30; 32) + L_CURLY@[30; 31) "{" + R_CURLY@[31; 32) "}" + SEMI@[32; 33) ";" + WHITESPACE@[33; 38) "\n " + EXPR_STMT@[38; 49) + BLOCK_EXPR@[38; 48) + LABEL@[38; 45) + LIFETIME@[38; 44) "\'label" + COLON@[44; 45) ":" + WHITESPACE@[45; 46) " " + BLOCK@[46; 48) + L_CURLY@[46; 47) "{" + R_CURLY@[47; 48) "}" + SEMI@[48; 49) ";" + WHITESPACE@[49; 50) "\n" + R_CURLY@[50; 51) "}" WHITESPACE@[51; 52) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0106_lambda_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0106_lambda_expr.txt index a05218118..0216123f0 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0106_lambda_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0106_lambda_expr.txt @@ -8,132 +8,133 @@ SOURCE_FILE@[0; 134) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 133) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 21) - LAMBDA_EXPR@[15; 20) - PARAM_LIST@[15; 17) - PIPE@[15; 16) "|" - PIPE@[16; 17) "|" - WHITESPACE@[17; 18) " " - TUPLE_EXPR@[18; 20) - L_PAREN@[18; 19) "(" - R_PAREN@[19; 20) ")" - SEMI@[20; 21) ";" - WHITESPACE@[21; 26) "\n " - EXPR_STMT@[26; 43) - LAMBDA_EXPR@[26; 42) - PARAM_LIST@[26; 28) - PIPE@[26; 27) "|" - PIPE@[27; 28) "|" - WHITESPACE@[28; 29) " " - RET_TYPE@[29; 35) - THIN_ARROW@[29; 31) "->" - WHITESPACE@[31; 32) " " - PATH_TYPE@[32; 35) - PATH@[32; 35) - PATH_SEGMENT@[32; 35) - NAME_REF@[32; 35) - IDENT@[32; 35) "i32" - WHITESPACE@[35; 36) " " - BLOCK_EXPR@[36; 42) - BLOCK@[36; 42) - L_CURLY@[36; 37) "{" - WHITESPACE@[37; 38) " " - LITERAL@[38; 40) - INT_NUMBER@[38; 40) "92" - WHITESPACE@[40; 41) " " - R_CURLY@[41; 42) "}" - SEMI@[42; 43) ";" - WHITESPACE@[43; 48) "\n " - EXPR_STMT@[48; 54) - LAMBDA_EXPR@[48; 53) - PARAM_LIST@[48; 51) - PIPE@[48; 49) "|" - PARAM@[49; 50) - BIND_PAT@[49; 50) - NAME@[49; 50) - IDENT@[49; 50) "x" - PIPE@[50; 51) "|" - WHITESPACE@[51; 52) " " - PATH_EXPR@[52; 53) - PATH@[52; 53) - PATH_SEGMENT@[52; 53) - NAME_REF@[52; 53) - IDENT@[52; 53) "x" - SEMI@[53; 54) ";" - WHITESPACE@[54; 59) "\n " - EXPR_STMT@[59; 76) - LAMBDA_EXPR@[59; 75) - MOVE_KW@[59; 63) "move" - WHITESPACE@[63; 64) " " - PARAM_LIST@[64; 73) - PIPE@[64; 65) "|" - PARAM@[65; 71) - BIND_PAT@[65; 66) - NAME@[65; 66) - IDENT@[65; 66) "x" - COLON@[66; 67) ":" - WHITESPACE@[67; 68) " " - PATH_TYPE@[68; 71) - PATH@[68; 71) - PATH_SEGMENT@[68; 71) - NAME_REF@[68; 71) - IDENT@[68; 71) "i32" - COMMA@[71; 72) "," - PIPE@[72; 73) "|" - WHITESPACE@[73; 74) " " - PATH_EXPR@[74; 75) - PATH@[74; 75) - PATH_SEGMENT@[74; 75) - NAME_REF@[74; 75) - IDENT@[74; 75) "x" - SEMI@[75; 76) ";" - WHITESPACE@[76; 81) "\n " - EXPR_STMT@[81; 93) - LAMBDA_EXPR@[81; 92) - ASYNC_KW@[81; 86) "async" - WHITESPACE@[86; 87) " " - PARAM_LIST@[87; 89) - PIPE@[87; 88) "|" - PIPE@[88; 89) "|" - WHITESPACE@[89; 90) " " - BLOCK_EXPR@[90; 92) - BLOCK@[90; 92) - L_CURLY@[90; 91) "{" - R_CURLY@[91; 92) "}" - SEMI@[92; 93) ";" - WHITESPACE@[93; 98) "\n " - EXPR_STMT@[98; 109) - LAMBDA_EXPR@[98; 108) - MOVE_KW@[98; 102) "move" - WHITESPACE@[102; 103) " " - PARAM_LIST@[103; 105) - PIPE@[103; 104) "|" - PIPE@[104; 105) "|" - WHITESPACE@[105; 106) " " - BLOCK_EXPR@[106; 108) - BLOCK@[106; 108) - L_CURLY@[106; 107) "{" - R_CURLY@[107; 108) "}" - SEMI@[108; 109) ";" - WHITESPACE@[109; 114) "\n " - EXPR_STMT@[114; 131) - LAMBDA_EXPR@[114; 130) - ASYNC_KW@[114; 119) "async" - WHITESPACE@[119; 120) " " - MOVE_KW@[120; 124) "move" - WHITESPACE@[124; 125) " " - PARAM_LIST@[125; 127) - PIPE@[125; 126) "|" - PIPE@[126; 127) "|" - WHITESPACE@[127; 128) " " - BLOCK_EXPR@[128; 130) - BLOCK@[128; 130) - L_CURLY@[128; 129) "{" - R_CURLY@[129; 130) "}" - SEMI@[130; 131) ";" - WHITESPACE@[131; 132) "\n" - R_CURLY@[132; 133) "}" + BLOCK_EXPR@[9; 133) + BLOCK@[9; 133) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 21) + LAMBDA_EXPR@[15; 20) + PARAM_LIST@[15; 17) + PIPE@[15; 16) "|" + PIPE@[16; 17) "|" + WHITESPACE@[17; 18) " " + TUPLE_EXPR@[18; 20) + L_PAREN@[18; 19) "(" + R_PAREN@[19; 20) ")" + SEMI@[20; 21) ";" + WHITESPACE@[21; 26) "\n " + EXPR_STMT@[26; 43) + LAMBDA_EXPR@[26; 42) + PARAM_LIST@[26; 28) + PIPE@[26; 27) "|" + PIPE@[27; 28) "|" + WHITESPACE@[28; 29) " " + RET_TYPE@[29; 35) + THIN_ARROW@[29; 31) "->" + WHITESPACE@[31; 32) " " + PATH_TYPE@[32; 35) + PATH@[32; 35) + PATH_SEGMENT@[32; 35) + NAME_REF@[32; 35) + IDENT@[32; 35) "i32" + WHITESPACE@[35; 36) " " + BLOCK_EXPR@[36; 42) + BLOCK@[36; 42) + L_CURLY@[36; 37) "{" + WHITESPACE@[37; 38) " " + LITERAL@[38; 40) + INT_NUMBER@[38; 40) "92" + WHITESPACE@[40; 41) " " + R_CURLY@[41; 42) "}" + SEMI@[42; 43) ";" + WHITESPACE@[43; 48) "\n " + EXPR_STMT@[48; 54) + LAMBDA_EXPR@[48; 53) + PARAM_LIST@[48; 51) + PIPE@[48; 49) "|" + PARAM@[49; 50) + BIND_PAT@[49; 50) + NAME@[49; 50) + IDENT@[49; 50) "x" + PIPE@[50; 51) "|" + WHITESPACE@[51; 52) " " + PATH_EXPR@[52; 53) + PATH@[52; 53) + PATH_SEGMENT@[52; 53) + NAME_REF@[52; 53) + IDENT@[52; 53) "x" + SEMI@[53; 54) ";" + WHITESPACE@[54; 59) "\n " + EXPR_STMT@[59; 76) + LAMBDA_EXPR@[59; 75) + MOVE_KW@[59; 63) "move" + WHITESPACE@[63; 64) " " + PARAM_LIST@[64; 73) + PIPE@[64; 65) "|" + PARAM@[65; 71) + BIND_PAT@[65; 66) + NAME@[65; 66) + IDENT@[65; 66) "x" + COLON@[66; 67) ":" + WHITESPACE@[67; 68) " " + PATH_TYPE@[68; 71) + PATH@[68; 71) + PATH_SEGMENT@[68; 71) + NAME_REF@[68; 71) + IDENT@[68; 71) "i32" + COMMA@[71; 72) "," + PIPE@[72; 73) "|" + WHITESPACE@[73; 74) " " + PATH_EXPR@[74; 75) + PATH@[74; 75) + PATH_SEGMENT@[74; 75) + NAME_REF@[74; 75) + IDENT@[74; 75) "x" + SEMI@[75; 76) ";" + WHITESPACE@[76; 81) "\n " + EXPR_STMT@[81; 93) + LAMBDA_EXPR@[81; 92) + ASYNC_KW@[81; 86) "async" + WHITESPACE@[86; 87) " " + PARAM_LIST@[87; 89) + PIPE@[87; 88) "|" + PIPE@[88; 89) "|" + WHITESPACE@[89; 90) " " + BLOCK_EXPR@[90; 92) + BLOCK@[90; 92) + L_CURLY@[90; 91) "{" + R_CURLY@[91; 92) "}" + SEMI@[92; 93) ";" + WHITESPACE@[93; 98) "\n " + EXPR_STMT@[98; 109) + LAMBDA_EXPR@[98; 108) + MOVE_KW@[98; 102) "move" + WHITESPACE@[102; 103) " " + PARAM_LIST@[103; 105) + PIPE@[103; 104) "|" + PIPE@[104; 105) "|" + WHITESPACE@[105; 106) " " + BLOCK_EXPR@[106; 108) + BLOCK@[106; 108) + L_CURLY@[106; 107) "{" + R_CURLY@[107; 108) "}" + SEMI@[108; 109) ";" + WHITESPACE@[109; 114) "\n " + EXPR_STMT@[114; 131) + LAMBDA_EXPR@[114; 130) + ASYNC_KW@[114; 119) "async" + WHITESPACE@[119; 120) " " + MOVE_KW@[120; 124) "move" + WHITESPACE@[124; 125) " " + PARAM_LIST@[125; 127) + PIPE@[125; 126) "|" + PIPE@[126; 127) "|" + WHITESPACE@[127; 128) " " + BLOCK_EXPR@[128; 130) + BLOCK@[128; 130) + L_CURLY@[128; 129) "{" + R_CURLY@[129; 130) "}" + SEMI@[130; 131) ";" + WHITESPACE@[131; 132) "\n" + R_CURLY@[132; 133) "}" WHITESPACE@[133; 134) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0107_method_call_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0107_method_call_expr.txt index bc28b293e..ba478528c 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0107_method_call_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0107_method_call_expr.txt @@ -8,55 +8,56 @@ SOURCE_FILE@[0; 49) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 48) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 23) - METHOD_CALL_EXPR@[15; 22) - PATH_EXPR@[15; 16) - PATH@[15; 16) - PATH_SEGMENT@[15; 16) - NAME_REF@[15; 16) - IDENT@[15; 16) "x" - DOT@[16; 17) "." - NAME_REF@[17; 20) - IDENT@[17; 20) "foo" - ARG_LIST@[20; 22) - L_PAREN@[20; 21) "(" - R_PAREN@[21; 22) ")" - SEMI@[22; 23) ";" - WHITESPACE@[23; 28) "\n " - EXPR_STMT@[28; 46) - METHOD_CALL_EXPR@[28; 45) - PATH_EXPR@[28; 29) - PATH@[28; 29) - PATH_SEGMENT@[28; 29) - NAME_REF@[28; 29) - IDENT@[28; 29) "y" - DOT@[29; 30) "." - NAME_REF@[30; 33) - IDENT@[30; 33) "bar" - TYPE_ARG_LIST@[33; 38) - COLONCOLON@[33; 35) "::" - L_ANGLE@[35; 36) "<" - TYPE_ARG@[36; 37) - PATH_TYPE@[36; 37) - PATH@[36; 37) - PATH_SEGMENT@[36; 37) - NAME_REF@[36; 37) - IDENT@[36; 37) "T" - R_ANGLE@[37; 38) ">" - ARG_LIST@[38; 45) - L_PAREN@[38; 39) "(" - LITERAL@[39; 40) - INT_NUMBER@[39; 40) "1" - COMMA@[40; 41) "," - WHITESPACE@[41; 42) " " - LITERAL@[42; 43) - INT_NUMBER@[42; 43) "2" - COMMA@[43; 44) "," - R_PAREN@[44; 45) ")" - SEMI@[45; 46) ";" - WHITESPACE@[46; 47) "\n" - R_CURLY@[47; 48) "}" + BLOCK_EXPR@[9; 48) + BLOCK@[9; 48) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 23) + METHOD_CALL_EXPR@[15; 22) + PATH_EXPR@[15; 16) + PATH@[15; 16) + PATH_SEGMENT@[15; 16) + NAME_REF@[15; 16) + IDENT@[15; 16) "x" + DOT@[16; 17) "." + NAME_REF@[17; 20) + IDENT@[17; 20) "foo" + ARG_LIST@[20; 22) + L_PAREN@[20; 21) "(" + R_PAREN@[21; 22) ")" + SEMI@[22; 23) ";" + WHITESPACE@[23; 28) "\n " + EXPR_STMT@[28; 46) + METHOD_CALL_EXPR@[28; 45) + PATH_EXPR@[28; 29) + PATH@[28; 29) + PATH_SEGMENT@[28; 29) + NAME_REF@[28; 29) + IDENT@[28; 29) "y" + DOT@[29; 30) "." + NAME_REF@[30; 33) + IDENT@[30; 33) "bar" + TYPE_ARG_LIST@[33; 38) + COLONCOLON@[33; 35) "::" + L_ANGLE@[35; 36) "<" + TYPE_ARG@[36; 37) + PATH_TYPE@[36; 37) + PATH@[36; 37) + PATH_SEGMENT@[36; 37) + NAME_REF@[36; 37) + IDENT@[36; 37) "T" + R_ANGLE@[37; 38) ">" + ARG_LIST@[38; 45) + L_PAREN@[38; 39) "(" + LITERAL@[39; 40) + INT_NUMBER@[39; 40) "1" + COMMA@[40; 41) "," + WHITESPACE@[41; 42) " " + LITERAL@[42; 43) + INT_NUMBER@[42; 43) "2" + COMMA@[43; 44) "," + R_PAREN@[44; 45) ")" + SEMI@[45; 46) ";" + WHITESPACE@[46; 47) "\n" + R_CURLY@[47; 48) "}" WHITESPACE@[48; 49) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0108_tuple_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0108_tuple_expr.txt index 32be7a849..6f685ca8d 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0108_tuple_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0108_tuple_expr.txt @@ -8,31 +8,32 @@ SOURCE_FILE@[0; 40) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 39) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 18) - TUPLE_EXPR@[15; 17) - L_PAREN@[15; 16) "(" - R_PAREN@[16; 17) ")" - SEMI@[17; 18) ";" - WHITESPACE@[18; 23) "\n " - EXPR_STMT@[23; 27) - PAREN_EXPR@[23; 26) - L_PAREN@[23; 24) "(" - LITERAL@[24; 25) - INT_NUMBER@[24; 25) "1" - R_PAREN@[25; 26) ")" - SEMI@[26; 27) ";" - WHITESPACE@[27; 32) "\n " - EXPR_STMT@[32; 37) - TUPLE_EXPR@[32; 36) - L_PAREN@[32; 33) "(" - LITERAL@[33; 34) - INT_NUMBER@[33; 34) "1" - COMMA@[34; 35) "," - R_PAREN@[35; 36) ")" - SEMI@[36; 37) ";" - WHITESPACE@[37; 38) "\n" - R_CURLY@[38; 39) "}" + BLOCK_EXPR@[9; 39) + BLOCK@[9; 39) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 18) + TUPLE_EXPR@[15; 17) + L_PAREN@[15; 16) "(" + R_PAREN@[16; 17) ")" + SEMI@[17; 18) ";" + WHITESPACE@[18; 23) "\n " + EXPR_STMT@[23; 27) + PAREN_EXPR@[23; 26) + L_PAREN@[23; 24) "(" + LITERAL@[24; 25) + INT_NUMBER@[24; 25) "1" + R_PAREN@[25; 26) ")" + SEMI@[26; 27) ";" + WHITESPACE@[27; 32) "\n " + EXPR_STMT@[32; 37) + TUPLE_EXPR@[32; 36) + L_PAREN@[32; 33) "(" + LITERAL@[33; 34) + INT_NUMBER@[33; 34) "1" + COMMA@[34; 35) "," + R_PAREN@[35; 36) ")" + SEMI@[36; 37) ";" + WHITESPACE@[37; 38) "\n" + R_CURLY@[38; 39) "}" WHITESPACE@[39; 40) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0109_label.txt b/crates/ra_syntax/test_data/parser/inline/ok/0109_label.txt index 39e4f4b3e..3376a90cb 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0109_label.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0109_label.txt @@ -8,57 +8,61 @@ SOURCE_FILE@[0; 74) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 73) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 26) - LOOP_EXPR@[15; 26) - LABEL@[15; 18) - LIFETIME@[15; 17) "\'a" - COLON@[17; 18) ":" - WHITESPACE@[18; 19) " " - LOOP_KW@[19; 23) "loop" - WHITESPACE@[23; 24) " " - BLOCK@[24; 26) - L_CURLY@[24; 25) "{" - R_CURLY@[25; 26) "}" - WHITESPACE@[26; 31) "\n " - EXPR_STMT@[31; 48) - WHILE_EXPR@[31; 48) - LABEL@[31; 34) - LIFETIME@[31; 33) "\'b" - COLON@[33; 34) ":" - WHITESPACE@[34; 35) " " - WHILE_KW@[35; 40) "while" - WHITESPACE@[40; 41) " " - CONDITION@[41; 45) - LITERAL@[41; 45) - TRUE_KW@[41; 45) "true" - WHITESPACE@[45; 46) " " - BLOCK@[46; 48) - L_CURLY@[46; 47) "{" - R_CURLY@[47; 48) "}" - WHITESPACE@[48; 53) "\n " - FOR_EXPR@[53; 71) - LABEL@[53; 56) - LIFETIME@[53; 55) "\'c" - COLON@[55; 56) ":" - WHITESPACE@[56; 57) " " - FOR_KW@[57; 60) "for" - WHITESPACE@[60; 61) " " - BIND_PAT@[61; 62) - NAME@[61; 62) - IDENT@[61; 62) "x" - WHITESPACE@[62; 63) " " - IN_KW@[63; 65) "in" - WHITESPACE@[65; 66) " " - TUPLE_EXPR@[66; 68) - L_PAREN@[66; 67) "(" - R_PAREN@[67; 68) ")" - WHITESPACE@[68; 69) " " - BLOCK@[69; 71) - L_CURLY@[69; 70) "{" - R_CURLY@[70; 71) "}" - WHITESPACE@[71; 72) "\n" - R_CURLY@[72; 73) "}" + BLOCK_EXPR@[9; 73) + BLOCK@[9; 73) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 26) + LOOP_EXPR@[15; 26) + LABEL@[15; 18) + LIFETIME@[15; 17) "\'a" + COLON@[17; 18) ":" + WHITESPACE@[18; 19) " " + LOOP_KW@[19; 23) "loop" + WHITESPACE@[23; 24) " " + BLOCK_EXPR@[24; 26) + BLOCK@[24; 26) + L_CURLY@[24; 25) "{" + R_CURLY@[25; 26) "}" + WHITESPACE@[26; 31) "\n " + EXPR_STMT@[31; 48) + WHILE_EXPR@[31; 48) + LABEL@[31; 34) + LIFETIME@[31; 33) "\'b" + COLON@[33; 34) ":" + WHITESPACE@[34; 35) " " + WHILE_KW@[35; 40) "while" + WHITESPACE@[40; 41) " " + CONDITION@[41; 45) + LITERAL@[41; 45) + TRUE_KW@[41; 45) "true" + WHITESPACE@[45; 46) " " + BLOCK_EXPR@[46; 48) + BLOCK@[46; 48) + L_CURLY@[46; 47) "{" + R_CURLY@[47; 48) "}" + WHITESPACE@[48; 53) "\n " + FOR_EXPR@[53; 71) + LABEL@[53; 56) + LIFETIME@[53; 55) "\'c" + COLON@[55; 56) ":" + WHITESPACE@[56; 57) " " + FOR_KW@[57; 60) "for" + WHITESPACE@[60; 61) " " + BIND_PAT@[61; 62) + NAME@[61; 62) + IDENT@[61; 62) "x" + WHITESPACE@[62; 63) " " + IN_KW@[63; 65) "in" + WHITESPACE@[65; 66) " " + TUPLE_EXPR@[66; 68) + L_PAREN@[66; 67) "(" + R_PAREN@[67; 68) ")" + WHITESPACE@[68; 69) " " + BLOCK_EXPR@[69; 71) + BLOCK@[69; 71) + L_CURLY@[69; 70) "{" + R_CURLY@[70; 71) "}" + WHITESPACE@[71; 72) "\n" + R_CURLY@[72; 73) "}" WHITESPACE@[73; 74) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0111_tuple_pat.txt b/crates/ra_syntax/test_data/parser/inline/ok/0111_tuple_pat.txt index aef3f7e0f..3fee3a1cf 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0111_tuple_pat.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0111_tuple_pat.txt @@ -8,33 +8,34 @@ SOURCE_FILE@[0; 39) L_PAREN@[7; 8) "(" R_PAREN@[8; 9) ")" WHITESPACE@[9; 10) " " - BLOCK@[10; 38) - L_CURLY@[10; 11) "{" - WHITESPACE@[11; 16) "\n " - LET_STMT@[16; 36) - LET_KW@[16; 19) "let" - WHITESPACE@[19; 20) " " - TUPLE_PAT@[20; 30) - L_PAREN@[20; 21) "(" - BIND_PAT@[21; 22) - NAME@[21; 22) - IDENT@[21; 22) "a" - COMMA@[22; 23) "," - WHITESPACE@[23; 24) " " - BIND_PAT@[24; 25) - NAME@[24; 25) - IDENT@[24; 25) "b" - COMMA@[25; 26) "," - WHITESPACE@[26; 27) " " - DOTDOT@[27; 29) ".." - R_PAREN@[29; 30) ")" - WHITESPACE@[30; 31) " " - EQ@[31; 32) "=" - WHITESPACE@[32; 33) " " - TUPLE_EXPR@[33; 35) - L_PAREN@[33; 34) "(" - R_PAREN@[34; 35) ")" - SEMI@[35; 36) ";" - WHITESPACE@[36; 37) "\n" - R_CURLY@[37; 38) "}" + BLOCK_EXPR@[10; 38) + BLOCK@[10; 38) + L_CURLY@[10; 11) "{" + WHITESPACE@[11; 16) "\n " + LET_STMT@[16; 36) + LET_KW@[16; 19) "let" + WHITESPACE@[19; 20) " " + TUPLE_PAT@[20; 30) + L_PAREN@[20; 21) "(" + BIND_PAT@[21; 22) + NAME@[21; 22) + IDENT@[21; 22) "a" + COMMA@[22; 23) "," + WHITESPACE@[23; 24) " " + BIND_PAT@[24; 25) + NAME@[24; 25) + IDENT@[24; 25) "b" + COMMA@[25; 26) "," + WHITESPACE@[26; 27) " " + DOTDOT@[27; 29) ".." + R_PAREN@[29; 30) ")" + WHITESPACE@[30; 31) " " + EQ@[31; 32) "=" + WHITESPACE@[32; 33) " " + TUPLE_EXPR@[33; 35) + L_PAREN@[33; 34) "(" + R_PAREN@[34; 35) ")" + SEMI@[35; 36) ";" + WHITESPACE@[36; 37) "\n" + R_CURLY@[37; 38) "}" WHITESPACE@[38; 39) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0112_bind_pat.txt b/crates/ra_syntax/test_data/parser/inline/ok/0112_bind_pat.txt index ab0f88507..ad1d47b0e 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0112_bind_pat.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0112_bind_pat.txt @@ -8,120 +8,121 @@ SOURCE_FILE@[0; 146) L_PAREN@[7; 8) "(" R_PAREN@[8; 9) ")" WHITESPACE@[9; 10) " " - BLOCK@[10; 145) - L_CURLY@[10; 11) "{" - WHITESPACE@[11; 16) "\n " - LET_STMT@[16; 27) - LET_KW@[16; 19) "let" - WHITESPACE@[19; 20) " " - BIND_PAT@[20; 21) - NAME@[20; 21) - IDENT@[20; 21) "a" - WHITESPACE@[21; 22) " " - EQ@[22; 23) "=" - WHITESPACE@[23; 24) " " - TUPLE_EXPR@[24; 26) - L_PAREN@[24; 25) "(" - R_PAREN@[25; 26) ")" - SEMI@[26; 27) ";" - WHITESPACE@[27; 32) "\n " - LET_STMT@[32; 47) - LET_KW@[32; 35) "let" - WHITESPACE@[35; 36) " " - BIND_PAT@[36; 41) - MUT_KW@[36; 39) "mut" - WHITESPACE@[39; 40) " " - NAME@[40; 41) - IDENT@[40; 41) "b" - WHITESPACE@[41; 42) " " - EQ@[42; 43) "=" - WHITESPACE@[43; 44) " " - TUPLE_EXPR@[44; 46) - L_PAREN@[44; 45) "(" - R_PAREN@[45; 46) ")" - SEMI@[46; 47) ";" - WHITESPACE@[47; 52) "\n " - LET_STMT@[52; 67) - LET_KW@[52; 55) "let" - WHITESPACE@[55; 56) " " - BIND_PAT@[56; 61) - REF_KW@[56; 59) "ref" - WHITESPACE@[59; 60) " " - NAME@[60; 61) - IDENT@[60; 61) "c" - WHITESPACE@[61; 62) " " - EQ@[62; 63) "=" - WHITESPACE@[63; 64) " " - TUPLE_EXPR@[64; 66) - L_PAREN@[64; 65) "(" - R_PAREN@[65; 66) ")" - SEMI@[66; 67) ";" - WHITESPACE@[67; 72) "\n " - LET_STMT@[72; 91) - LET_KW@[72; 75) "let" - WHITESPACE@[75; 76) " " - BIND_PAT@[76; 85) - REF_KW@[76; 79) "ref" - WHITESPACE@[79; 80) " " - MUT_KW@[80; 83) "mut" - WHITESPACE@[83; 84) " " - NAME@[84; 85) - IDENT@[84; 85) "d" - WHITESPACE@[85; 86) " " - EQ@[86; 87) "=" - WHITESPACE@[87; 88) " " - TUPLE_EXPR@[88; 90) - L_PAREN@[88; 89) "(" - R_PAREN@[89; 90) ")" - SEMI@[90; 91) ";" - WHITESPACE@[91; 96) "\n " - LET_STMT@[96; 111) - LET_KW@[96; 99) "let" - WHITESPACE@[99; 100) " " - BIND_PAT@[100; 105) - NAME@[100; 101) - IDENT@[100; 101) "e" - WHITESPACE@[101; 102) " " - AT@[102; 103) "@" - WHITESPACE@[103; 104) " " - PLACEHOLDER_PAT@[104; 105) - UNDERSCORE@[104; 105) "_" - WHITESPACE@[105; 106) " " - EQ@[106; 107) "=" - WHITESPACE@[107; 108) " " - TUPLE_EXPR@[108; 110) - L_PAREN@[108; 109) "(" - R_PAREN@[109; 110) ")" - SEMI@[110; 111) ";" - WHITESPACE@[111; 116) "\n " - LET_STMT@[116; 143) - LET_KW@[116; 119) "let" - WHITESPACE@[119; 120) " " - BIND_PAT@[120; 137) - REF_KW@[120; 123) "ref" - WHITESPACE@[123; 124) " " - MUT_KW@[124; 127) "mut" - WHITESPACE@[127; 128) " " - NAME@[128; 129) - IDENT@[128; 129) "f" - WHITESPACE@[129; 130) " " - AT@[130; 131) "@" - WHITESPACE@[131; 132) " " - BIND_PAT@[132; 137) - NAME@[132; 133) - IDENT@[132; 133) "g" - WHITESPACE@[133; 134) " " - AT@[134; 135) "@" - WHITESPACE@[135; 136) " " - PLACEHOLDER_PAT@[136; 137) - UNDERSCORE@[136; 137) "_" - WHITESPACE@[137; 138) " " - EQ@[138; 139) "=" - WHITESPACE@[139; 140) " " - TUPLE_EXPR@[140; 142) - L_PAREN@[140; 141) "(" - R_PAREN@[141; 142) ")" - SEMI@[142; 143) ";" - WHITESPACE@[143; 144) "\n" - R_CURLY@[144; 145) "}" + BLOCK_EXPR@[10; 145) + BLOCK@[10; 145) + L_CURLY@[10; 11) "{" + WHITESPACE@[11; 16) "\n " + LET_STMT@[16; 27) + LET_KW@[16; 19) "let" + WHITESPACE@[19; 20) " " + BIND_PAT@[20; 21) + NAME@[20; 21) + IDENT@[20; 21) "a" + WHITESPACE@[21; 22) " " + EQ@[22; 23) "=" + WHITESPACE@[23; 24) " " + TUPLE_EXPR@[24; 26) + L_PAREN@[24; 25) "(" + R_PAREN@[25; 26) ")" + SEMI@[26; 27) ";" + WHITESPACE@[27; 32) "\n " + LET_STMT@[32; 47) + LET_KW@[32; 35) "let" + WHITESPACE@[35; 36) " " + BIND_PAT@[36; 41) + MUT_KW@[36; 39) "mut" + WHITESPACE@[39; 40) " " + NAME@[40; 41) + IDENT@[40; 41) "b" + WHITESPACE@[41; 42) " " + EQ@[42; 43) "=" + WHITESPACE@[43; 44) " " + TUPLE_EXPR@[44; 46) + L_PAREN@[44; 45) "(" + R_PAREN@[45; 46) ")" + SEMI@[46; 47) ";" + WHITESPACE@[47; 52) "\n " + LET_STMT@[52; 67) + LET_KW@[52; 55) "let" + WHITESPACE@[55; 56) " " + BIND_PAT@[56; 61) + REF_KW@[56; 59) "ref" + WHITESPACE@[59; 60) " " + NAME@[60; 61) + IDENT@[60; 61) "c" + WHITESPACE@[61; 62) " " + EQ@[62; 63) "=" + WHITESPACE@[63; 64) " " + TUPLE_EXPR@[64; 66) + L_PAREN@[64; 65) "(" + R_PAREN@[65; 66) ")" + SEMI@[66; 67) ";" + WHITESPACE@[67; 72) "\n " + LET_STMT@[72; 91) + LET_KW@[72; 75) "let" + WHITESPACE@[75; 76) " " + BIND_PAT@[76; 85) + REF_KW@[76; 79) "ref" + WHITESPACE@[79; 80) " " + MUT_KW@[80; 83) "mut" + WHITESPACE@[83; 84) " " + NAME@[84; 85) + IDENT@[84; 85) "d" + WHITESPACE@[85; 86) " " + EQ@[86; 87) "=" + WHITESPACE@[87; 88) " " + TUPLE_EXPR@[88; 90) + L_PAREN@[88; 89) "(" + R_PAREN@[89; 90) ")" + SEMI@[90; 91) ";" + WHITESPACE@[91; 96) "\n " + LET_STMT@[96; 111) + LET_KW@[96; 99) "let" + WHITESPACE@[99; 100) " " + BIND_PAT@[100; 105) + NAME@[100; 101) + IDENT@[100; 101) "e" + WHITESPACE@[101; 102) " " + AT@[102; 103) "@" + WHITESPACE@[103; 104) " " + PLACEHOLDER_PAT@[104; 105) + UNDERSCORE@[104; 105) "_" + WHITESPACE@[105; 106) " " + EQ@[106; 107) "=" + WHITESPACE@[107; 108) " " + TUPLE_EXPR@[108; 110) + L_PAREN@[108; 109) "(" + R_PAREN@[109; 110) ")" + SEMI@[110; 111) ";" + WHITESPACE@[111; 116) "\n " + LET_STMT@[116; 143) + LET_KW@[116; 119) "let" + WHITESPACE@[119; 120) " " + BIND_PAT@[120; 137) + REF_KW@[120; 123) "ref" + WHITESPACE@[123; 124) " " + MUT_KW@[124; 127) "mut" + WHITESPACE@[127; 128) " " + NAME@[128; 129) + IDENT@[128; 129) "f" + WHITESPACE@[129; 130) " " + AT@[130; 131) "@" + WHITESPACE@[131; 132) " " + BIND_PAT@[132; 137) + NAME@[132; 133) + IDENT@[132; 133) "g" + WHITESPACE@[133; 134) " " + AT@[134; 135) "@" + WHITESPACE@[135; 136) " " + PLACEHOLDER_PAT@[136; 137) + UNDERSCORE@[136; 137) "_" + WHITESPACE@[137; 138) " " + EQ@[138; 139) "=" + WHITESPACE@[139; 140) " " + TUPLE_EXPR@[140; 142) + L_PAREN@[140; 141) "(" + R_PAREN@[141; 142) ")" + SEMI@[142; 143) ";" + WHITESPACE@[143; 144) "\n" + R_CURLY@[144; 145) "}" WHITESPACE@[145; 146) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0113_nocontentexpr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0113_nocontentexpr.txt index 601a5bae9..5db1ff2af 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0113_nocontentexpr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0113_nocontentexpr.txt @@ -7,50 +7,51 @@ SOURCE_FILE@[0; 50) PARAM_LIST@[6; 8) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" - BLOCK@[8; 49) - L_CURLY@[8; 9) "{" - WHITESPACE@[9; 14) "\n " - SEMI@[14; 15) ";" - SEMI@[15; 16) ";" - SEMI@[16; 17) ";" - EXPR_STMT@[17; 29) - CALL_EXPR@[17; 28) - PATH_EXPR@[17; 26) - PATH@[17; 26) - PATH_SEGMENT@[17; 26) - NAME_REF@[17; 26) - IDENT@[17; 26) "some_expr" - ARG_LIST@[26; 28) - L_PAREN@[26; 27) "(" - R_PAREN@[27; 28) ")" - SEMI@[28; 29) ";" - SEMI@[29; 30) ";" - SEMI@[30; 31) ";" - SEMI@[31; 32) ";" - EXPR_STMT@[32; 38) - BLOCK_EXPR@[32; 37) - BLOCK@[32; 37) - L_CURLY@[32; 33) "{" - SEMI@[33; 34) ";" - SEMI@[34; 35) ";" - SEMI@[35; 36) ";" - R_CURLY@[36; 37) "}" - SEMI@[37; 38) ";" - SEMI@[38; 39) ";" - SEMI@[39; 40) ";" - SEMI@[40; 41) ";" - CALL_EXPR@[41; 47) - PATH_EXPR@[41; 43) - PATH@[41; 43) - PATH_SEGMENT@[41; 43) - NAME_REF@[41; 43) - IDENT@[41; 43) "Ok" - ARG_LIST@[43; 47) - L_PAREN@[43; 44) "(" - TUPLE_EXPR@[44; 46) - L_PAREN@[44; 45) "(" - R_PAREN@[45; 46) ")" - R_PAREN@[46; 47) ")" - WHITESPACE@[47; 48) "\n" - R_CURLY@[48; 49) "}" + BLOCK_EXPR@[8; 49) + BLOCK@[8; 49) + L_CURLY@[8; 9) "{" + WHITESPACE@[9; 14) "\n " + SEMI@[14; 15) ";" + SEMI@[15; 16) ";" + SEMI@[16; 17) ";" + EXPR_STMT@[17; 29) + CALL_EXPR@[17; 28) + PATH_EXPR@[17; 26) + PATH@[17; 26) + PATH_SEGMENT@[17; 26) + NAME_REF@[17; 26) + IDENT@[17; 26) "some_expr" + ARG_LIST@[26; 28) + L_PAREN@[26; 27) "(" + R_PAREN@[27; 28) ")" + SEMI@[28; 29) ";" + SEMI@[29; 30) ";" + SEMI@[30; 31) ";" + SEMI@[31; 32) ";" + EXPR_STMT@[32; 38) + BLOCK_EXPR@[32; 37) + BLOCK@[32; 37) + L_CURLY@[32; 33) "{" + SEMI@[33; 34) ";" + SEMI@[34; 35) ";" + SEMI@[35; 36) ";" + R_CURLY@[36; 37) "}" + SEMI@[37; 38) ";" + SEMI@[38; 39) ";" + SEMI@[39; 40) ";" + SEMI@[40; 41) ";" + CALL_EXPR@[41; 47) + PATH_EXPR@[41; 43) + PATH@[41; 43) + PATH_SEGMENT@[41; 43) + NAME_REF@[41; 43) + IDENT@[41; 43) "Ok" + ARG_LIST@[43; 47) + L_PAREN@[43; 44) "(" + TUPLE_EXPR@[44; 46) + L_PAREN@[44; 45) "(" + R_PAREN@[45; 46) ")" + R_PAREN@[46; 47) ")" + WHITESPACE@[47; 48) "\n" + R_CURLY@[48; 49) "}" WHITESPACE@[49; 50) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0118_match_guard.txt b/crates/ra_syntax/test_data/parser/inline/ok/0118_match_guard.txt index d53e10e86..852e4e489 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0118_match_guard.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0118_match_guard.txt @@ -8,40 +8,41 @@ SOURCE_FILE@[0; 58) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 57) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - MATCH_EXPR@[15; 55) - MATCH_KW@[15; 20) "match" - WHITESPACE@[20; 21) " " - TUPLE_EXPR@[21; 23) - L_PAREN@[21; 22) "(" - R_PAREN@[22; 23) ")" - WHITESPACE@[23; 24) " " - MATCH_ARM_LIST@[24; 55) - L_CURLY@[24; 25) "{" - WHITESPACE@[25; 34) "\n " - MATCH_ARM@[34; 48) - PLACEHOLDER_PAT@[34; 35) - UNDERSCORE@[34; 35) "_" - WHITESPACE@[35; 36) " " - MATCH_GUARD@[36; 42) - IF_KW@[36; 38) "if" - WHITESPACE@[38; 39) " " - PATH_EXPR@[39; 42) - PATH@[39; 42) - PATH_SEGMENT@[39; 42) - NAME_REF@[39; 42) - IDENT@[39; 42) "foo" - WHITESPACE@[42; 43) " " - FAT_ARROW@[43; 45) "=>" - WHITESPACE@[45; 46) " " - TUPLE_EXPR@[46; 48) - L_PAREN@[46; 47) "(" - R_PAREN@[47; 48) ")" - COMMA@[48; 49) "," - WHITESPACE@[49; 54) "\n " - R_CURLY@[54; 55) "}" - WHITESPACE@[55; 56) "\n" - R_CURLY@[56; 57) "}" + BLOCK_EXPR@[9; 57) + BLOCK@[9; 57) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + MATCH_EXPR@[15; 55) + MATCH_KW@[15; 20) "match" + WHITESPACE@[20; 21) " " + TUPLE_EXPR@[21; 23) + L_PAREN@[21; 22) "(" + R_PAREN@[22; 23) ")" + WHITESPACE@[23; 24) " " + MATCH_ARM_LIST@[24; 55) + L_CURLY@[24; 25) "{" + WHITESPACE@[25; 34) "\n " + MATCH_ARM@[34; 48) + PLACEHOLDER_PAT@[34; 35) + UNDERSCORE@[34; 35) "_" + WHITESPACE@[35; 36) " " + MATCH_GUARD@[36; 42) + IF_KW@[36; 38) "if" + WHITESPACE@[38; 39) " " + PATH_EXPR@[39; 42) + PATH@[39; 42) + PATH_SEGMENT@[39; 42) + NAME_REF@[39; 42) + IDENT@[39; 42) "foo" + WHITESPACE@[42; 43) " " + FAT_ARROW@[43; 45) "=>" + WHITESPACE@[45; 46) " " + TUPLE_EXPR@[46; 48) + L_PAREN@[46; 47) "(" + R_PAREN@[47; 48) ")" + COMMA@[48; 49) "," + WHITESPACE@[49; 54) "\n " + R_CURLY@[54; 55) "}" + WHITESPACE@[55; 56) "\n" + R_CURLY@[56; 57) "}" WHITESPACE@[57; 58) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0120_match_arms_inner_attribute.txt b/crates/ra_syntax/test_data/parser/inline/ok/0120_match_arms_inner_attribute.txt index 17c296327..3bbeb62bc 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0120_match_arms_inner_attribute.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0120_match_arms_inner_attribute.txt @@ -8,67 +8,68 @@ SOURCE_FILE@[0; 139) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 138) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - MATCH_EXPR@[15; 136) - MATCH_KW@[15; 20) "match" - WHITESPACE@[20; 21) " " - TUPLE_EXPR@[21; 23) - L_PAREN@[21; 22) "(" - R_PAREN@[22; 23) ")" - WHITESPACE@[23; 24) " " - MATCH_ARM_LIST@[24; 136) - L_CURLY@[24; 25) "{" - WHITESPACE@[25; 34) "\n " - ATTR@[34; 60) - POUND@[34; 35) "#" - EXCL@[35; 36) "!" - TOKEN_TREE@[36; 60) - L_BRACK@[36; 37) "[" - IDENT@[37; 40) "doc" - TOKEN_TREE@[40; 59) - L_PAREN@[40; 41) "(" - STRING@[41; 58) "\"Inner attribute\"" - R_PAREN@[58; 59) ")" - R_BRACK@[59; 60) "]" - WHITESPACE@[60; 69) "\n " - ATTR@[69; 86) - POUND@[69; 70) "#" - EXCL@[70; 71) "!" - TOKEN_TREE@[71; 86) - L_BRACK@[71; 72) "[" - IDENT@[72; 75) "doc" - TOKEN_TREE@[75; 85) - L_PAREN@[75; 76) "(" - STRING@[76; 84) "\"Can be\"" - R_PAREN@[84; 85) ")" - R_BRACK@[85; 86) "]" - WHITESPACE@[86; 95) "\n " - ATTR@[95; 113) - POUND@[95; 96) "#" - EXCL@[96; 97) "!" - TOKEN_TREE@[97; 113) - L_BRACK@[97; 98) "[" - IDENT@[98; 101) "doc" - TOKEN_TREE@[101; 112) - L_PAREN@[101; 102) "(" - STRING@[102; 111) "\"Stacked\"" - R_PAREN@[111; 112) ")" - R_BRACK@[112; 113) "]" - WHITESPACE@[113; 122) "\n " - MATCH_ARM@[122; 129) - PLACEHOLDER_PAT@[122; 123) - UNDERSCORE@[122; 123) "_" - WHITESPACE@[123; 124) " " - FAT_ARROW@[124; 126) "=>" - WHITESPACE@[126; 127) " " - TUPLE_EXPR@[127; 129) - L_PAREN@[127; 128) "(" - R_PAREN@[128; 129) ")" - COMMA@[129; 130) "," - WHITESPACE@[130; 135) "\n " - R_CURLY@[135; 136) "}" - WHITESPACE@[136; 137) "\n" - R_CURLY@[137; 138) "}" + BLOCK_EXPR@[9; 138) + BLOCK@[9; 138) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + MATCH_EXPR@[15; 136) + MATCH_KW@[15; 20) "match" + WHITESPACE@[20; 21) " " + TUPLE_EXPR@[21; 23) + L_PAREN@[21; 22) "(" + R_PAREN@[22; 23) ")" + WHITESPACE@[23; 24) " " + MATCH_ARM_LIST@[24; 136) + L_CURLY@[24; 25) "{" + WHITESPACE@[25; 34) "\n " + ATTR@[34; 60) + POUND@[34; 35) "#" + EXCL@[35; 36) "!" + TOKEN_TREE@[36; 60) + L_BRACK@[36; 37) "[" + IDENT@[37; 40) "doc" + TOKEN_TREE@[40; 59) + L_PAREN@[40; 41) "(" + STRING@[41; 58) "\"Inner attribute\"" + R_PAREN@[58; 59) ")" + R_BRACK@[59; 60) "]" + WHITESPACE@[60; 69) "\n " + ATTR@[69; 86) + POUND@[69; 70) "#" + EXCL@[70; 71) "!" + TOKEN_TREE@[71; 86) + L_BRACK@[71; 72) "[" + IDENT@[72; 75) "doc" + TOKEN_TREE@[75; 85) + L_PAREN@[75; 76) "(" + STRING@[76; 84) "\"Can be\"" + R_PAREN@[84; 85) ")" + R_BRACK@[85; 86) "]" + WHITESPACE@[86; 95) "\n " + ATTR@[95; 113) + POUND@[95; 96) "#" + EXCL@[96; 97) "!" + TOKEN_TREE@[97; 113) + L_BRACK@[97; 98) "[" + IDENT@[98; 101) "doc" + TOKEN_TREE@[101; 112) + L_PAREN@[101; 102) "(" + STRING@[102; 111) "\"Stacked\"" + R_PAREN@[111; 112) ")" + R_BRACK@[112; 113) "]" + WHITESPACE@[113; 122) "\n " + MATCH_ARM@[122; 129) + PLACEHOLDER_PAT@[122; 123) + UNDERSCORE@[122; 123) "_" + WHITESPACE@[123; 124) " " + FAT_ARROW@[124; 126) "=>" + WHITESPACE@[126; 127) " " + TUPLE_EXPR@[127; 129) + L_PAREN@[127; 128) "(" + R_PAREN@[128; 129) ")" + COMMA@[129; 130) "," + WHITESPACE@[130; 135) "\n " + R_CURLY@[135; 136) "}" + WHITESPACE@[136; 137) "\n" + R_CURLY@[137; 138) "}" WHITESPACE@[138; 139) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0121_match_arms_outer_attributes.txt b/crates/ra_syntax/test_data/parser/inline/ok/0121_match_arms_outer_attributes.txt index 9c238e869..5fd0adfc2 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0121_match_arms_outer_attributes.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0121_match_arms_outer_attributes.txt @@ -8,128 +8,129 @@ SOURCE_FILE@[0; 259) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 258) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - MATCH_EXPR@[15; 256) - MATCH_KW@[15; 20) "match" - WHITESPACE@[20; 21) " " - TUPLE_EXPR@[21; 23) - L_PAREN@[21; 22) "(" - R_PAREN@[22; 23) ")" - WHITESPACE@[23; 24) " " - MATCH_ARM_LIST@[24; 256) - L_CURLY@[24; 25) "{" - WHITESPACE@[25; 34) "\n " - MATCH_ARM@[34; 74) - ATTR@[34; 58) - POUND@[34; 35) "#" - TOKEN_TREE@[35; 58) - L_BRACK@[35; 36) "[" - IDENT@[36; 39) "cfg" - TOKEN_TREE@[39; 57) - L_PAREN@[39; 40) "(" - IDENT@[40; 47) "feature" - WHITESPACE@[47; 48) " " - EQ@[48; 49) "=" - WHITESPACE@[49; 50) " " - STRING@[50; 56) "\"some\"" - R_PAREN@[56; 57) ")" - R_BRACK@[57; 58) "]" - WHITESPACE@[58; 67) "\n " - PLACEHOLDER_PAT@[67; 68) - UNDERSCORE@[67; 68) "_" - WHITESPACE@[68; 69) " " - FAT_ARROW@[69; 71) "=>" - WHITESPACE@[71; 72) " " - TUPLE_EXPR@[72; 74) - L_PAREN@[72; 73) "(" - R_PAREN@[73; 74) ")" - COMMA@[74; 75) "," - WHITESPACE@[75; 84) "\n " - MATCH_ARM@[84; 125) - ATTR@[84; 109) - POUND@[84; 85) "#" - TOKEN_TREE@[85; 109) - L_BRACK@[85; 86) "[" - IDENT@[86; 89) "cfg" - TOKEN_TREE@[89; 108) - L_PAREN@[89; 90) "(" - IDENT@[90; 97) "feature" - WHITESPACE@[97; 98) " " - EQ@[98; 99) "=" - WHITESPACE@[99; 100) " " - STRING@[100; 107) "\"other\"" - R_PAREN@[107; 108) ")" - R_BRACK@[108; 109) "]" - WHITESPACE@[109; 118) "\n " - PLACEHOLDER_PAT@[118; 119) - UNDERSCORE@[118; 119) "_" - WHITESPACE@[119; 120) " " - FAT_ARROW@[120; 122) "=>" - WHITESPACE@[122; 123) " " - TUPLE_EXPR@[123; 125) - L_PAREN@[123; 124) "(" - R_PAREN@[124; 125) ")" - COMMA@[125; 126) "," - WHITESPACE@[126; 135) "\n " - MATCH_ARM@[135; 249) - ATTR@[135; 159) - POUND@[135; 136) "#" - TOKEN_TREE@[136; 159) - L_BRACK@[136; 137) "[" - IDENT@[137; 140) "cfg" - TOKEN_TREE@[140; 158) - L_PAREN@[140; 141) "(" - IDENT@[141; 148) "feature" - WHITESPACE@[148; 149) " " - EQ@[149; 150) "=" - WHITESPACE@[150; 151) " " - STRING@[151; 157) "\"many\"" - R_PAREN@[157; 158) ")" - R_BRACK@[158; 159) "]" - WHITESPACE@[159; 168) "\n " - ATTR@[168; 198) - POUND@[168; 169) "#" - TOKEN_TREE@[169; 198) - L_BRACK@[169; 170) "[" - IDENT@[170; 173) "cfg" - TOKEN_TREE@[173; 197) - L_PAREN@[173; 174) "(" - IDENT@[174; 181) "feature" - WHITESPACE@[181; 182) " " - EQ@[182; 183) "=" - WHITESPACE@[183; 184) " " - STRING@[184; 196) "\"attributes\"" - R_PAREN@[196; 197) ")" - R_BRACK@[197; 198) "]" - WHITESPACE@[198; 207) "\n " - ATTR@[207; 233) - POUND@[207; 208) "#" - TOKEN_TREE@[208; 233) - L_BRACK@[208; 209) "[" - IDENT@[209; 212) "cfg" - TOKEN_TREE@[212; 232) - L_PAREN@[212; 213) "(" - IDENT@[213; 220) "feature" - WHITESPACE@[220; 221) " " - EQ@[221; 222) "=" - WHITESPACE@[222; 223) " " - STRING@[223; 231) "\"before\"" - R_PAREN@[231; 232) ")" - R_BRACK@[232; 233) "]" - WHITESPACE@[233; 242) "\n " - PLACEHOLDER_PAT@[242; 243) - UNDERSCORE@[242; 243) "_" - WHITESPACE@[243; 244) " " - FAT_ARROW@[244; 246) "=>" - WHITESPACE@[246; 247) " " - TUPLE_EXPR@[247; 249) - L_PAREN@[247; 248) "(" - R_PAREN@[248; 249) ")" - COMMA@[249; 250) "," - WHITESPACE@[250; 255) "\n " - R_CURLY@[255; 256) "}" - WHITESPACE@[256; 257) "\n" - R_CURLY@[257; 258) "}" + BLOCK_EXPR@[9; 258) + BLOCK@[9; 258) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + MATCH_EXPR@[15; 256) + MATCH_KW@[15; 20) "match" + WHITESPACE@[20; 21) " " + TUPLE_EXPR@[21; 23) + L_PAREN@[21; 22) "(" + R_PAREN@[22; 23) ")" + WHITESPACE@[23; 24) " " + MATCH_ARM_LIST@[24; 256) + L_CURLY@[24; 25) "{" + WHITESPACE@[25; 34) "\n " + MATCH_ARM@[34; 74) + ATTR@[34; 58) + POUND@[34; 35) "#" + TOKEN_TREE@[35; 58) + L_BRACK@[35; 36) "[" + IDENT@[36; 39) "cfg" + TOKEN_TREE@[39; 57) + L_PAREN@[39; 40) "(" + IDENT@[40; 47) "feature" + WHITESPACE@[47; 48) " " + EQ@[48; 49) "=" + WHITESPACE@[49; 50) " " + STRING@[50; 56) "\"some\"" + R_PAREN@[56; 57) ")" + R_BRACK@[57; 58) "]" + WHITESPACE@[58; 67) "\n " + PLACEHOLDER_PAT@[67; 68) + UNDERSCORE@[67; 68) "_" + WHITESPACE@[68; 69) " " + FAT_ARROW@[69; 71) "=>" + WHITESPACE@[71; 72) " " + TUPLE_EXPR@[72; 74) + L_PAREN@[72; 73) "(" + R_PAREN@[73; 74) ")" + COMMA@[74; 75) "," + WHITESPACE@[75; 84) "\n " + MATCH_ARM@[84; 125) + ATTR@[84; 109) + POUND@[84; 85) "#" + TOKEN_TREE@[85; 109) + L_BRACK@[85; 86) "[" + IDENT@[86; 89) "cfg" + TOKEN_TREE@[89; 108) + L_PAREN@[89; 90) "(" + IDENT@[90; 97) "feature" + WHITESPACE@[97; 98) " " + EQ@[98; 99) "=" + WHITESPACE@[99; 100) " " + STRING@[100; 107) "\"other\"" + R_PAREN@[107; 108) ")" + R_BRACK@[108; 109) "]" + WHITESPACE@[109; 118) "\n " + PLACEHOLDER_PAT@[118; 119) + UNDERSCORE@[118; 119) "_" + WHITESPACE@[119; 120) " " + FAT_ARROW@[120; 122) "=>" + WHITESPACE@[122; 123) " " + TUPLE_EXPR@[123; 125) + L_PAREN@[123; 124) "(" + R_PAREN@[124; 125) ")" + COMMA@[125; 126) "," + WHITESPACE@[126; 135) "\n " + MATCH_ARM@[135; 249) + ATTR@[135; 159) + POUND@[135; 136) "#" + TOKEN_TREE@[136; 159) + L_BRACK@[136; 137) "[" + IDENT@[137; 140) "cfg" + TOKEN_TREE@[140; 158) + L_PAREN@[140; 141) "(" + IDENT@[141; 148) "feature" + WHITESPACE@[148; 149) " " + EQ@[149; 150) "=" + WHITESPACE@[150; 151) " " + STRING@[151; 157) "\"many\"" + R_PAREN@[157; 158) ")" + R_BRACK@[158; 159) "]" + WHITESPACE@[159; 168) "\n " + ATTR@[168; 198) + POUND@[168; 169) "#" + TOKEN_TREE@[169; 198) + L_BRACK@[169; 170) "[" + IDENT@[170; 173) "cfg" + TOKEN_TREE@[173; 197) + L_PAREN@[173; 174) "(" + IDENT@[174; 181) "feature" + WHITESPACE@[181; 182) " " + EQ@[182; 183) "=" + WHITESPACE@[183; 184) " " + STRING@[184; 196) "\"attributes\"" + R_PAREN@[196; 197) ")" + R_BRACK@[197; 198) "]" + WHITESPACE@[198; 207) "\n " + ATTR@[207; 233) + POUND@[207; 208) "#" + TOKEN_TREE@[208; 233) + L_BRACK@[208; 209) "[" + IDENT@[209; 212) "cfg" + TOKEN_TREE@[212; 232) + L_PAREN@[212; 213) "(" + IDENT@[213; 220) "feature" + WHITESPACE@[220; 221) " " + EQ@[221; 222) "=" + WHITESPACE@[222; 223) " " + STRING@[223; 231) "\"before\"" + R_PAREN@[231; 232) ")" + R_BRACK@[232; 233) "]" + WHITESPACE@[233; 242) "\n " + PLACEHOLDER_PAT@[242; 243) + UNDERSCORE@[242; 243) "_" + WHITESPACE@[243; 244) " " + FAT_ARROW@[244; 246) "=>" + WHITESPACE@[246; 247) " " + TUPLE_EXPR@[247; 249) + L_PAREN@[247; 248) "(" + R_PAREN@[248; 249) ")" + COMMA@[249; 250) "," + WHITESPACE@[250; 255) "\n " + R_CURLY@[255; 256) "}" + WHITESPACE@[256; 257) "\n" + R_CURLY@[257; 258) "}" WHITESPACE@[258; 259) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0122_generic_lifetime_type_attribute.txt b/crates/ra_syntax/test_data/parser/inline/ok/0122_generic_lifetime_type_attribute.txt index a45995236..bc7b68b90 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0122_generic_lifetime_type_attribute.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0122_generic_lifetime_type_attribute.txt @@ -54,8 +54,9 @@ SOURCE_FILE@[0; 64) IDENT@[57; 58) "T" R_PAREN@[58; 59) ")" WHITESPACE@[59; 60) " " - BLOCK@[60; 63) - L_CURLY@[60; 61) "{" - WHITESPACE@[61; 62) "\n" - R_CURLY@[62; 63) "}" + BLOCK_EXPR@[60; 63) + BLOCK@[60; 63) + L_CURLY@[60; 61) "{" + WHITESPACE@[61; 62) "\n" + R_CURLY@[62; 63) "}" WHITESPACE@[63; 64) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0124_async_fn.txt b/crates/ra_syntax/test_data/parser/inline/ok/0124_async_fn.txt index f0610e781..9c4bd7f11 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0124_async_fn.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0124_async_fn.txt @@ -10,7 +10,8 @@ SOURCE_FILE@[0; 18) L_PAREN@[12; 13) "(" R_PAREN@[13; 14) ")" WHITESPACE@[14; 15) " " - BLOCK@[15; 17) - L_CURLY@[15; 16) "{" - R_CURLY@[16; 17) "}" + BLOCK_EXPR@[15; 17) + BLOCK@[15; 17) + L_CURLY@[15; 16) "{" + R_CURLY@[16; 17) "}" WHITESPACE@[17; 18) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0125_crate_keyword_path.txt b/crates/ra_syntax/test_data/parser/inline/ok/0125_crate_keyword_path.txt index 4afe9c555..6a9f3bf72 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0125_crate_keyword_path.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0125_crate_keyword_path.txt @@ -8,24 +8,25 @@ SOURCE_FILE@[0; 27) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 26) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 11) " " - EXPR_STMT@[11; 24) - CALL_EXPR@[11; 23) - PATH_EXPR@[11; 21) - PATH@[11; 21) - PATH@[11; 16) - PATH_SEGMENT@[11; 16) - CRATE_KW@[11; 16) "crate" - COLONCOLON@[16; 18) "::" - PATH_SEGMENT@[18; 21) - NAME_REF@[18; 21) - IDENT@[18; 21) "foo" - ARG_LIST@[21; 23) - L_PAREN@[21; 22) "(" - R_PAREN@[22; 23) ")" - SEMI@[23; 24) ";" - WHITESPACE@[24; 25) " " - R_CURLY@[25; 26) "}" + BLOCK_EXPR@[9; 26) + BLOCK@[9; 26) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 11) " " + EXPR_STMT@[11; 24) + CALL_EXPR@[11; 23) + PATH_EXPR@[11; 21) + PATH@[11; 21) + PATH@[11; 16) + PATH_SEGMENT@[11; 16) + CRATE_KW@[11; 16) "crate" + COLONCOLON@[16; 18) "::" + PATH_SEGMENT@[18; 21) + NAME_REF@[18; 21) + IDENT@[18; 21) "foo" + ARG_LIST@[21; 23) + L_PAREN@[21; 22) "(" + R_PAREN@[22; 23) ")" + SEMI@[23; 24) ";" + WHITESPACE@[24; 25) " " + R_CURLY@[25; 26) "}" WHITESPACE@[26; 27) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0125_record_literal_field_with_attr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0125_record_literal_field_with_attr.txt index 8fdf3756f..37cc438d9 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0125_record_literal_field_with_attr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0125_record_literal_field_with_attr.txt @@ -8,38 +8,39 @@ SOURCE_FILE@[0; 46) L_PAREN@[7; 8) "(" R_PAREN@[8; 9) ")" WHITESPACE@[9; 10) " " - BLOCK@[10; 45) - L_CURLY@[10; 11) "{" - WHITESPACE@[11; 16) "\n " - RECORD_LIT@[16; 43) - PATH@[16; 17) - PATH_SEGMENT@[16; 17) - NAME_REF@[16; 17) - IDENT@[16; 17) "S" - WHITESPACE@[17; 18) " " - RECORD_FIELD_LIST@[18; 43) - L_CURLY@[18; 19) "{" - WHITESPACE@[19; 20) " " - RECORD_FIELD@[20; 41) - ATTR@[20; 32) - POUND@[20; 21) "#" - TOKEN_TREE@[21; 32) - L_BRACK@[21; 22) "[" - IDENT@[22; 25) "cfg" - TOKEN_TREE@[25; 31) - L_PAREN@[25; 26) "(" - IDENT@[26; 30) "test" - R_PAREN@[30; 31) ")" - R_BRACK@[31; 32) "]" - WHITESPACE@[32; 33) " " - NAME_REF@[33; 38) - IDENT@[33; 38) "field" - COLON@[38; 39) ":" - WHITESPACE@[39; 40) " " - LITERAL@[40; 41) - INT_NUMBER@[40; 41) "1" - WHITESPACE@[41; 42) " " - R_CURLY@[42; 43) "}" - WHITESPACE@[43; 44) "\n" - R_CURLY@[44; 45) "}" + BLOCK_EXPR@[10; 45) + BLOCK@[10; 45) + L_CURLY@[10; 11) "{" + WHITESPACE@[11; 16) "\n " + RECORD_LIT@[16; 43) + PATH@[16; 17) + PATH_SEGMENT@[16; 17) + NAME_REF@[16; 17) + IDENT@[16; 17) "S" + WHITESPACE@[17; 18) " " + RECORD_FIELD_LIST@[18; 43) + L_CURLY@[18; 19) "{" + WHITESPACE@[19; 20) " " + RECORD_FIELD@[20; 41) + ATTR@[20; 32) + POUND@[20; 21) "#" + TOKEN_TREE@[21; 32) + L_BRACK@[21; 22) "[" + IDENT@[22; 25) "cfg" + TOKEN_TREE@[25; 31) + L_PAREN@[25; 26) "(" + IDENT@[26; 30) "test" + R_PAREN@[30; 31) ")" + R_BRACK@[31; 32) "]" + WHITESPACE@[32; 33) " " + NAME_REF@[33; 38) + IDENT@[33; 38) "field" + COLON@[38; 39) ":" + WHITESPACE@[39; 40) " " + LITERAL@[40; 41) + INT_NUMBER@[40; 41) "1" + WHITESPACE@[41; 42) " " + R_CURLY@[42; 43) "}" + WHITESPACE@[43; 44) "\n" + R_CURLY@[44; 45) "}" WHITESPACE@[45; 46) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0126_attr_on_expr_stmt.txt b/crates/ra_syntax/test_data/parser/inline/ok/0126_attr_on_expr_stmt.txt index c15c7573a..6bc0db077 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0126_attr_on_expr_stmt.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0126_attr_on_expr_stmt.txt @@ -8,81 +8,82 @@ SOURCE_FILE@[0; 82) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 81) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 26) - ATTR@[15; 19) - POUND@[15; 16) "#" - TOKEN_TREE@[16; 19) - L_BRACK@[16; 17) "[" - IDENT@[17; 18) "A" - R_BRACK@[18; 19) "]" - WHITESPACE@[19; 20) " " - CALL_EXPR@[20; 25) - PATH_EXPR@[20; 23) - PATH@[20; 23) - PATH_SEGMENT@[20; 23) - NAME_REF@[20; 23) - IDENT@[20; 23) "foo" - ARG_LIST@[23; 25) - L_PAREN@[23; 24) "(" - R_PAREN@[24; 25) ")" - SEMI@[25; 26) ";" - WHITESPACE@[26; 31) "\n " - EXPR_STMT@[31; 42) - ATTR@[31; 35) - POUND@[31; 32) "#" - TOKEN_TREE@[32; 35) - L_BRACK@[32; 33) "[" - IDENT@[33; 34) "B" - R_BRACK@[34; 35) "]" - WHITESPACE@[35; 36) " " - MACRO_CALL@[36; 42) - PATH@[36; 39) - PATH_SEGMENT@[36; 39) - NAME_REF@[36; 39) - IDENT@[36; 39) "bar" - EXCL@[39; 40) "!" - TOKEN_TREE@[40; 42) - L_CURLY@[40; 41) "{" - R_CURLY@[41; 42) "}" - WHITESPACE@[42; 47) "\n " - EXPR_STMT@[47; 59) - ATTR@[47; 51) - POUND@[47; 48) "#" - TOKEN_TREE@[48; 51) - L_BRACK@[48; 49) "[" - IDENT@[49; 50) "C" - R_BRACK@[50; 51) "]" - WHITESPACE@[51; 52) " " - ATTR@[52; 56) - POUND@[52; 53) "#" - TOKEN_TREE@[53; 56) - L_BRACK@[53; 54) "[" - IDENT@[54; 55) "D" - R_BRACK@[55; 56) "]" - WHITESPACE@[56; 57) " " - BLOCK_EXPR@[57; 59) - BLOCK@[57; 59) - L_CURLY@[57; 58) "{" - R_CURLY@[58; 59) "}" - WHITESPACE@[59; 64) "\n " - EXPR_STMT@[64; 79) - ATTR@[64; 68) - POUND@[64; 65) "#" - TOKEN_TREE@[65; 68) - L_BRACK@[65; 66) "[" - IDENT@[66; 67) "D" - R_BRACK@[67; 68) "]" - WHITESPACE@[68; 69) " " - RETURN_EXPR@[69; 78) - RETURN_KW@[69; 75) "return" - WHITESPACE@[75; 76) " " - TUPLE_EXPR@[76; 78) - L_PAREN@[76; 77) "(" - R_PAREN@[77; 78) ")" - SEMI@[78; 79) ";" - WHITESPACE@[79; 80) "\n" - R_CURLY@[80; 81) "}" + BLOCK_EXPR@[9; 81) + BLOCK@[9; 81) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 26) + ATTR@[15; 19) + POUND@[15; 16) "#" + TOKEN_TREE@[16; 19) + L_BRACK@[16; 17) "[" + IDENT@[17; 18) "A" + R_BRACK@[18; 19) "]" + WHITESPACE@[19; 20) " " + CALL_EXPR@[20; 25) + PATH_EXPR@[20; 23) + PATH@[20; 23) + PATH_SEGMENT@[20; 23) + NAME_REF@[20; 23) + IDENT@[20; 23) "foo" + ARG_LIST@[23; 25) + L_PAREN@[23; 24) "(" + R_PAREN@[24; 25) ")" + SEMI@[25; 26) ";" + WHITESPACE@[26; 31) "\n " + EXPR_STMT@[31; 42) + ATTR@[31; 35) + POUND@[31; 32) "#" + TOKEN_TREE@[32; 35) + L_BRACK@[32; 33) "[" + IDENT@[33; 34) "B" + R_BRACK@[34; 35) "]" + WHITESPACE@[35; 36) " " + MACRO_CALL@[36; 42) + PATH@[36; 39) + PATH_SEGMENT@[36; 39) + NAME_REF@[36; 39) + IDENT@[36; 39) "bar" + EXCL@[39; 40) "!" + TOKEN_TREE@[40; 42) + L_CURLY@[40; 41) "{" + R_CURLY@[41; 42) "}" + WHITESPACE@[42; 47) "\n " + EXPR_STMT@[47; 59) + ATTR@[47; 51) + POUND@[47; 48) "#" + TOKEN_TREE@[48; 51) + L_BRACK@[48; 49) "[" + IDENT@[49; 50) "C" + R_BRACK@[50; 51) "]" + WHITESPACE@[51; 52) " " + ATTR@[52; 56) + POUND@[52; 53) "#" + TOKEN_TREE@[53; 56) + L_BRACK@[53; 54) "[" + IDENT@[54; 55) "D" + R_BRACK@[55; 56) "]" + WHITESPACE@[56; 57) " " + BLOCK_EXPR@[57; 59) + BLOCK@[57; 59) + L_CURLY@[57; 58) "{" + R_CURLY@[58; 59) "}" + WHITESPACE@[59; 64) "\n " + EXPR_STMT@[64; 79) + ATTR@[64; 68) + POUND@[64; 65) "#" + TOKEN_TREE@[65; 68) + L_BRACK@[65; 66) "[" + IDENT@[66; 67) "D" + R_BRACK@[67; 68) "]" + WHITESPACE@[68; 69) " " + RETURN_EXPR@[69; 78) + RETURN_KW@[69; 75) "return" + WHITESPACE@[75; 76) " " + TUPLE_EXPR@[76; 78) + L_PAREN@[76; 77) "(" + R_PAREN@[77; 78) ")" + SEMI@[78; 79) ";" + WHITESPACE@[79; 80) "\n" + R_CURLY@[80; 81) "}" WHITESPACE@[81; 82) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0127_attr_on_last_expr_in_block.txt b/crates/ra_syntax/test_data/parser/inline/ok/0127_attr_on_last_expr_in_block.txt index 62a6a7bc0..c201196ec 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0127_attr_on_last_expr_in_block.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0127_attr_on_last_expr_in_block.txt @@ -8,47 +8,48 @@ SOURCE_FILE@[0; 47) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 46) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 31) - BLOCK_EXPR@[15; 31) - BLOCK@[15; 31) - L_CURLY@[15; 16) "{" - WHITESPACE@[16; 17) " " - TRY_EXPR@[17; 29) - ATTR@[17; 21) - POUND@[17; 18) "#" - TOKEN_TREE@[18; 21) - L_BRACK@[18; 19) "[" - IDENT@[19; 20) "A" - R_BRACK@[20; 21) "]" - WHITESPACE@[21; 22) " " - MACRO_CALL@[22; 28) - PATH@[22; 25) - PATH_SEGMENT@[22; 25) - NAME_REF@[22; 25) - IDENT@[22; 25) "bar" - EXCL@[25; 26) "!" - TOKEN_TREE@[26; 28) - L_PAREN@[26; 27) "(" - R_PAREN@[27; 28) ")" - QUESTION@[28; 29) "?" - WHITESPACE@[29; 30) " " - R_CURLY@[30; 31) "}" - WHITESPACE@[31; 36) "\n " - REF_EXPR@[36; 44) - ATTR@[36; 40) - POUND@[36; 37) "#" - TOKEN_TREE@[37; 40) - L_BRACK@[37; 38) "[" - IDENT@[38; 39) "B" - R_BRACK@[39; 40) "]" - WHITESPACE@[40; 41) " " - AMP@[41; 42) "&" - TUPLE_EXPR@[42; 44) - L_PAREN@[42; 43) "(" - R_PAREN@[43; 44) ")" - WHITESPACE@[44; 45) "\n" - R_CURLY@[45; 46) "}" + BLOCK_EXPR@[9; 46) + BLOCK@[9; 46) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 31) + BLOCK_EXPR@[15; 31) + BLOCK@[15; 31) + L_CURLY@[15; 16) "{" + WHITESPACE@[16; 17) " " + TRY_EXPR@[17; 29) + ATTR@[17; 21) + POUND@[17; 18) "#" + TOKEN_TREE@[18; 21) + L_BRACK@[18; 19) "[" + IDENT@[19; 20) "A" + R_BRACK@[20; 21) "]" + WHITESPACE@[21; 22) " " + MACRO_CALL@[22; 28) + PATH@[22; 25) + PATH_SEGMENT@[22; 25) + NAME_REF@[22; 25) + IDENT@[22; 25) "bar" + EXCL@[25; 26) "!" + TOKEN_TREE@[26; 28) + L_PAREN@[26; 27) "(" + R_PAREN@[27; 28) ")" + QUESTION@[28; 29) "?" + WHITESPACE@[29; 30) " " + R_CURLY@[30; 31) "}" + WHITESPACE@[31; 36) "\n " + REF_EXPR@[36; 44) + ATTR@[36; 40) + POUND@[36; 37) "#" + TOKEN_TREE@[37; 40) + L_BRACK@[37; 38) "[" + IDENT@[38; 39) "B" + R_BRACK@[39; 40) "]" + WHITESPACE@[40; 41) " " + AMP@[41; 42) "&" + TUPLE_EXPR@[42; 44) + L_PAREN@[42; 43) "(" + R_PAREN@[43; 44) ")" + WHITESPACE@[44; 45) "\n" + R_CURLY@[45; 46) "}" WHITESPACE@[46; 47) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0128_combined_fns.txt b/crates/ra_syntax/test_data/parser/inline/ok/0128_combined_fns.txt index 2a16aeb61..cae75c41d 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0128_combined_fns.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0128_combined_fns.txt @@ -12,9 +12,10 @@ SOURCE_FILE@[0; 50) L_PAREN@[19; 20) "(" R_PAREN@[20; 21) ")" WHITESPACE@[21; 22) " " - BLOCK@[22; 24) - L_CURLY@[22; 23) "{" - R_CURLY@[23; 24) "}" + BLOCK_EXPR@[22; 24) + BLOCK@[22; 24) + L_CURLY@[22; 23) "{" + R_CURLY@[23; 24) "}" WHITESPACE@[24; 25) "\n" FN_DEF@[25; 49) CONST_KW@[25; 30) "const" @@ -29,7 +30,8 @@ SOURCE_FILE@[0; 50) L_PAREN@[44; 45) "(" R_PAREN@[45; 46) ")" WHITESPACE@[46; 47) " " - BLOCK@[47; 49) - L_CURLY@[47; 48) "{" - R_CURLY@[48; 49) "}" + BLOCK_EXPR@[47; 49) + BLOCK@[47; 49) + L_CURLY@[47; 48) "{" + R_CURLY@[48; 49) "}" WHITESPACE@[49; 50) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0129_marco_pat.txt b/crates/ra_syntax/test_data/parser/inline/ok/0129_marco_pat.txt index 50b4ab2e7..4a714ad6b 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0129_marco_pat.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0129_marco_pat.txt @@ -8,29 +8,30 @@ SOURCE_FILE@[0; 33) L_PAREN@[7; 8) "(" R_PAREN@[8; 9) ")" WHITESPACE@[9; 10) " " - BLOCK@[10; 32) - L_CURLY@[10; 11) "{" - WHITESPACE@[11; 16) "\n " - LET_STMT@[16; 30) - LET_KW@[16; 19) "let" - WHITESPACE@[19; 20) " " - MACRO_CALL@[20; 25) - PATH_PAT@[20; 21) - PATH@[20; 21) - PATH_SEGMENT@[20; 21) - NAME_REF@[20; 21) - IDENT@[20; 21) "m" - EXCL@[21; 22) "!" - TOKEN_TREE@[22; 25) - L_PAREN@[22; 23) "(" - IDENT@[23; 24) "x" - R_PAREN@[24; 25) ")" - WHITESPACE@[25; 26) " " - EQ@[26; 27) "=" - WHITESPACE@[27; 28) " " - LITERAL@[28; 29) - INT_NUMBER@[28; 29) "0" - SEMI@[29; 30) ";" - WHITESPACE@[30; 31) "\n" - R_CURLY@[31; 32) "}" + BLOCK_EXPR@[10; 32) + BLOCK@[10; 32) + L_CURLY@[10; 11) "{" + WHITESPACE@[11; 16) "\n " + LET_STMT@[16; 30) + LET_KW@[16; 19) "let" + WHITESPACE@[19; 20) " " + MACRO_CALL@[20; 25) + PATH_PAT@[20; 21) + PATH@[20; 21) + PATH_SEGMENT@[20; 21) + NAME_REF@[20; 21) + IDENT@[20; 21) "m" + EXCL@[21; 22) "!" + TOKEN_TREE@[22; 25) + L_PAREN@[22; 23) "(" + IDENT@[23; 24) "x" + R_PAREN@[24; 25) ")" + WHITESPACE@[25; 26) " " + EQ@[26; 27) "=" + WHITESPACE@[27; 28) " " + LITERAL@[28; 29) + INT_NUMBER@[28; 29) "0" + SEMI@[29; 30) ";" + WHITESPACE@[30; 31) "\n" + R_CURLY@[31; 32) "}" WHITESPACE@[32; 33) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0130_let_stmt.txt b/crates/ra_syntax/test_data/parser/inline/ok/0130_let_stmt.txt index 82c1eb009..97166cfd5 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0130_let_stmt.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0130_let_stmt.txt @@ -8,94 +8,95 @@ SOURCE_FILE@[0; 110) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 109) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - LET_STMT@[15; 21) - LET_KW@[15; 18) "let" - WHITESPACE@[18; 19) " " - BIND_PAT@[19; 20) - NAME@[19; 20) - IDENT@[19; 20) "a" - SEMI@[20; 21) ";" - WHITESPACE@[21; 26) "\n " - LET_STMT@[26; 37) - LET_KW@[26; 29) "let" - WHITESPACE@[29; 30) " " - BIND_PAT@[30; 31) - NAME@[30; 31) - IDENT@[30; 31) "b" - COLON@[31; 32) ":" - WHITESPACE@[32; 33) " " - PATH_TYPE@[33; 36) - PATH@[33; 36) - PATH_SEGMENT@[33; 36) - NAME_REF@[33; 36) - IDENT@[33; 36) "i32" - SEMI@[36; 37) ";" - WHITESPACE@[37; 42) "\n " - LET_STMT@[42; 53) - LET_KW@[42; 45) "let" - WHITESPACE@[45; 46) " " - BIND_PAT@[46; 47) - NAME@[46; 47) - IDENT@[46; 47) "c" - WHITESPACE@[47; 48) " " - EQ@[48; 49) "=" - WHITESPACE@[49; 50) " " - LITERAL@[50; 52) - INT_NUMBER@[50; 52) "92" - SEMI@[52; 53) ";" - WHITESPACE@[53; 58) "\n " - LET_STMT@[58; 74) - LET_KW@[58; 61) "let" - WHITESPACE@[61; 62) " " - BIND_PAT@[62; 63) - NAME@[62; 63) - IDENT@[62; 63) "d" - COLON@[63; 64) ":" - WHITESPACE@[64; 65) " " - PATH_TYPE@[65; 68) - PATH@[65; 68) - PATH_SEGMENT@[65; 68) - NAME_REF@[65; 68) - IDENT@[65; 68) "i32" - WHITESPACE@[68; 69) " " - EQ@[69; 70) "=" - WHITESPACE@[70; 71) " " - LITERAL@[71; 73) - INT_NUMBER@[71; 73) "92" - SEMI@[73; 74) ";" - WHITESPACE@[74; 79) "\n " - LET_STMT@[79; 88) - LET_KW@[79; 82) "let" - WHITESPACE@[82; 83) " " - BIND_PAT@[83; 84) - NAME@[83; 84) - IDENT@[83; 84) "e" - COLON@[84; 85) ":" - WHITESPACE@[85; 86) " " - NEVER_TYPE@[86; 87) - EXCL@[86; 87) "!" - SEMI@[87; 88) ";" - WHITESPACE@[88; 93) "\n " - LET_STMT@[93; 107) - LET_KW@[93; 96) "let" - WHITESPACE@[96; 97) " " - PLACEHOLDER_PAT@[97; 98) - UNDERSCORE@[97; 98) "_" - COLON@[98; 99) ":" - WHITESPACE@[99; 100) " " - NEVER_TYPE@[100; 101) - EXCL@[100; 101) "!" - WHITESPACE@[101; 102) " " - EQ@[102; 103) "=" - WHITESPACE@[103; 104) " " - BLOCK_EXPR@[104; 106) - BLOCK@[104; 106) - L_CURLY@[104; 105) "{" - R_CURLY@[105; 106) "}" - SEMI@[106; 107) ";" - WHITESPACE@[107; 108) "\n" - R_CURLY@[108; 109) "}" + BLOCK_EXPR@[9; 109) + BLOCK@[9; 109) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + LET_STMT@[15; 21) + LET_KW@[15; 18) "let" + WHITESPACE@[18; 19) " " + BIND_PAT@[19; 20) + NAME@[19; 20) + IDENT@[19; 20) "a" + SEMI@[20; 21) ";" + WHITESPACE@[21; 26) "\n " + LET_STMT@[26; 37) + LET_KW@[26; 29) "let" + WHITESPACE@[29; 30) " " + BIND_PAT@[30; 31) + NAME@[30; 31) + IDENT@[30; 31) "b" + COLON@[31; 32) ":" + WHITESPACE@[32; 33) " " + PATH_TYPE@[33; 36) + PATH@[33; 36) + PATH_SEGMENT@[33; 36) + NAME_REF@[33; 36) + IDENT@[33; 36) "i32" + SEMI@[36; 37) ";" + WHITESPACE@[37; 42) "\n " + LET_STMT@[42; 53) + LET_KW@[42; 45) "let" + WHITESPACE@[45; 46) " " + BIND_PAT@[46; 47) + NAME@[46; 47) + IDENT@[46; 47) "c" + WHITESPACE@[47; 48) " " + EQ@[48; 49) "=" + WHITESPACE@[49; 50) " " + LITERAL@[50; 52) + INT_NUMBER@[50; 52) "92" + SEMI@[52; 53) ";" + WHITESPACE@[53; 58) "\n " + LET_STMT@[58; 74) + LET_KW@[58; 61) "let" + WHITESPACE@[61; 62) " " + BIND_PAT@[62; 63) + NAME@[62; 63) + IDENT@[62; 63) "d" + COLON@[63; 64) ":" + WHITESPACE@[64; 65) " " + PATH_TYPE@[65; 68) + PATH@[65; 68) + PATH_SEGMENT@[65; 68) + NAME_REF@[65; 68) + IDENT@[65; 68) "i32" + WHITESPACE@[68; 69) " " + EQ@[69; 70) "=" + WHITESPACE@[70; 71) " " + LITERAL@[71; 73) + INT_NUMBER@[71; 73) "92" + SEMI@[73; 74) ";" + WHITESPACE@[74; 79) "\n " + LET_STMT@[79; 88) + LET_KW@[79; 82) "let" + WHITESPACE@[82; 83) " " + BIND_PAT@[83; 84) + NAME@[83; 84) + IDENT@[83; 84) "e" + COLON@[84; 85) ":" + WHITESPACE@[85; 86) " " + NEVER_TYPE@[86; 87) + EXCL@[86; 87) "!" + SEMI@[87; 88) ";" + WHITESPACE@[88; 93) "\n " + LET_STMT@[93; 107) + LET_KW@[93; 96) "let" + WHITESPACE@[96; 97) " " + PLACEHOLDER_PAT@[97; 98) + UNDERSCORE@[97; 98) "_" + COLON@[98; 99) ":" + WHITESPACE@[99; 100) " " + NEVER_TYPE@[100; 101) + EXCL@[100; 101) "!" + WHITESPACE@[101; 102) " " + EQ@[102; 103) "=" + WHITESPACE@[103; 104) " " + BLOCK_EXPR@[104; 106) + BLOCK@[104; 106) + L_CURLY@[104; 105) "{" + R_CURLY@[105; 106) "}" + SEMI@[106; 107) ";" + WHITESPACE@[107; 108) "\n" + R_CURLY@[108; 109) "}" WHITESPACE@[109; 110) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0130_try_block_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0130_try_block_expr.txt index 53f49b9b5..d6df1aba2 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0130_try_block_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0130_try_block_expr.txt @@ -8,24 +8,26 @@ SOURCE_FILE@[0; 33) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 32) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - LET_STMT@[15; 30) - LET_KW@[15; 18) "let" - WHITESPACE@[18; 19) " " - PLACEHOLDER_PAT@[19; 20) - UNDERSCORE@[19; 20) "_" - WHITESPACE@[20; 21) " " - EQ@[21; 22) "=" - WHITESPACE@[22; 23) " " - TRY_EXPR@[23; 29) - TRY_KW@[23; 26) "try" - WHITESPACE@[26; 27) " " - BLOCK@[27; 29) - L_CURLY@[27; 28) "{" - R_CURLY@[28; 29) "}" - SEMI@[29; 30) ";" - WHITESPACE@[30; 31) "\n" - R_CURLY@[31; 32) "}" + BLOCK_EXPR@[9; 32) + BLOCK@[9; 32) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + LET_STMT@[15; 30) + LET_KW@[15; 18) "let" + WHITESPACE@[18; 19) " " + PLACEHOLDER_PAT@[19; 20) + UNDERSCORE@[19; 20) "_" + WHITESPACE@[20; 21) " " + EQ@[21; 22) "=" + WHITESPACE@[22; 23) " " + TRY_EXPR@[23; 29) + TRY_KW@[23; 26) "try" + WHITESPACE@[26; 27) " " + BLOCK_EXPR@[27; 29) + BLOCK@[27; 29) + L_CURLY@[27; 28) "{" + R_CURLY@[28; 29) "}" + SEMI@[29; 30) ";" + WHITESPACE@[30; 31) "\n" + R_CURLY@[31; 32) "}" WHITESPACE@[32; 33) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0132_box_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0132_box_expr.txt index 3d22002a1..12294210e 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0132_box_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0132_box_expr.txt @@ -8,82 +8,83 @@ SOURCE_FILE@[0; 106) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 105) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - LET_STMT@[15; 32) - LET_KW@[15; 18) "let" - WHITESPACE@[18; 19) " " - BIND_PAT@[19; 20) - NAME@[19; 20) - IDENT@[19; 20) "x" - WHITESPACE@[20; 21) " " - EQ@[21; 22) "=" - WHITESPACE@[22; 23) " " - BOX_EXPR@[23; 31) - BOX_KW@[23; 26) "box" - WHITESPACE@[26; 27) " " - LITERAL@[27; 31) - INT_NUMBER@[27; 31) "1i32" - SEMI@[31; 32) ";" - WHITESPACE@[32; 37) "\n " - LET_STMT@[37; 66) - LET_KW@[37; 40) "let" - WHITESPACE@[40; 41) " " - BIND_PAT@[41; 42) - NAME@[41; 42) - IDENT@[41; 42) "y" - WHITESPACE@[42; 43) " " - EQ@[43; 44) "=" - WHITESPACE@[44; 45) " " - TUPLE_EXPR@[45; 65) - L_PAREN@[45; 46) "(" - BOX_EXPR@[46; 54) - BOX_KW@[46; 49) "box" - WHITESPACE@[49; 50) " " - LITERAL@[50; 54) - INT_NUMBER@[50; 54) "1i32" - COMMA@[54; 55) "," - WHITESPACE@[55; 56) " " - BOX_EXPR@[56; 64) - BOX_KW@[56; 59) "box" - WHITESPACE@[59; 60) " " - LITERAL@[60; 64) - INT_NUMBER@[60; 64) "2i32" - R_PAREN@[64; 65) ")" - SEMI@[65; 66) ";" - WHITESPACE@[66; 71) "\n " - LET_STMT@[71; 103) - LET_KW@[71; 74) "let" - WHITESPACE@[74; 75) " " - BIND_PAT@[75; 76) - NAME@[75; 76) - IDENT@[75; 76) "z" - WHITESPACE@[76; 77) " " - EQ@[77; 78) "=" - WHITESPACE@[78; 79) " " - CALL_EXPR@[79; 102) - PATH_EXPR@[79; 82) - PATH@[79; 82) - PATH_SEGMENT@[79; 82) - NAME_REF@[79; 82) - IDENT@[79; 82) "Foo" - ARG_LIST@[82; 102) - L_PAREN@[82; 83) "(" - BOX_EXPR@[83; 91) - BOX_KW@[83; 86) "box" - WHITESPACE@[86; 87) " " - LITERAL@[87; 91) - INT_NUMBER@[87; 91) "1i32" - COMMA@[91; 92) "," - WHITESPACE@[92; 93) " " - BOX_EXPR@[93; 101) - BOX_KW@[93; 96) "box" - WHITESPACE@[96; 97) " " - LITERAL@[97; 101) - INT_NUMBER@[97; 101) "2i32" - R_PAREN@[101; 102) ")" - SEMI@[102; 103) ";" - WHITESPACE@[103; 104) "\n" - R_CURLY@[104; 105) "}" + BLOCK_EXPR@[9; 105) + BLOCK@[9; 105) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + LET_STMT@[15; 32) + LET_KW@[15; 18) "let" + WHITESPACE@[18; 19) " " + BIND_PAT@[19; 20) + NAME@[19; 20) + IDENT@[19; 20) "x" + WHITESPACE@[20; 21) " " + EQ@[21; 22) "=" + WHITESPACE@[22; 23) " " + BOX_EXPR@[23; 31) + BOX_KW@[23; 26) "box" + WHITESPACE@[26; 27) " " + LITERAL@[27; 31) + INT_NUMBER@[27; 31) "1i32" + SEMI@[31; 32) ";" + WHITESPACE@[32; 37) "\n " + LET_STMT@[37; 66) + LET_KW@[37; 40) "let" + WHITESPACE@[40; 41) " " + BIND_PAT@[41; 42) + NAME@[41; 42) + IDENT@[41; 42) "y" + WHITESPACE@[42; 43) " " + EQ@[43; 44) "=" + WHITESPACE@[44; 45) " " + TUPLE_EXPR@[45; 65) + L_PAREN@[45; 46) "(" + BOX_EXPR@[46; 54) + BOX_KW@[46; 49) "box" + WHITESPACE@[49; 50) " " + LITERAL@[50; 54) + INT_NUMBER@[50; 54) "1i32" + COMMA@[54; 55) "," + WHITESPACE@[55; 56) " " + BOX_EXPR@[56; 64) + BOX_KW@[56; 59) "box" + WHITESPACE@[59; 60) " " + LITERAL@[60; 64) + INT_NUMBER@[60; 64) "2i32" + R_PAREN@[64; 65) ")" + SEMI@[65; 66) ";" + WHITESPACE@[66; 71) "\n " + LET_STMT@[71; 103) + LET_KW@[71; 74) "let" + WHITESPACE@[74; 75) " " + BIND_PAT@[75; 76) + NAME@[75; 76) + IDENT@[75; 76) "z" + WHITESPACE@[76; 77) " " + EQ@[77; 78) "=" + WHITESPACE@[78; 79) " " + CALL_EXPR@[79; 102) + PATH_EXPR@[79; 82) + PATH@[79; 82) + PATH_SEGMENT@[79; 82) + NAME_REF@[79; 82) + IDENT@[79; 82) "Foo" + ARG_LIST@[82; 102) + L_PAREN@[82; 83) "(" + BOX_EXPR@[83; 91) + BOX_KW@[83; 86) "box" + WHITESPACE@[86; 87) " " + LITERAL@[87; 91) + INT_NUMBER@[87; 91) "1i32" + COMMA@[91; 92) "," + WHITESPACE@[92; 93) " " + BOX_EXPR@[93; 101) + BOX_KW@[93; 96) "box" + WHITESPACE@[96; 97) " " + LITERAL@[97; 101) + INT_NUMBER@[97; 101) "2i32" + R_PAREN@[101; 102) ")" + SEMI@[102; 103) ";" + WHITESPACE@[103; 104) "\n" + R_CURLY@[104; 105) "}" WHITESPACE@[105; 106) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0132_default_fn_type.txt b/crates/ra_syntax/test_data/parser/inline/ok/0132_default_fn_type.txt index 384b203d3..022070b0c 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0132_default_fn_type.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0132_default_fn_type.txt @@ -47,9 +47,10 @@ SOURCE_FILE@[0; 69) L_PAREN@[61; 62) "(" R_PAREN@[62; 63) ")" WHITESPACE@[63; 64) " " - BLOCK@[64; 66) - L_CURLY@[64; 65) "{" - R_CURLY@[65; 66) "}" + BLOCK_EXPR@[64; 66) + BLOCK@[64; 66) + L_CURLY@[64; 65) "{" + R_CURLY@[65; 66) "}" WHITESPACE@[66; 67) "\n" R_CURLY@[67; 68) "}" WHITESPACE@[68; 69) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0134_nocontentexpr_after_item.txt b/crates/ra_syntax/test_data/parser/inline/ok/0134_nocontentexpr_after_item.txt index 64cbf4632..14655d332 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0134_nocontentexpr_after_item.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0134_nocontentexpr_after_item.txt @@ -8,55 +8,57 @@ SOURCE_FILE@[0; 111) L_PAREN@[18; 19) "(" R_PAREN@[19; 20) ")" WHITESPACE@[20; 21) " " - BLOCK@[21; 110) - L_CURLY@[21; 22) "{" - WHITESPACE@[22; 27) "\n " - ENUM_DEF@[27; 75) - ENUM_KW@[27; 31) "enum" - WHITESPACE@[31; 32) " " - NAME@[32; 41) - IDENT@[32; 41) "LocalEnum" - WHITESPACE@[41; 42) " " - ENUM_VARIANT_LIST@[42; 75) - L_CURLY@[42; 43) "{" - WHITESPACE@[43; 52) "\n " - ENUM_VARIANT@[52; 55) - NAME@[52; 55) - IDENT@[52; 55) "One" - COMMA@[55; 56) "," - WHITESPACE@[56; 65) "\n " - ENUM_VARIANT@[65; 68) - NAME@[65; 68) - IDENT@[65; 68) "Two" - COMMA@[68; 69) "," - WHITESPACE@[69; 74) "\n " - R_CURLY@[74; 75) "}" - SEMI@[75; 76) ";" - WHITESPACE@[76; 81) "\n " - FN_DEF@[81; 90) - FN_KW@[81; 83) "fn" - WHITESPACE@[83; 84) " " - NAME@[84; 85) - IDENT@[84; 85) "f" - PARAM_LIST@[85; 87) - L_PAREN@[85; 86) "(" - R_PAREN@[86; 87) ")" - WHITESPACE@[87; 88) " " - BLOCK@[88; 90) - L_CURLY@[88; 89) "{" - R_CURLY@[89; 90) "}" - SEMI@[90; 91) ";" - WHITESPACE@[91; 96) "\n " - STRUCT_DEF@[96; 107) - STRUCT_KW@[96; 102) "struct" - WHITESPACE@[102; 103) " " - NAME@[103; 104) - IDENT@[103; 104) "S" - WHITESPACE@[104; 105) " " - RECORD_FIELD_DEF_LIST@[105; 107) - L_CURLY@[105; 106) "{" - R_CURLY@[106; 107) "}" - SEMI@[107; 108) ";" - WHITESPACE@[108; 109) "\n" - R_CURLY@[109; 110) "}" + BLOCK_EXPR@[21; 110) + BLOCK@[21; 110) + L_CURLY@[21; 22) "{" + WHITESPACE@[22; 27) "\n " + ENUM_DEF@[27; 75) + ENUM_KW@[27; 31) "enum" + WHITESPACE@[31; 32) " " + NAME@[32; 41) + IDENT@[32; 41) "LocalEnum" + WHITESPACE@[41; 42) " " + ENUM_VARIANT_LIST@[42; 75) + L_CURLY@[42; 43) "{" + WHITESPACE@[43; 52) "\n " + ENUM_VARIANT@[52; 55) + NAME@[52; 55) + IDENT@[52; 55) "One" + COMMA@[55; 56) "," + WHITESPACE@[56; 65) "\n " + ENUM_VARIANT@[65; 68) + NAME@[65; 68) + IDENT@[65; 68) "Two" + COMMA@[68; 69) "," + WHITESPACE@[69; 74) "\n " + R_CURLY@[74; 75) "}" + SEMI@[75; 76) ";" + WHITESPACE@[76; 81) "\n " + FN_DEF@[81; 90) + FN_KW@[81; 83) "fn" + WHITESPACE@[83; 84) " " + NAME@[84; 85) + IDENT@[84; 85) "f" + PARAM_LIST@[85; 87) + L_PAREN@[85; 86) "(" + R_PAREN@[86; 87) ")" + WHITESPACE@[87; 88) " " + BLOCK_EXPR@[88; 90) + BLOCK@[88; 90) + L_CURLY@[88; 89) "{" + R_CURLY@[89; 90) "}" + SEMI@[90; 91) ";" + WHITESPACE@[91; 96) "\n " + STRUCT_DEF@[96; 107) + STRUCT_KW@[96; 102) "struct" + WHITESPACE@[102; 103) " " + NAME@[103; 104) + IDENT@[103; 104) "S" + WHITESPACE@[104; 105) " " + RECORD_FIELD_DEF_LIST@[105; 107) + L_CURLY@[105; 106) "{" + R_CURLY@[106; 107) "}" + SEMI@[107; 108) ";" + WHITESPACE@[108; 109) "\n" + R_CURLY@[109; 110) "}" WHITESPACE@[110; 111) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0137_await_expr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0137_await_expr.txt index 7adb662de..a6ac0dbd8 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0137_await_expr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0137_await_expr.txt @@ -8,62 +8,63 @@ SOURCE_FILE@[0; 67) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 66) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 15) "\n " - EXPR_STMT@[15; 23) - AWAIT_EXPR@[15; 22) - PATH_EXPR@[15; 16) - PATH@[15; 16) - PATH_SEGMENT@[15; 16) - NAME_REF@[15; 16) - IDENT@[15; 16) "x" - DOT@[16; 17) "." - AWAIT_KW@[17; 22) "await" - SEMI@[22; 23) ";" - WHITESPACE@[23; 28) "\n " - EXPR_STMT@[28; 38) - AWAIT_EXPR@[28; 37) - FIELD_EXPR@[28; 31) - PATH_EXPR@[28; 29) - PATH@[28; 29) - PATH_SEGMENT@[28; 29) - NAME_REF@[28; 29) - IDENT@[28; 29) "x" - DOT@[29; 30) "." - NAME_REF@[30; 31) - INT_NUMBER@[30; 31) "0" - DOT@[31; 32) "." - AWAIT_KW@[32; 37) "await" - SEMI@[37; 38) ";" - WHITESPACE@[38; 43) "\n " - EXPR_STMT@[43; 64) - METHOD_CALL_EXPR@[43; 63) - TRY_EXPR@[43; 55) - AWAIT_EXPR@[43; 54) - CALL_EXPR@[43; 48) - FIELD_EXPR@[43; 46) - PATH_EXPR@[43; 44) - PATH@[43; 44) - PATH_SEGMENT@[43; 44) - NAME_REF@[43; 44) - IDENT@[43; 44) "x" - DOT@[44; 45) "." - NAME_REF@[45; 46) - INT_NUMBER@[45; 46) "0" - ARG_LIST@[46; 48) - L_PAREN@[46; 47) "(" - R_PAREN@[47; 48) ")" - DOT@[48; 49) "." - AWAIT_KW@[49; 54) "await" - QUESTION@[54; 55) "?" - DOT@[55; 56) "." - NAME_REF@[56; 61) - IDENT@[56; 61) "hello" - ARG_LIST@[61; 63) - L_PAREN@[61; 62) "(" - R_PAREN@[62; 63) ")" - SEMI@[63; 64) ";" - WHITESPACE@[64; 65) "\n" - R_CURLY@[65; 66) "}" + BLOCK_EXPR@[9; 66) + BLOCK@[9; 66) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 15) "\n " + EXPR_STMT@[15; 23) + AWAIT_EXPR@[15; 22) + PATH_EXPR@[15; 16) + PATH@[15; 16) + PATH_SEGMENT@[15; 16) + NAME_REF@[15; 16) + IDENT@[15; 16) "x" + DOT@[16; 17) "." + AWAIT_KW@[17; 22) "await" + SEMI@[22; 23) ";" + WHITESPACE@[23; 28) "\n " + EXPR_STMT@[28; 38) + AWAIT_EXPR@[28; 37) + FIELD_EXPR@[28; 31) + PATH_EXPR@[28; 29) + PATH@[28; 29) + PATH_SEGMENT@[28; 29) + NAME_REF@[28; 29) + IDENT@[28; 29) "x" + DOT@[29; 30) "." + NAME_REF@[30; 31) + INT_NUMBER@[30; 31) "0" + DOT@[31; 32) "." + AWAIT_KW@[32; 37) "await" + SEMI@[37; 38) ";" + WHITESPACE@[38; 43) "\n " + EXPR_STMT@[43; 64) + METHOD_CALL_EXPR@[43; 63) + TRY_EXPR@[43; 55) + AWAIT_EXPR@[43; 54) + CALL_EXPR@[43; 48) + FIELD_EXPR@[43; 46) + PATH_EXPR@[43; 44) + PATH@[43; 44) + PATH_SEGMENT@[43; 44) + NAME_REF@[43; 44) + IDENT@[43; 44) "x" + DOT@[44; 45) "." + NAME_REF@[45; 46) + INT_NUMBER@[45; 46) "0" + ARG_LIST@[46; 48) + L_PAREN@[46; 47) "(" + R_PAREN@[47; 48) ")" + DOT@[48; 49) "." + AWAIT_KW@[49; 54) "await" + QUESTION@[54; 55) "?" + DOT@[55; 56) "." + NAME_REF@[56; 61) + IDENT@[56; 61) "hello" + ARG_LIST@[61; 63) + L_PAREN@[61; 62) "(" + R_PAREN@[62; 63) ")" + SEMI@[63; 64) ";" + WHITESPACE@[64; 65) "\n" + R_CURLY@[65; 66) "}" WHITESPACE@[66; 67) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0138_associated_type_bounds.txt b/crates/ra_syntax/test_data/parser/inline/ok/0138_associated_type_bounds.txt index 33e75510d..d18096b47 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0138_associated_type_bounds.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0138_associated_type_bounds.txt @@ -49,7 +49,8 @@ SOURCE_FILE@[0; 59) IDENT@[53; 54) "T" R_PAREN@[54; 55) ")" WHITESPACE@[55; 56) " " - BLOCK@[56; 58) - L_CURLY@[56; 57) "{" - R_CURLY@[57; 58) "}" + BLOCK_EXPR@[56; 58) + BLOCK@[56; 58) + L_CURLY@[56; 57) "{" + R_CURLY@[57; 58) "}" WHITESPACE@[58; 59) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0138_expression_after_block.txt b/crates/ra_syntax/test_data/parser/inline/ok/0138_expression_after_block.txt index c4db9da40..df4c04149 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0138_expression_after_block.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0138_expression_after_block.txt @@ -8,58 +8,59 @@ SOURCE_FILE@[0; 52) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 51) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 14) "\n " - LET_STMT@[14; 34) - LET_KW@[14; 17) "let" - WHITESPACE@[17; 18) " " - BIND_PAT@[18; 23) - MUT_KW@[18; 21) "mut" - WHITESPACE@[21; 22) " " - NAME@[22; 23) - IDENT@[22; 23) "p" - WHITESPACE@[23; 24) " " - EQ@[24; 25) "=" - WHITESPACE@[25; 26) " " - RECORD_LIT@[26; 33) - PATH@[26; 27) - PATH_SEGMENT@[26; 27) - NAME_REF@[26; 27) - IDENT@[26; 27) "F" - RECORD_FIELD_LIST@[27; 33) - L_CURLY@[27; 28) "{" - RECORD_FIELD@[28; 32) - NAME_REF@[28; 29) - IDENT@[28; 29) "x" - COLON@[29; 30) ":" - WHITESPACE@[30; 31) " " - LITERAL@[31; 32) - INT_NUMBER@[31; 32) "5" - R_CURLY@[32; 33) "}" - SEMI@[33; 34) ";" - WHITESPACE@[34; 38) "\n " - EXPR_STMT@[38; 49) - BIN_EXPR@[38; 48) - FIELD_EXPR@[38; 43) - BLOCK_EXPR@[38; 41) - BLOCK@[38; 41) - L_CURLY@[38; 39) "{" - PATH_EXPR@[39; 40) - PATH@[39; 40) - PATH_SEGMENT@[39; 40) - NAME_REF@[39; 40) - IDENT@[39; 40) "p" - R_CURLY@[40; 41) "}" - DOT@[41; 42) "." - NAME_REF@[42; 43) - IDENT@[42; 43) "x" - WHITESPACE@[43; 44) " " - EQ@[44; 45) "=" - WHITESPACE@[45; 46) " " - LITERAL@[46; 48) - INT_NUMBER@[46; 48) "10" - SEMI@[48; 49) ";" - WHITESPACE@[49; 50) "\n" - R_CURLY@[50; 51) "}" + BLOCK_EXPR@[9; 51) + BLOCK@[9; 51) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 14) "\n " + LET_STMT@[14; 34) + LET_KW@[14; 17) "let" + WHITESPACE@[17; 18) " " + BIND_PAT@[18; 23) + MUT_KW@[18; 21) "mut" + WHITESPACE@[21; 22) " " + NAME@[22; 23) + IDENT@[22; 23) "p" + WHITESPACE@[23; 24) " " + EQ@[24; 25) "=" + WHITESPACE@[25; 26) " " + RECORD_LIT@[26; 33) + PATH@[26; 27) + PATH_SEGMENT@[26; 27) + NAME_REF@[26; 27) + IDENT@[26; 27) "F" + RECORD_FIELD_LIST@[27; 33) + L_CURLY@[27; 28) "{" + RECORD_FIELD@[28; 32) + NAME_REF@[28; 29) + IDENT@[28; 29) "x" + COLON@[29; 30) ":" + WHITESPACE@[30; 31) " " + LITERAL@[31; 32) + INT_NUMBER@[31; 32) "5" + R_CURLY@[32; 33) "}" + SEMI@[33; 34) ";" + WHITESPACE@[34; 38) "\n " + EXPR_STMT@[38; 49) + BIN_EXPR@[38; 48) + FIELD_EXPR@[38; 43) + BLOCK_EXPR@[38; 41) + BLOCK@[38; 41) + L_CURLY@[38; 39) "{" + PATH_EXPR@[39; 40) + PATH@[39; 40) + PATH_SEGMENT@[39; 40) + NAME_REF@[39; 40) + IDENT@[39; 40) "p" + R_CURLY@[40; 41) "}" + DOT@[41; 42) "." + NAME_REF@[42; 43) + IDENT@[42; 43) "x" + WHITESPACE@[43; 44) " " + EQ@[44; 45) "=" + WHITESPACE@[45; 46) " " + LITERAL@[46; 48) + INT_NUMBER@[46; 48) "10" + SEMI@[48; 49) ";" + WHITESPACE@[49; 50) "\n" + R_CURLY@[50; 51) "}" WHITESPACE@[51; 52) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0138_self_param_outer_attr.txt b/crates/ra_syntax/test_data/parser/inline/ok/0138_self_param_outer_attr.txt index 49b14e632..708fa4773 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0138_self_param_outer_attr.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0138_self_param_outer_attr.txt @@ -17,7 +17,8 @@ SOURCE_FILE@[0; 26) SELF_KW@[17; 21) "self" R_PAREN@[21; 22) ")" WHITESPACE@[22; 23) " " - BLOCK@[23; 25) - L_CURLY@[23; 24) "{" - R_CURLY@[24; 25) "}" + BLOCK_EXPR@[23; 25) + BLOCK@[23; 25) + L_CURLY@[23; 24) "{" + R_CURLY@[24; 25) "}" WHITESPACE@[25; 26) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0139_param_outer_arg.txt b/crates/ra_syntax/test_data/parser/inline/ok/0139_param_outer_arg.txt index 91c5e5f9a..9c0a0d20b 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0139_param_outer_arg.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0139_param_outer_arg.txt @@ -26,7 +26,8 @@ SOURCE_FILE@[0; 28) IDENT@[19; 23) "Type" R_PAREN@[23; 24) ")" WHITESPACE@[24; 25) " " - BLOCK@[25; 27) - L_CURLY@[25; 26) "{" - R_CURLY@[26; 27) "}" + BLOCK_EXPR@[25; 27) + BLOCK@[25; 27) + L_CURLY@[25; 26) "{" + R_CURLY@[26; 27) "}" WHITESPACE@[27; 28) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_from.txt b/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_from.txt index 9e5836233..eec1cba1e 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_from.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_from.txt @@ -8,33 +8,35 @@ SOURCE_FILE@[0; 51) L_PAREN@[6; 7) "(" R_PAREN@[7; 8) ")" WHITESPACE@[8; 9) " " - BLOCK@[9; 50) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 14) "\n " - FOR_EXPR@[14; 48) - FOR_KW@[14; 17) "for" - WHITESPACE@[17; 18) " " - BIND_PAT@[18; 19) - NAME@[18; 19) - IDENT@[18; 19) "x" - WHITESPACE@[19; 20) " " - IN_KW@[20; 22) "in" - WHITESPACE@[22; 23) " " - RANGE_EXPR@[23; 27) - LITERAL@[23; 24) - INT_NUMBER@[23; 24) "0" - WHITESPACE@[24; 25) " " - DOTDOT@[25; 27) ".." - WHITESPACE@[27; 28) " " - BLOCK@[28; 48) - L_CURLY@[28; 29) "{" - WHITESPACE@[29; 37) "\n " - EXPR_STMT@[37; 43) - BREAK_EXPR@[37; 42) - BREAK_KW@[37; 42) "break" - SEMI@[42; 43) ";" - WHITESPACE@[43; 47) "\n " - R_CURLY@[47; 48) "}" - WHITESPACE@[48; 49) "\n" - R_CURLY@[49; 50) "}" + BLOCK_EXPR@[9; 50) + BLOCK@[9; 50) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 14) "\n " + FOR_EXPR@[14; 48) + FOR_KW@[14; 17) "for" + WHITESPACE@[17; 18) " " + BIND_PAT@[18; 19) + NAME@[18; 19) + IDENT@[18; 19) "x" + WHITESPACE@[19; 20) " " + IN_KW@[20; 22) "in" + WHITESPACE@[22; 23) " " + RANGE_EXPR@[23; 27) + LITERAL@[23; 24) + INT_NUMBER@[23; 24) "0" + WHITESPACE@[24; 25) " " + DOTDOT@[25; 27) ".." + WHITESPACE@[27; 28) " " + BLOCK_EXPR@[28; 48) + BLOCK@[28; 48) + L_CURLY@[28; 29) "{" + WHITESPACE@[29; 37) "\n " + EXPR_STMT@[37; 43) + BREAK_EXPR@[37; 42) + BREAK_KW@[37; 42) "break" + SEMI@[42; 43) ";" + WHITESPACE@[43; 47) "\n " + R_CURLY@[47; 48) "}" + WHITESPACE@[48; 49) "\n" + R_CURLY@[49; 50) "}" WHITESPACE@[50; 51) "\n" diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0143_box_pat.txt b/crates/ra_syntax/test_data/parser/inline/ok/0143_box_pat.txt index f0db58143..4d2048711 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0143_box_pat.txt +++ b/crates/ra_syntax/test_data/parser/inline/ok/0143_box_pat.txt @@ -8,102 +8,103 @@ SOURCE_FILE@[0; 118) L_PAREN@[7; 8) "(" R_PAREN@[8; 9) ")" WHITESPACE@[9; 10) " " - BLOCK@[10; 117) - L_CURLY@[10; 11) "{" - WHITESPACE@[11; 16) "\n " - LET_STMT@[16; 31) - LET_KW@[16; 19) "let" - WHITESPACE@[19; 20) " " - BOX_PAT@[20; 25) - BOX_KW@[20; 23) "box" - WHITESPACE@[23; 24) " " - BIND_PAT@[24; 25) - NAME@[24; 25) - IDENT@[24; 25) "i" - WHITESPACE@[25; 26) " " - EQ@[26; 27) "=" - WHITESPACE@[27; 28) " " - TUPLE_EXPR@[28; 30) - L_PAREN@[28; 29) "(" - R_PAREN@[29; 30) ")" - SEMI@[30; 31) ";" - WHITESPACE@[31; 36) "\n " - LET_STMT@[36; 87) - LET_KW@[36; 39) "let" - WHITESPACE@[39; 40) " " - BOX_PAT@[40; 81) - BOX_KW@[40; 43) "box" - WHITESPACE@[43; 44) " " - RECORD_PAT@[44; 81) - PATH@[44; 49) - PATH_SEGMENT@[44; 49) - NAME_REF@[44; 49) - IDENT@[44; 49) "Outer" - WHITESPACE@[49; 50) " " - RECORD_FIELD_PAT_LIST@[50; 81) - L_CURLY@[50; 51) "{" - WHITESPACE@[51; 52) " " - BOX_PAT@[52; 57) - BOX_KW@[52; 55) "box" - WHITESPACE@[55; 56) " " - BIND_PAT@[56; 57) - NAME@[56; 57) - IDENT@[56; 57) "i" - COMMA@[57; 58) "," - WHITESPACE@[58; 59) " " - RECORD_FIELD_PAT@[59; 79) - NAME@[59; 60) - IDENT@[59; 60) "j" - COLON@[60; 61) ":" - WHITESPACE@[61; 62) " " - BOX_PAT@[62; 79) - BOX_KW@[62; 65) "box" - WHITESPACE@[65; 66) " " - TUPLE_STRUCT_PAT@[66; 79) - PATH@[66; 71) - PATH_SEGMENT@[66; 71) - NAME_REF@[66; 71) - IDENT@[66; 71) "Inner" - L_PAREN@[71; 72) "(" - BOX_PAT@[72; 78) - BOX_KW@[72; 75) "box" - WHITESPACE@[75; 76) " " - REF_PAT@[76; 78) - AMP@[76; 77) "&" - BIND_PAT@[77; 78) - NAME@[77; 78) - IDENT@[77; 78) "x" - R_PAREN@[78; 79) ")" - WHITESPACE@[79; 80) " " - R_CURLY@[80; 81) "}" - WHITESPACE@[81; 82) " " - EQ@[82; 83) "=" - WHITESPACE@[83; 84) " " - TUPLE_EXPR@[84; 86) - L_PAREN@[84; 85) "(" - R_PAREN@[85; 86) ")" - SEMI@[86; 87) ";" - WHITESPACE@[87; 92) "\n " - LET_STMT@[92; 115) - LET_KW@[92; 95) "let" - WHITESPACE@[95; 96) " " - BOX_PAT@[96; 109) - BOX_KW@[96; 99) "box" - WHITESPACE@[99; 100) " " - BIND_PAT@[100; 109) - REF_KW@[100; 103) "ref" - WHITESPACE@[103; 104) " " - MUT_KW@[104; 107) "mut" - WHITESPACE@[107; 108) " " - NAME@[108; 109) - IDENT@[108; 109) "i" - WHITESPACE@[109; 110) " " - EQ@[110; 111) "=" - WHITESPACE@[111; 112) " " - TUPLE_EXPR@[112; 114) - L_PAREN@[112; 113) "(" - R_PAREN@[113; 114) ")" - SEMI@[114; 115) ";" - WHITESPACE@[115; 116) "\n" - R_CURLY@[116; 117) "}" + BLOCK_EXPR@[10; 117) + BLOCK@[10; 117) + L_CURLY@[10; 11) "{" + WHITESPACE@[11; 16) "\n " + LET_STMT@[16; 31) + LET_KW@[16; 19) "let" + WHITESPACE@[19; 20) " " + BOX_PAT@[20; 25) + BOX_KW@[20; 23) "box" + WHITESPACE@[23; 24) " " + BIND_PAT@[24; 25) + NAME@[24; 25) + IDENT@[24; 25) "i" + WHITESPACE@[25; 26) " " + EQ@[26; 27) "=" + WHITESPACE@[27; 28) " " + TUPLE_EXPR@[28; 30) + L_PAREN@[28; 29) "(" + R_PAREN@[29; 30) ")" + SEMI@[30; 31) ";" + WHITESPACE@[31; 36) "\n " + LET_STMT@[36; 87) + LET_KW@[36; 39) "let" + WHITESPACE@[39; 40) " " + BOX_PAT@[40; 81) + BOX_KW@[40; 43) "box" + WHITESPACE@[43; 44) " " + RECORD_PAT@[44; 81) + PATH@[44; 49) + PATH_SEGMENT@[44; 49) + NAME_REF@[44; 49) + IDENT@[44; 49) "Outer" + WHITESPACE@[49; 50) " " + RECORD_FIELD_PAT_LIST@[50; 81) + L_CURLY@[50; 51) "{" + WHITESPACE@[51; 52) " " + BOX_PAT@[52; 57) + BOX_KW@[52; 55) "box" + WHITESPACE@[55; 56) " " + BIND_PAT@[56; 57) + NAME@[56; 57) + IDENT@[56; 57) "i" + COMMA@[57; 58) "," + WHITESPACE@[58; 59) " " + RECORD_FIELD_PAT@[59; 79) + NAME@[59; 60) + IDENT@[59; 60) "j" + COLON@[60; 61) ":" + WHITESPACE@[61; 62) " " + BOX_PAT@[62; 79) + BOX_KW@[62; 65) "box" + WHITESPACE@[65; 66) " " + TUPLE_STRUCT_PAT@[66; 79) + PATH@[66; 71) + PATH_SEGMENT@[66; 71) + NAME_REF@[66; 71) + IDENT@[66; 71) "Inner" + L_PAREN@[71; 72) "(" + BOX_PAT@[72; 78) + BOX_KW@[72; 75) "box" + WHITESPACE@[75; 76) " " + REF_PAT@[76; 78) + AMP@[76; 77) "&" + BIND_PAT@[77; 78) + NAME@[77; 78) + IDENT@[77; 78) "x" + R_PAREN@[78; 79) ")" + WHITESPACE@[79; 80) " " + R_CURLY@[80; 81) "}" + WHITESPACE@[81; 82) " " + EQ@[82; 83) "=" + WHITESPACE@[83; 84) " " + TUPLE_EXPR@[84; 86) + L_PAREN@[84; 85) "(" + R_PAREN@[85; 86) ")" + SEMI@[86; 87) ";" + WHITESPACE@[87; 92) "\n " + LET_STMT@[92; 115) + LET_KW@[92; 95) "let" + WHITESPACE@[95; 96) " " + BOX_PAT@[96; 109) + BOX_KW@[96; 99) "box" + WHITESPACE@[99; 100) " " + BIND_PAT@[100; 109) + REF_KW@[100; 103) "ref" + WHITESPACE@[103; 104) " " + MUT_KW@[104; 107) "mut" + WHITESPACE@[107; 108) " " + NAME@[108; 109) + IDENT@[108; 109) "i" + WHITESPACE@[109; 110) " " + EQ@[110; 111) "=" + WHITESPACE@[111; 112) " " + TUPLE_EXPR@[112; 114) + L_PAREN@[112; 113) "(" + R_PAREN@[113; 114) ")" + SEMI@[114; 115) ";" + WHITESPACE@[115; 116) "\n" + R_CURLY@[116; 117) "}" WHITESPACE@[117; 118) "\n" -- cgit v1.2.3