Update tests for or-patterns

This commit is contained in:
Matthew Jasper 2020-02-09 22:04:50 +00:00
parent 8c8d0bb34f
commit 504e2a46bd
4 changed files with 184 additions and 60 deletions

View file

@ -63,27 +63,28 @@ SOURCE_FILE@[0; 197)
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) ")"
OR_PAT@[60; 77)
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) " "
@ -137,27 +138,28 @@ SOURCE_FILE@[0; 197)
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) ")"
OR_PAT@[133; 150)
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) " "

View file

@ -74,15 +74,16 @@ SOURCE_FILE@[0; 167)
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"
OR_PAT@[93; 98)
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"
@ -103,15 +104,16 @@ SOURCE_FILE@[0; 167)
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"
OR_PAT@[121; 126)
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"

View file

@ -0,0 +1,8 @@
fn main() {
match () {
(_ | _) => (),
&(_ | _) => (),
(_ | _,) => (),
[_ | _,] => (),
}
}

View file

@ -0,0 +1,112 @@
SOURCE_FILE@[0; 130)
FN_DEF@[0; 129)
FN_KW@[0; 2) "fn"
WHITESPACE@[2; 3) " "
NAME@[3; 7)
IDENT@[3; 7) "main"
PARAM_LIST@[7; 9)
L_PAREN@[7; 8) "("
R_PAREN@[8; 9) ")"
WHITESPACE@[9; 10) " "
BLOCK_EXPR@[10; 129)
BLOCK@[10; 129)
L_CURLY@[10; 11) "{"
WHITESPACE@[11; 16) "\n "
MATCH_EXPR@[16; 127)
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; 127)
L_CURLY@[25; 26) "{"
WHITESPACE@[26; 35) "\n "
MATCH_ARM@[35; 48)
PAREN_PAT@[35; 42)
L_PAREN@[35; 36) "("
OR_PAT@[36; 41)
PLACEHOLDER_PAT@[36; 37)
UNDERSCORE@[36; 37) "_"
WHITESPACE@[37; 38) " "
PIPE@[38; 39) "|"
WHITESPACE@[39; 40) " "
PLACEHOLDER_PAT@[40; 41)
UNDERSCORE@[40; 41) "_"
R_PAREN@[41; 42) ")"
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; 58) "\n "
MATCH_ARM@[58; 72)
REF_PAT@[58; 66)
AMP@[58; 59) "&"
PAREN_PAT@[59; 66)
L_PAREN@[59; 60) "("
OR_PAT@[60; 65)
PLACEHOLDER_PAT@[60; 61)
UNDERSCORE@[60; 61) "_"
WHITESPACE@[61; 62) " "
PIPE@[62; 63) "|"
WHITESPACE@[63; 64) " "
PLACEHOLDER_PAT@[64; 65)
UNDERSCORE@[64; 65) "_"
R_PAREN@[65; 66) ")"
WHITESPACE@[66; 67) " "
FAT_ARROW@[67; 69) "=>"
WHITESPACE@[69; 70) " "
TUPLE_EXPR@[70; 72)
L_PAREN@[70; 71) "("
R_PAREN@[71; 72) ")"
COMMA@[72; 73) ","
WHITESPACE@[73; 82) "\n "
MATCH_ARM@[82; 96)
TUPLE_PAT@[82; 90)
L_PAREN@[82; 83) "("
OR_PAT@[83; 88)
PLACEHOLDER_PAT@[83; 84)
UNDERSCORE@[83; 84) "_"
WHITESPACE@[84; 85) " "
PIPE@[85; 86) "|"
WHITESPACE@[86; 87) " "
PLACEHOLDER_PAT@[87; 88)
UNDERSCORE@[87; 88) "_"
COMMA@[88; 89) ","
R_PAREN@[89; 90) ")"
WHITESPACE@[90; 91) " "
FAT_ARROW@[91; 93) "=>"
WHITESPACE@[93; 94) " "
TUPLE_EXPR@[94; 96)
L_PAREN@[94; 95) "("
R_PAREN@[95; 96) ")"
COMMA@[96; 97) ","
WHITESPACE@[97; 106) "\n "
MATCH_ARM@[106; 120)
SLICE_PAT@[106; 114)
L_BRACK@[106; 107) "["
OR_PAT@[107; 112)
PLACEHOLDER_PAT@[107; 108)
UNDERSCORE@[107; 108) "_"
WHITESPACE@[108; 109) " "
PIPE@[109; 110) "|"
WHITESPACE@[110; 111) " "
PLACEHOLDER_PAT@[111; 112)
UNDERSCORE@[111; 112) "_"
COMMA@[112; 113) ","
R_BRACK@[113; 114) "]"
WHITESPACE@[114; 115) " "
FAT_ARROW@[115; 117) "=>"
WHITESPACE@[117; 118) " "
TUPLE_EXPR@[118; 120)
L_PAREN@[118; 119) "("
R_PAREN@[119; 120) ")"
COMMA@[120; 121) ","
WHITESPACE@[121; 126) "\n "
R_CURLY@[126; 127) "}"
WHITESPACE@[127; 128) "\n"
R_CURLY@[128; 129) "}"
WHITESPACE@[129; 130) "\n"