From 20bbe0127cc6bfac3ced0c7ed1de4f0526f3bbed Mon Sep 17 00:00:00 2001 From: DJMcNab <36049421+DJMcNab@users.noreply.github.com> Date: Mon, 17 Dec 2018 22:34:18 +0000 Subject: Fix parsing of inclusive ranges (#214) I'm not certain that this is correct, so extra eyes would be good --- .../tests/data/parser/inline/0094_range_pat.rs | 6 +- .../tests/data/parser/inline/0094_range_pat.txt | 86 +++++++++++++++------- 2 files changed, 65 insertions(+), 27 deletions(-) (limited to 'crates/ra_syntax/tests/data/parser/inline') diff --git a/crates/ra_syntax/tests/data/parser/inline/0094_range_pat.rs b/crates/ra_syntax/tests/data/parser/inline/0094_range_pat.rs index 657467e75..3bca7bf5d 100644 --- a/crates/ra_syntax/tests/data/parser/inline/0094_range_pat.rs +++ b/crates/ra_syntax/tests/data/parser/inline/0094_range_pat.rs @@ -1,3 +1,7 @@ fn main() { - match 92 { 0 ... 100 => () } + match 92 { + 0 ... 100 => (), + 101 ..= 200 => (), + 200 .. 301=> (), + } } diff --git a/crates/ra_syntax/tests/data/parser/inline/0094_range_pat.txt b/crates/ra_syntax/tests/data/parser/inline/0094_range_pat.txt index 12ccc1314..7eb0fcdf4 100644 --- a/crates/ra_syntax/tests/data/parser/inline/0094_range_pat.txt +++ b/crates/ra_syntax/tests/data/parser/inline/0094_range_pat.txt @@ -1,5 +1,5 @@ -SOURCE_FILE@[0; 47) - FN_DEF@[0; 46) +SOURCE_FILE@[0; 113) + FN_DEF@[0; 112) FN_KW@[0; 2) WHITESPACE@[2; 3) NAME@[3; 7) @@ -8,35 +8,69 @@ SOURCE_FILE@[0; 47) L_PAREN@[7; 8) R_PAREN@[8; 9) WHITESPACE@[9; 10) - BLOCK@[10; 46) + BLOCK@[10; 112) L_CURLY@[10; 11) WHITESPACE@[11; 16) - MATCH_EXPR@[16; 44) + MATCH_EXPR@[16; 110) MATCH_KW@[16; 21) WHITESPACE@[21; 22) LITERAL@[22; 24) INT_NUMBER@[22; 24) "92" WHITESPACE@[24; 25) - MATCH_ARM_LIST@[25; 44) + MATCH_ARM_LIST@[25; 110) L_CURLY@[25; 26) - WHITESPACE@[26; 27) - MATCH_ARM@[27; 42) - RANGE_PAT@[27; 36) - LITERAL@[27; 28) - INT_NUMBER@[27; 28) "0" - WHITESPACE@[28; 29) - DOTDOTDOT@[29; 32) - WHITESPACE@[32; 33) - LITERAL@[33; 36) - INT_NUMBER@[33; 36) "100" - WHITESPACE@[36; 37) - FAT_ARROW@[37; 39) - WHITESPACE@[39; 40) - TUPLE_EXPR@[40; 42) - L_PAREN@[40; 41) - R_PAREN@[41; 42) - WHITESPACE@[42; 43) - R_CURLY@[43; 44) - WHITESPACE@[44; 45) - R_CURLY@[45; 46) - WHITESPACE@[46; 47) + WHITESPACE@[26; 36) + MATCH_ARM@[36; 51) + RANGE_PAT@[36; 45) + LITERAL@[36; 37) + INT_NUMBER@[36; 37) "0" + WHITESPACE@[37; 38) + DOTDOTDOT@[38; 41) + WHITESPACE@[41; 42) + LITERAL@[42; 45) + INT_NUMBER@[42; 45) "100" + WHITESPACE@[45; 46) + FAT_ARROW@[46; 48) + WHITESPACE@[48; 49) + TUPLE_EXPR@[49; 51) + L_PAREN@[49; 50) + R_PAREN@[50; 51) + COMMA@[51; 52) + WHITESPACE@[52; 61) + MATCH_ARM@[61; 78) + RANGE_PAT@[61; 72) + LITERAL@[61; 64) + INT_NUMBER@[61; 64) "101" + WHITESPACE@[64; 65) + DOTDOTEQ@[65; 68) + WHITESPACE@[68; 69) + LITERAL@[69; 72) + INT_NUMBER@[69; 72) "200" + WHITESPACE@[72; 73) + FAT_ARROW@[73; 75) + WHITESPACE@[75; 76) + TUPLE_EXPR@[76; 78) + L_PAREN@[76; 77) + R_PAREN@[77; 78) + COMMA@[78; 79) + WHITESPACE@[79; 88) + MATCH_ARM@[88; 103) + RANGE_PAT@[88; 98) + LITERAL@[88; 91) + INT_NUMBER@[88; 91) "200" + WHITESPACE@[91; 92) + DOTDOT@[92; 94) + WHITESPACE@[94; 95) + LITERAL@[95; 98) + INT_NUMBER@[95; 98) "301" + 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) + R_CURLY@[109; 110) + WHITESPACE@[110; 111) + R_CURLY@[111; 112) + WHITESPACE@[112; 113) -- cgit v1.2.3