From 2bebdf0b372b23c3766fc08b345012870ae768c9 Mon Sep 17 00:00:00 2001 From: bravomikekilo Date: Wed, 14 Aug 2019 11:55:21 +0800 Subject: fix error of RangeFrom in for-loop --- .../parser/inline/ok/0142_for_range_block.rs | 8 ++ .../parser/inline/ok/0142_for_range_block.txt | 105 +++++++++++++++++++++ 2 files changed, 113 insertions(+) create mode 100644 crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.rs create mode 100644 crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.txt (limited to 'crates/ra_syntax/test_data/parser/inline/ok') diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.rs b/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.rs new file mode 100644 index 000000000..33af70026 --- /dev/null +++ b/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.rs @@ -0,0 +1,8 @@ +fn foo() { + for x in 0 .. { + break; + }; + for _x in 0 .. (0 .. {1 + 2}).sum::() { + break; + }; +} diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.txt b/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.txt new file mode 100644 index 000000000..7da4dbb8b --- /dev/null +++ b/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.txt @@ -0,0 +1,105 @@ +SOURCE_FILE@[0; 118) + FN_DEF@[0; 117) + FN_KW@[0; 2) "fn" + WHITESPACE@[2; 3) " " + NAME@[3; 6) + IDENT@[3; 6) "foo" + PARAM_LIST@[6; 8) + L_PAREN@[6; 7) "(" + R_PAREN@[7; 8) ")" + WHITESPACE@[8; 9) " " + BLOCK@[9; 117) + L_CURLY@[9; 10) "{" + WHITESPACE@[10; 14) "\n " + EXPR_STMT@[14; 48) + 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; 52) "\n " + FOR_EXPR@[52; 115) + FOR_KW@[52; 55) "for" + WHITESPACE@[55; 56) " " + BIND_PAT@[56; 58) + NAME@[56; 58) + IDENT@[56; 58) "_x" + WHITESPACE@[58; 59) " " + IN_KW@[59; 61) "in" + WHITESPACE@[61; 62) " " + RANGE_EXPR@[62; 94) + LITERAL@[62; 63) + INT_NUMBER@[62; 63) "0" + WHITESPACE@[63; 64) " " + DOTDOT@[64; 66) ".." + WHITESPACE@[66; 67) " " + METHOD_CALL_EXPR@[67; 94) + PAREN_EXPR@[67; 81) + L_PAREN@[67; 68) "(" + RANGE_EXPR@[68; 80) + LITERAL@[68; 69) + INT_NUMBER@[68; 69) "0" + WHITESPACE@[69; 70) " " + DOTDOT@[70; 72) ".." + WHITESPACE@[72; 73) " " + BLOCK_EXPR@[73; 80) + BLOCK@[73; 80) + L_CURLY@[73; 74) "{" + BIN_EXPR@[74; 79) + LITERAL@[74; 75) + INT_NUMBER@[74; 75) "1" + WHITESPACE@[75; 76) " " + PLUS@[76; 77) "+" + WHITESPACE@[77; 78) " " + LITERAL@[78; 79) + INT_NUMBER@[78; 79) "2" + R_CURLY@[79; 80) "}" + R_PAREN@[80; 81) ")" + DOT@[81; 82) "." + NAME_REF@[82; 85) + IDENT@[82; 85) "sum" + TYPE_ARG_LIST@[85; 92) + COLONCOLON@[85; 87) "::" + L_ANGLE@[87; 88) "<" + TYPE_ARG@[88; 91) + PATH_TYPE@[88; 91) + PATH@[88; 91) + PATH_SEGMENT@[88; 91) + NAME_REF@[88; 91) + IDENT@[88; 91) "u32" + R_ANGLE@[91; 92) ">" + ARG_LIST@[92; 94) + L_PAREN@[92; 93) "(" + R_PAREN@[93; 94) ")" + WHITESPACE@[94; 95) " " + BLOCK@[95; 115) + L_CURLY@[95; 96) "{" + WHITESPACE@[96; 104) "\n " + EXPR_STMT@[104; 110) + BREAK_EXPR@[104; 109) + BREAK_KW@[104; 109) "break" + SEMI@[109; 110) ";" + WHITESPACE@[110; 114) "\n " + R_CURLY@[114; 115) "}" + WHITESPACE@[115; 116) "\n" + R_CURLY@[116; 117) "}" + WHITESPACE@[117; 118) "\n" -- cgit v1.2.3 From 3fce56280feeb7d621cd98a61c6157393be72c00 Mon Sep 17 00:00:00 2001 From: bravomikekilo Date: Wed, 14 Aug 2019 12:42:58 +0800 Subject: fix test --- crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'crates/ra_syntax/test_data/parser/inline/ok') diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.rs b/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.rs index 33af70026..eb745767b 100644 --- a/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.rs +++ b/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.rs @@ -1,8 +1,8 @@ fn foo() { for x in 0 .. { break; - }; + } for _x in 0 .. (0 .. {1 + 2}).sum::() { break; - }; + } } -- cgit v1.2.3 From 4f31fed362e1bb08f748b188eedc0bdc5a070bee Mon Sep 17 00:00:00 2001 From: bravomikekilo Date: Wed, 14 Aug 2019 21:20:04 +0800 Subject: fix test position --- .../parser/inline/ok/0142_for_range_block.rs | 8 -- .../parser/inline/ok/0142_for_range_block.txt | 105 --------------------- .../parser/inline/ok/0142_for_range_from.rs | 5 + .../parser/inline/ok/0142_for_range_from.txt | 40 ++++++++ 4 files changed, 45 insertions(+), 113 deletions(-) delete mode 100644 crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.rs delete mode 100644 crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.txt create mode 100644 crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_from.rs create mode 100644 crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_from.txt (limited to 'crates/ra_syntax/test_data/parser/inline/ok') diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.rs b/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.rs deleted file mode 100644 index eb745767b..000000000 --- a/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.rs +++ /dev/null @@ -1,8 +0,0 @@ -fn foo() { - for x in 0 .. { - break; - } - for _x in 0 .. (0 .. {1 + 2}).sum::() { - break; - } -} diff --git a/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.txt b/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.txt deleted file mode 100644 index 7da4dbb8b..000000000 --- a/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_block.txt +++ /dev/null @@ -1,105 +0,0 @@ -SOURCE_FILE@[0; 118) - FN_DEF@[0; 117) - FN_KW@[0; 2) "fn" - WHITESPACE@[2; 3) " " - NAME@[3; 6) - IDENT@[3; 6) "foo" - PARAM_LIST@[6; 8) - L_PAREN@[6; 7) "(" - R_PAREN@[7; 8) ")" - WHITESPACE@[8; 9) " " - BLOCK@[9; 117) - L_CURLY@[9; 10) "{" - WHITESPACE@[10; 14) "\n " - EXPR_STMT@[14; 48) - 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; 52) "\n " - FOR_EXPR@[52; 115) - FOR_KW@[52; 55) "for" - WHITESPACE@[55; 56) " " - BIND_PAT@[56; 58) - NAME@[56; 58) - IDENT@[56; 58) "_x" - WHITESPACE@[58; 59) " " - IN_KW@[59; 61) "in" - WHITESPACE@[61; 62) " " - RANGE_EXPR@[62; 94) - LITERAL@[62; 63) - INT_NUMBER@[62; 63) "0" - WHITESPACE@[63; 64) " " - DOTDOT@[64; 66) ".." - WHITESPACE@[66; 67) " " - METHOD_CALL_EXPR@[67; 94) - PAREN_EXPR@[67; 81) - L_PAREN@[67; 68) "(" - RANGE_EXPR@[68; 80) - LITERAL@[68; 69) - INT_NUMBER@[68; 69) "0" - WHITESPACE@[69; 70) " " - DOTDOT@[70; 72) ".." - WHITESPACE@[72; 73) " " - BLOCK_EXPR@[73; 80) - BLOCK@[73; 80) - L_CURLY@[73; 74) "{" - BIN_EXPR@[74; 79) - LITERAL@[74; 75) - INT_NUMBER@[74; 75) "1" - WHITESPACE@[75; 76) " " - PLUS@[76; 77) "+" - WHITESPACE@[77; 78) " " - LITERAL@[78; 79) - INT_NUMBER@[78; 79) "2" - R_CURLY@[79; 80) "}" - R_PAREN@[80; 81) ")" - DOT@[81; 82) "." - NAME_REF@[82; 85) - IDENT@[82; 85) "sum" - TYPE_ARG_LIST@[85; 92) - COLONCOLON@[85; 87) "::" - L_ANGLE@[87; 88) "<" - TYPE_ARG@[88; 91) - PATH_TYPE@[88; 91) - PATH@[88; 91) - PATH_SEGMENT@[88; 91) - NAME_REF@[88; 91) - IDENT@[88; 91) "u32" - R_ANGLE@[91; 92) ">" - ARG_LIST@[92; 94) - L_PAREN@[92; 93) "(" - R_PAREN@[93; 94) ")" - WHITESPACE@[94; 95) " " - BLOCK@[95; 115) - L_CURLY@[95; 96) "{" - WHITESPACE@[96; 104) "\n " - EXPR_STMT@[104; 110) - BREAK_EXPR@[104; 109) - BREAK_KW@[104; 109) "break" - SEMI@[109; 110) ";" - WHITESPACE@[110; 114) "\n " - R_CURLY@[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/0142_for_range_from.rs b/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_from.rs new file mode 100644 index 000000000..af0d40a7a --- /dev/null +++ b/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_from.rs @@ -0,0 +1,5 @@ +fn foo() { + for x in 0 .. { + break; + } +} 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 new file mode 100644 index 000000000..9e5836233 --- /dev/null +++ b/crates/ra_syntax/test_data/parser/inline/ok/0142_for_range_from.txt @@ -0,0 +1,40 @@ +SOURCE_FILE@[0; 51) + FN_DEF@[0; 50) + FN_KW@[0; 2) "fn" + WHITESPACE@[2; 3) " " + NAME@[3; 6) + IDENT@[3; 6) "foo" + PARAM_LIST@[6; 8) + 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) "}" + WHITESPACE@[50; 51) "\n" -- cgit v1.2.3