From ca6e93f091bc6f2e9dc26e842fc87d614089cf9d Mon Sep 17 00:00:00 2001 From: Aleksey Kladov Date: Sat, 10 Feb 2018 14:10:02 +0300 Subject: G: use names in structs --- .../parser/err/0000_struct_field_missing_comma.txt | 7 +- .../data/parser/err/0001_item_recovery_in_file.txt | 7 +- tests/data/parser/err/0003_C++_semicolon.txt | 7 +- .../data/parser/err/0006_named_field_recovery.txt | 7 +- tests/data/parser/err/0007_stray_curly_in_file.txt | 5 +- .../err/0009_broken_struct_type_parameter.txt | 10 +-- tests/data/parser/inline/0006_extern_struct.txt | 5 +- tests/data/parser/ok/0001_struct_item.txt | 7 +- tests/data/parser/ok/0002_struct_item_field.txt | 7 +- tests/data/parser/ok/0008_mod_item.txt | 7 +- tests/data/parser/ok/0016_struct_flavors.txt | 29 +++++---- tests/data/parser/ok/0018_struct_type_params.txt | 75 +++++++++++++--------- tests/data/parser/ok/0020_type_param_bounds.txt | 45 +++++++------ 13 files changed, 129 insertions(+), 89 deletions(-) (limited to 'tests') diff --git a/tests/data/parser/err/0000_struct_field_missing_comma.txt b/tests/data/parser/err/0000_struct_field_missing_comma.txt index d94b4fd9e..2c761694c 100644 --- a/tests/data/parser/err/0000_struct_field_missing_comma.txt +++ b/tests/data/parser/err/0000_struct_field_missing_comma.txt @@ -1,9 +1,10 @@ FILE@[0; 34) STRUCT_ITEM@[0; 34) STRUCT_KW@[0; 6) - WHITESPACE@[6; 7) - IDENT@[7; 8) "S" - WHITESPACE@[8; 9) + NAME@[6; 9) + WHITESPACE@[6; 7) + IDENT@[7; 8) "S" + WHITESPACE@[8; 9) L_CURLY@[9; 10) NAMED_FIELD@[10; 26) WHITESPACE@[10; 15) diff --git a/tests/data/parser/err/0001_item_recovery_in_file.txt b/tests/data/parser/err/0001_item_recovery_in_file.txt index c33113c6d..e41ddc009 100644 --- a/tests/data/parser/err/0001_item_recovery_in_file.txt +++ b/tests/data/parser/err/0001_item_recovery_in_file.txt @@ -9,8 +9,9 @@ FILE@[0; 21) WHITESPACE@[8; 10) STRUCT_ITEM@[10; 21) STRUCT_KW@[10; 16) - WHITESPACE@[16; 17) - IDENT@[17; 18) "S" - WHITESPACE@[18; 19) + NAME@[16; 19) + WHITESPACE@[16; 17) + IDENT@[17; 18) "S" + WHITESPACE@[18; 19) L_CURLY@[19; 20) R_CURLY@[20; 21) diff --git a/tests/data/parser/err/0003_C++_semicolon.txt b/tests/data/parser/err/0003_C++_semicolon.txt index d77c06378..e567b0775 100644 --- a/tests/data/parser/err/0003_C++_semicolon.txt +++ b/tests/data/parser/err/0003_C++_semicolon.txt @@ -1,9 +1,10 @@ FILE@[0; 40) STRUCT_ITEM@[0; 39) STRUCT_KW@[0; 6) - WHITESPACE@[6; 7) - IDENT@[7; 8) "S" - WHITESPACE@[8; 9) + NAME@[6; 9) + WHITESPACE@[6; 7) + IDENT@[7; 8) "S" + WHITESPACE@[8; 9) L_CURLY@[9; 10) NAMED_FIELD@[10; 21) WHITESPACE@[10; 15) diff --git a/tests/data/parser/err/0006_named_field_recovery.txt b/tests/data/parser/err/0006_named_field_recovery.txt index 0437bf2e7..7886beeb8 100644 --- a/tests/data/parser/err/0006_named_field_recovery.txt +++ b/tests/data/parser/err/0006_named_field_recovery.txt @@ -1,9 +1,10 @@ FILE@[0; 74) STRUCT_ITEM@[0; 74) STRUCT_KW@[0; 6) - WHITESPACE@[6; 7) - IDENT@[7; 8) "S" - WHITESPACE@[8; 9) + NAME@[6; 9) + WHITESPACE@[6; 7) + IDENT@[7; 8) "S" + WHITESPACE@[8; 9) L_CURLY@[9; 10) NAMED_FIELD@[10; 21) WHITESPACE@[10; 15) diff --git a/tests/data/parser/err/0007_stray_curly_in_file.txt b/tests/data/parser/err/0007_stray_curly_in_file.txt index 6460d06d8..f20807bfe 100644 --- a/tests/data/parser/err/0007_stray_curly_in_file.txt +++ b/tests/data/parser/err/0007_stray_curly_in_file.txt @@ -5,8 +5,9 @@ FILE@[0; 31) WHITESPACE@[1; 3) STRUCT_ITEM@[3; 14) STRUCT_KW@[3; 9) - WHITESPACE@[9; 10) - IDENT@[10; 11) "S" + NAME@[9; 11) + WHITESPACE@[9; 10) + IDENT@[10; 11) "S" SEMI@[11; 12) WHITESPACE@[12; 14) ERROR@[14; 17) diff --git a/tests/data/parser/err/0009_broken_struct_type_parameter.txt b/tests/data/parser/err/0009_broken_struct_type_parameter.txt index f329735b6..9434a764a 100644 --- a/tests/data/parser/err/0009_broken_struct_type_parameter.txt +++ b/tests/data/parser/err/0009_broken_struct_type_parameter.txt @@ -1,8 +1,9 @@ FILE@[0; 43) STRUCT_ITEM@[0; 12) STRUCT_KW@[0; 6) - WHITESPACE@[6; 7) - IDENT@[7; 8) "S" + NAME@[6; 8) + WHITESPACE@[6; 7) + IDENT@[7; 8) "S" TYPE_PARAM_LIST@[8; 12) L_ANGLE@[8; 9) ERROR@[9; 12) @@ -36,7 +37,8 @@ FILE@[0; 43) WHITESPACE@[31; 33) STRUCT_ITEM@[33; 43) STRUCT_KW@[33; 39) - WHITESPACE@[39; 40) - IDENT@[40; 41) "T" + NAME@[39; 41) + WHITESPACE@[39; 40) + IDENT@[40; 41) "T" SEMI@[41; 42) WHITESPACE@[42; 43) diff --git a/tests/data/parser/inline/0006_extern_struct.txt b/tests/data/parser/inline/0006_extern_struct.txt index 13917d7f3..93a5b0477 100644 --- a/tests/data/parser/inline/0006_extern_struct.txt +++ b/tests/data/parser/inline/0006_extern_struct.txt @@ -5,7 +5,8 @@ FILE@[0; 19) err: `expected `fn` or `{`` STRUCT_ITEM@[7; 19) STRUCT_KW@[7; 13) - WHITESPACE@[13; 14) - IDENT@[14; 17) "Foo" + NAME@[13; 17) + WHITESPACE@[13; 14) + IDENT@[14; 17) "Foo" SEMI@[17; 18) WHITESPACE@[18; 19) diff --git a/tests/data/parser/ok/0001_struct_item.txt b/tests/data/parser/ok/0001_struct_item.txt index c280a434f..b0195c316 100644 --- a/tests/data/parser/ok/0001_struct_item.txt +++ b/tests/data/parser/ok/0001_struct_item.txt @@ -1,9 +1,10 @@ FILE@[0; 13) STRUCT_ITEM@[0; 13) STRUCT_KW@[0; 6) - WHITESPACE@[6; 7) - IDENT@[7; 8) "S" - WHITESPACE@[8; 9) + NAME@[6; 9) + WHITESPACE@[6; 7) + IDENT@[7; 8) "S" + WHITESPACE@[8; 9) L_CURLY@[9; 10) WHITESPACE@[10; 12) R_CURLY@[12; 13) diff --git a/tests/data/parser/ok/0002_struct_item_field.txt b/tests/data/parser/ok/0002_struct_item_field.txt index 5a7bfbaec..285e6a8ef 100644 --- a/tests/data/parser/ok/0002_struct_item_field.txt +++ b/tests/data/parser/ok/0002_struct_item_field.txt @@ -1,9 +1,10 @@ FILE@[0; 25) STRUCT_ITEM@[0; 25) STRUCT_KW@[0; 6) - WHITESPACE@[6; 7) - IDENT@[7; 8) "S" - WHITESPACE@[8; 9) + NAME@[6; 9) + WHITESPACE@[6; 7) + IDENT@[7; 8) "S" + WHITESPACE@[8; 9) L_CURLY@[9; 10) NAMED_FIELD@[10; 24) WHITESPACE@[10; 15) diff --git a/tests/data/parser/ok/0008_mod_item.txt b/tests/data/parser/ok/0008_mod_item.txt index aacf1ffc7..99cc30e98 100644 --- a/tests/data/parser/ok/0008_mod_item.txt +++ b/tests/data/parser/ok/0008_mod_item.txt @@ -35,9 +35,10 @@ FILE@[0; 118) WHITESPACE@[47; 52) STRUCT_ITEM@[52; 64) STRUCT_KW@[52; 58) - WHITESPACE@[58; 59) - IDENT@[59; 60) "S" - WHITESPACE@[60; 61) + NAME@[58; 61) + WHITESPACE@[58; 59) + IDENT@[59; 60) "S" + WHITESPACE@[60; 61) L_CURLY@[61; 62) R_CURLY@[62; 63) WHITESPACE@[63; 64) diff --git a/tests/data/parser/ok/0016_struct_flavors.txt b/tests/data/parser/ok/0016_struct_flavors.txt index d5d3a0183..445559250 100644 --- a/tests/data/parser/ok/0016_struct_flavors.txt +++ b/tests/data/parser/ok/0016_struct_flavors.txt @@ -1,31 +1,35 @@ FILE@[0; 97) STRUCT_ITEM@[0; 10) STRUCT_KW@[0; 6) - WHITESPACE@[6; 7) - IDENT@[7; 8) "A" + NAME@[6; 8) + WHITESPACE@[6; 7) + IDENT@[7; 8) "A" SEMI@[8; 9) WHITESPACE@[9; 10) STRUCT_ITEM@[10; 22) STRUCT_KW@[10; 16) - WHITESPACE@[16; 17) - IDENT@[17; 18) "B" - WHITESPACE@[18; 19) + NAME@[16; 19) + WHITESPACE@[16; 17) + IDENT@[17; 18) "B" + WHITESPACE@[18; 19) L_CURLY@[19; 20) R_CURLY@[20; 21) WHITESPACE@[21; 22) STRUCT_ITEM@[22; 35) STRUCT_KW@[22; 28) - WHITESPACE@[28; 29) - IDENT@[29; 30) "C" + NAME@[28; 30) + WHITESPACE@[28; 29) + IDENT@[29; 30) "C" L_PAREN@[30; 31) R_PAREN@[31; 32) SEMI@[32; 33) WHITESPACE@[33; 35) STRUCT_ITEM@[35; 76) STRUCT_KW@[35; 41) - WHITESPACE@[41; 42) - IDENT@[42; 43) "D" - WHITESPACE@[43; 44) + NAME@[41; 44) + WHITESPACE@[41; 42) + IDENT@[42; 43) "D" + WHITESPACE@[43; 44) L_CURLY@[44; 45) NAMED_FIELD@[45; 56) WHITESPACE@[45; 50) @@ -48,8 +52,9 @@ FILE@[0; 97) WHITESPACE@[74; 76) STRUCT_ITEM@[76; 97) STRUCT_KW@[76; 82) - WHITESPACE@[82; 83) - IDENT@[83; 84) "E" + NAME@[82; 84) + WHITESPACE@[82; 83) + IDENT@[83; 84) "E" L_PAREN@[84; 85) POS_FIELD@[85; 90) VISIBILITY@[85; 89) diff --git a/tests/data/parser/ok/0018_struct_type_params.txt b/tests/data/parser/ok/0018_struct_type_params.txt index 6df786f42..34b73e8fd 100644 --- a/tests/data/parser/ok/0018_struct_type_params.txt +++ b/tests/data/parser/ok/0018_struct_type_params.txt @@ -1,8 +1,9 @@ FILE@[0; 290) STRUCT_ITEM@[0; 14) STRUCT_KW@[0; 6) - WHITESPACE@[6; 7) - IDENT@[7; 9) "S1" + NAME@[6; 9) + WHITESPACE@[6; 7) + IDENT@[7; 9) "S1" TYPE_PARAM_LIST@[9; 12) L_ANGLE@[9; 10) TYPE_PARAM@[10; 11) @@ -12,8 +13,9 @@ FILE@[0; 290) WHITESPACE@[13; 14) STRUCT_ITEM@[14; 33) STRUCT_KW@[14; 20) - WHITESPACE@[20; 21) - IDENT@[21; 23) "S2" + NAME@[20; 23) + WHITESPACE@[20; 21) + IDENT@[21; 23) "S2" TYPE_PARAM_LIST@[23; 26) L_ANGLE@[23; 24) TYPE_PARAM@[24; 25) @@ -27,8 +29,9 @@ FILE@[0; 290) WHITESPACE@[32; 33) STRUCT_ITEM@[33; 58) STRUCT_KW@[33; 39) - WHITESPACE@[39; 40) - IDENT@[40; 42) "S3" + NAME@[39; 42) + WHITESPACE@[39; 40) + IDENT@[40; 42) "S3" TYPE_PARAM_LIST@[42; 46) L_ANGLE@[42; 43) TYPE_PARAM@[43; 44) @@ -47,8 +50,9 @@ FILE@[0; 290) WHITESPACE@[56; 58) STRUCT_ITEM@[58; 71) STRUCT_KW@[58; 64) - WHITESPACE@[64; 65) - IDENT@[65; 67) "S4" + NAME@[64; 67) + WHITESPACE@[64; 65) + IDENT@[65; 67) "S4" TYPE_PARAM_LIST@[67; 69) L_ANGLE@[67; 68) R_ANGLE@[68; 69) @@ -56,8 +60,9 @@ FILE@[0; 290) WHITESPACE@[70; 71) STRUCT_ITEM@[71; 86) STRUCT_KW@[71; 77) - WHITESPACE@[77; 78) - IDENT@[78; 80) "S5" + NAME@[77; 80) + WHITESPACE@[77; 78) + IDENT@[78; 80) "S5" TYPE_PARAM_LIST@[80; 84) L_ANGLE@[80; 81) LIFETIME_PARAM@[81; 83) @@ -67,8 +72,9 @@ FILE@[0; 290) WHITESPACE@[85; 86) STRUCT_ITEM@[86; 102) STRUCT_KW@[86; 92) - WHITESPACE@[92; 93) - IDENT@[93; 95) "S6" + NAME@[92; 95) + WHITESPACE@[92; 93) + IDENT@[93; 95) "S6" TYPE_PARAM_LIST@[95; 100) L_ANGLE@[95; 96) LIFETIME_PARAM@[96; 99) @@ -79,8 +85,9 @@ FILE@[0; 290) WHITESPACE@[101; 102) STRUCT_ITEM@[102; 121) STRUCT_KW@[102; 108) - WHITESPACE@[108; 109) - IDENT@[109; 111) "S7" + NAME@[108; 111) + WHITESPACE@[108; 109) + IDENT@[109; 111) "S7" TYPE_PARAM_LIST@[111; 119) L_ANGLE@[111; 112) LIFETIME_PARAM@[112; 118) @@ -93,8 +100,9 @@ FILE@[0; 290) WHITESPACE@[120; 121) STRUCT_ITEM@[121; 143) STRUCT_KW@[121; 127) - WHITESPACE@[127; 128) - IDENT@[128; 130) "S8" + NAME@[127; 130) + WHITESPACE@[127; 128) + IDENT@[128; 130) "S8" TYPE_PARAM_LIST@[130; 141) L_ANGLE@[130; 131) LIFETIME_PARAM@[131; 140) @@ -110,8 +118,9 @@ FILE@[0; 290) WHITESPACE@[142; 143) STRUCT_ITEM@[143; 167) STRUCT_KW@[143; 149) - WHITESPACE@[149; 150) - IDENT@[150; 152) "S9" + NAME@[149; 152) + WHITESPACE@[149; 150) + IDENT@[150; 152) "S9" TYPE_PARAM_LIST@[152; 165) L_ANGLE@[152; 153) LIFETIME_PARAM@[153; 164) @@ -128,8 +137,9 @@ FILE@[0; 290) WHITESPACE@[166; 167) STRUCT_ITEM@[167; 184) STRUCT_KW@[167; 173) - WHITESPACE@[173; 174) - IDENT@[174; 177) "S10" + NAME@[173; 177) + WHITESPACE@[173; 174) + IDENT@[174; 177) "S10" TYPE_PARAM_LIST@[177; 182) L_ANGLE@[177; 178) LIFETIME_PARAM@[178; 180) @@ -140,8 +150,9 @@ FILE@[0; 290) WHITESPACE@[183; 184) STRUCT_ITEM@[184; 204) STRUCT_KW@[184; 190) - WHITESPACE@[190; 191) - IDENT@[191; 194) "S11" + NAME@[190; 194) + WHITESPACE@[190; 191) + IDENT@[191; 194) "S11" TYPE_PARAM_LIST@[194; 202) L_ANGLE@[194; 195) LIFETIME_PARAM@[195; 197) @@ -155,8 +166,9 @@ FILE@[0; 290) WHITESPACE@[203; 204) STRUCT_ITEM@[204; 235) STRUCT_KW@[204; 210) - WHITESPACE@[210; 211) - IDENT@[211; 214) "S12" + NAME@[210; 214) + WHITESPACE@[210; 211) + IDENT@[211; 214) "S12" TYPE_PARAM_LIST@[214; 232) L_ANGLE@[214; 215) LIFETIME_PARAM@[215; 222) @@ -178,8 +190,9 @@ FILE@[0; 290) WHITESPACE@[233; 235) STRUCT_ITEM@[235; 250) STRUCT_KW@[235; 241) - WHITESPACE@[241; 242) - IDENT@[242; 245) "S13" + NAME@[241; 245) + WHITESPACE@[241; 242) + IDENT@[242; 245) "S13" TYPE_PARAM_LIST@[245; 248) L_ANGLE@[245; 246) TYPE_PARAM@[246; 247) @@ -189,8 +202,9 @@ FILE@[0; 290) WHITESPACE@[249; 250) STRUCT_ITEM@[250; 268) STRUCT_KW@[250; 256) - WHITESPACE@[256; 257) - IDENT@[257; 260) "S14" + NAME@[256; 260) + WHITESPACE@[256; 257) + IDENT@[257; 260) "S14" TYPE_PARAM_LIST@[260; 266) L_ANGLE@[260; 261) TYPE_PARAM@[261; 262) @@ -204,8 +218,9 @@ FILE@[0; 290) WHITESPACE@[267; 268) STRUCT_ITEM@[268; 290) STRUCT_KW@[268; 274) - WHITESPACE@[274; 275) - IDENT@[275; 278) "S15" + NAME@[274; 278) + WHITESPACE@[274; 275) + IDENT@[275; 278) "S15" TYPE_PARAM_LIST@[278; 288) L_ANGLE@[278; 279) LIFETIME_PARAM@[279; 281) diff --git a/tests/data/parser/ok/0020_type_param_bounds.txt b/tests/data/parser/ok/0020_type_param_bounds.txt index 6f65d150a..a1c0cbc37 100644 --- a/tests/data/parser/ok/0020_type_param_bounds.txt +++ b/tests/data/parser/ok/0020_type_param_bounds.txt @@ -1,8 +1,9 @@ FILE@[0; 200) STRUCT_ITEM@[0; 13) STRUCT_KW@[0; 6) - WHITESPACE@[6; 7) - IDENT@[7; 8) "A" + NAME@[6; 8) + WHITESPACE@[6; 7) + IDENT@[7; 8) "A" TYPE_PARAM_LIST@[8; 11) L_ANGLE@[8; 9) TYPE_PARAM@[9; 10) @@ -12,8 +13,9 @@ FILE@[0; 200) WHITESPACE@[12; 13) STRUCT_ITEM@[13; 27) STRUCT_KW@[13; 19) - WHITESPACE@[19; 20) - IDENT@[20; 21) "B" + NAME@[19; 21) + WHITESPACE@[19; 20) + IDENT@[20; 21) "B" TYPE_PARAM_LIST@[21; 25) L_ANGLE@[21; 22) TYPE_PARAM@[22; 24) @@ -24,8 +26,9 @@ FILE@[0; 200) WHITESPACE@[26; 27) STRUCT_ITEM@[27; 44) STRUCT_KW@[27; 33) - WHITESPACE@[33; 34) - IDENT@[34; 35) "C" + NAME@[33; 35) + WHITESPACE@[33; 34) + IDENT@[34; 35) "C" TYPE_PARAM_LIST@[35; 42) L_ANGLE@[35; 36) TYPE_PARAM@[36; 41) @@ -38,8 +41,9 @@ FILE@[0; 200) WHITESPACE@[43; 44) STRUCT_ITEM@[44; 64) STRUCT_KW@[44; 50) - WHITESPACE@[50; 51) - IDENT@[51; 52) "D" + NAME@[50; 52) + WHITESPACE@[50; 51) + IDENT@[51; 52) "D" TYPE_PARAM_LIST@[52; 62) L_ANGLE@[52; 53) TYPE_PARAM@[53; 61) @@ -55,8 +59,9 @@ FILE@[0; 200) WHITESPACE@[63; 64) STRUCT_ITEM@[64; 87) STRUCT_KW@[64; 70) - WHITESPACE@[70; 71) - IDENT@[71; 72) "E" + NAME@[70; 72) + WHITESPACE@[70; 71) + IDENT@[71; 72) "E" TYPE_PARAM_LIST@[72; 85) L_ANGLE@[72; 73) TYPE_PARAM@[73; 84) @@ -74,8 +79,9 @@ FILE@[0; 200) WHITESPACE@[86; 87) STRUCT_ITEM@[87; 117) STRUCT_KW@[87; 93) - WHITESPACE@[93; 94) - IDENT@[94; 95) "F" + NAME@[93; 95) + WHITESPACE@[93; 94) + IDENT@[94; 95) "F" TYPE_PARAM_LIST@[95; 115) L_ANGLE@[95; 96) TYPE_PARAM@[96; 114) @@ -98,8 +104,9 @@ FILE@[0; 200) WHITESPACE@[116; 117) STRUCT_ITEM@[117; 144) STRUCT_KW@[117; 123) - WHITESPACE@[123; 124) - IDENT@[124; 125) "G" + NAME@[123; 125) + WHITESPACE@[123; 124) + IDENT@[124; 125) "G" TYPE_PARAM_LIST@[125; 142) L_ANGLE@[125; 126) TYPE_PARAM@[126; 141) @@ -120,8 +127,9 @@ FILE@[0; 200) WHITESPACE@[143; 144) STRUCT_ITEM@[144; 181) STRUCT_KW@[144; 150) - WHITESPACE@[150; 151) - IDENT@[151; 152) "H" + NAME@[150; 152) + WHITESPACE@[150; 151) + IDENT@[151; 152) "H" TYPE_PARAM_LIST@[152; 179) L_ANGLE@[152; 153) TYPE_PARAM@[153; 178) @@ -151,8 +159,9 @@ FILE@[0; 200) WHITESPACE@[180; 181) STRUCT_ITEM@[181; 200) STRUCT_KW@[181; 187) - WHITESPACE@[187; 188) - IDENT@[188; 189) "I" + NAME@[187; 189) + WHITESPACE@[187; 188) + IDENT@[188; 189) "I" TYPE_PARAM_LIST@[189; 198) L_ANGLE@[189; 190) TYPE_PARAM@[190; 192) -- cgit v1.2.3