diff options
-rw-r--r-- | src/parser/grammar/items/structs.rs | 2 | ||||
-rw-r--r-- | tests/data/parser/ok/0019_enums.txt | 33 |
2 files changed, 20 insertions, 15 deletions
diff --git a/src/parser/grammar/items/structs.rs b/src/parser/grammar/items/structs.rs index 3b1f8a38c..3c122a56f 100644 --- a/src/parser/grammar/items/structs.rs +++ b/src/parser/grammar/items/structs.rs | |||
@@ -41,7 +41,7 @@ pub(super) fn struct_item(p: &mut Parser) { | |||
41 | pub(super) fn enum_item(p: &mut Parser) { | 41 | pub(super) fn enum_item(p: &mut Parser) { |
42 | assert!(p.at(ENUM_KW)); | 42 | assert!(p.at(ENUM_KW)); |
43 | p.bump(); | 43 | p.bump(); |
44 | p.expect(IDENT); | 44 | name(p); |
45 | type_params::list(p); | 45 | type_params::list(p); |
46 | type_params::where_clause(p); | 46 | type_params::where_clause(p); |
47 | if p.expect(L_CURLY) { | 47 | if p.expect(L_CURLY) { |
diff --git a/tests/data/parser/ok/0019_enums.txt b/tests/data/parser/ok/0019_enums.txt index dfb8e1f0c..c1588a86e 100644 --- a/tests/data/parser/ok/0019_enums.txt +++ b/tests/data/parser/ok/0019_enums.txt | |||
@@ -1,17 +1,19 @@ | |||
1 | FILE@[0; 182) | 1 | FILE@[0; 182) |
2 | ENUM_ITEM@[0; 13) | 2 | ENUM_ITEM@[0; 13) |
3 | ENUM_KW@[0; 4) | 3 | ENUM_KW@[0; 4) |
4 | WHITESPACE@[4; 5) | 4 | NAME@[4; 8) |
5 | IDENT@[5; 7) "E1" | 5 | WHITESPACE@[4; 5) |
6 | WHITESPACE@[7; 8) | 6 | IDENT@[5; 7) "E1" |
7 | WHITESPACE@[7; 8) | ||
7 | L_CURLY@[8; 9) | 8 | L_CURLY@[8; 9) |
8 | WHITESPACE@[9; 10) | 9 | WHITESPACE@[9; 10) |
9 | R_CURLY@[10; 11) | 10 | R_CURLY@[10; 11) |
10 | WHITESPACE@[11; 13) | 11 | WHITESPACE@[11; 13) |
11 | ENUM_ITEM@[13; 29) | 12 | ENUM_ITEM@[13; 29) |
12 | ENUM_KW@[13; 17) | 13 | ENUM_KW@[13; 17) |
13 | WHITESPACE@[17; 18) | 14 | NAME@[17; 20) |
14 | IDENT@[18; 20) "E2" | 15 | WHITESPACE@[17; 18) |
16 | IDENT@[18; 20) "E2" | ||
15 | TYPE_PARAM_LIST@[20; 24) | 17 | TYPE_PARAM_LIST@[20; 24) |
16 | L_ANGLE@[20; 21) | 18 | L_ANGLE@[20; 21) |
17 | TYPE_PARAM@[21; 22) | 19 | TYPE_PARAM@[21; 22) |
@@ -24,9 +26,10 @@ FILE@[0; 182) | |||
24 | WHITESPACE@[27; 29) | 26 | WHITESPACE@[27; 29) |
25 | ENUM_ITEM@[29; 48) | 27 | ENUM_ITEM@[29; 48) |
26 | ENUM_KW@[29; 33) | 28 | ENUM_KW@[29; 33) |
27 | WHITESPACE@[33; 34) | 29 | NAME@[33; 37) |
28 | IDENT@[34; 36) "E3" | 30 | WHITESPACE@[33; 34) |
29 | WHITESPACE@[36; 37) | 31 | IDENT@[34; 36) "E3" |
32 | WHITESPACE@[36; 37) | ||
30 | L_CURLY@[37; 38) | 33 | L_CURLY@[37; 38) |
31 | ENUM_VARIANT@[38; 45) | 34 | ENUM_VARIANT@[38; 45) |
32 | WHITESPACE@[38; 43) | 35 | WHITESPACE@[38; 43) |
@@ -36,9 +39,10 @@ FILE@[0; 182) | |||
36 | WHITESPACE@[46; 48) | 39 | WHITESPACE@[46; 48) |
37 | ENUM_ITEM@[48; 68) | 40 | ENUM_ITEM@[48; 68) |
38 | ENUM_KW@[48; 52) | 41 | ENUM_KW@[48; 52) |
39 | WHITESPACE@[52; 53) | 42 | NAME@[52; 56) |
40 | IDENT@[53; 55) "E4" | 43 | WHITESPACE@[52; 53) |
41 | WHITESPACE@[55; 56) | 44 | IDENT@[53; 55) "E4" |
45 | WHITESPACE@[55; 56) | ||
42 | L_CURLY@[56; 57) | 46 | L_CURLY@[56; 57) |
43 | ENUM_VARIANT@[57; 63) | 47 | ENUM_VARIANT@[57; 63) |
44 | WHITESPACE@[57; 62) | 48 | WHITESPACE@[57; 62) |
@@ -49,9 +53,10 @@ FILE@[0; 182) | |||
49 | WHITESPACE@[66; 68) | 53 | WHITESPACE@[66; 68) |
50 | ENUM_ITEM@[68; 182) | 54 | ENUM_ITEM@[68; 182) |
51 | ENUM_KW@[68; 72) | 55 | ENUM_KW@[68; 72) |
52 | WHITESPACE@[72; 73) | 56 | NAME@[72; 76) |
53 | IDENT@[73; 75) "E5" | 57 | WHITESPACE@[72; 73) |
54 | WHITESPACE@[75; 76) | 58 | IDENT@[73; 75) "E5" |
59 | WHITESPACE@[75; 76) | ||
55 | L_CURLY@[76; 77) | 60 | L_CURLY@[76; 77) |
56 | ENUM_VARIANT@[77; 83) | 61 | ENUM_VARIANT@[77; 83) |
57 | WHITESPACE@[77; 82) | 62 | WHITESPACE@[77; 82) |