Skip to content

Commit e40bddc

Browse files
committed
new grammar
1 parent 872537c commit e40bddc

1 file changed

Lines changed: 142 additions & 74 deletions

File tree

Python/graminit.c

Lines changed: 142 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -97,32 +97,50 @@ static arc arcs_5_1[3] = {
9797
{22, 4},
9898
{0, 1},
9999
};
100-
static arc arcs_5_2[1] = {
100+
static arc arcs_5_2[2] = {
101101
{12, 5},
102+
{23, 6},
102103
};
103104
static arc arcs_5_3[1] = {
104-
{21, 6},
105+
{21, 7},
105106
};
106107
static arc arcs_5_4[3] = {
107108
{19, 1},
108109
{23, 2},
109110
{0, 4},
110111
};
111-
static arc arcs_5_5[1] = {
112+
static arc arcs_5_5[2] = {
113+
{22, 8},
112114
{0, 5},
113115
};
114-
static arc arcs_5_6[2] = {
116+
static arc arcs_5_6[1] = {
117+
{12, 9},
118+
};
119+
static arc arcs_5_7[2] = {
115120
{22, 4},
116-
{0, 6},
121+
{0, 7},
122+
};
123+
static arc arcs_5_8[1] = {
124+
{23, 10},
125+
};
126+
static arc arcs_5_9[1] = {
127+
{0, 9},
117128
};
118-
static state states_5[7] = {
129+
static arc arcs_5_10[1] = {
130+
{23, 6},
131+
};
132+
static state states_5[11] = {
119133
{2, arcs_5_0},
120134
{3, arcs_5_1},
121-
{1, arcs_5_2},
135+
{2, arcs_5_2},
122136
{1, arcs_5_3},
123137
{3, arcs_5_4},
124-
{1, arcs_5_5},
125-
{2, arcs_5_6},
138+
{2, arcs_5_5},
139+
{1, arcs_5_6},
140+
{2, arcs_5_7},
141+
{1, arcs_5_8},
142+
{1, arcs_5_9},
143+
{1, arcs_5_10},
126144
};
127145
static arc arcs_6_0[2] = {
128146
{12, 1},
@@ -320,15 +338,24 @@ static arc arcs_19_2[2] = {
320338
static arc arcs_19_3[1] = {
321339
{21, 4},
322340
};
323-
static arc arcs_19_4[1] = {
341+
static arc arcs_19_4[2] = {
342+
{22, 5},
324343
{0, 4},
325344
};
326-
static state states_19[5] = {
345+
static arc arcs_19_5[1] = {
346+
{21, 6},
347+
};
348+
static arc arcs_19_6[1] = {
349+
{0, 6},
350+
};
351+
static state states_19[7] = {
327352
{1, arcs_19_0},
328353
{1, arcs_19_1},
329354
{2, arcs_19_2},
330355
{1, arcs_19_3},
331-
{1, arcs_19_4},
356+
{2, arcs_19_4},
357+
{1, arcs_19_5},
358+
{1, arcs_19_6},
332359
};
333360
static arc arcs_20_0[2] = {
334361
{48, 1},
@@ -958,11 +985,11 @@ static arc arcs_47_0[3] = {
958985
{51, 3},
959986
};
960987
static arc arcs_47_1[2] = {
961-
{9, 4},
988+
{117, 4},
962989
{18, 5},
963990
};
964991
static arc arcs_47_2[1] = {
965-
{117, 6},
992+
{118, 6},
966993
};
967994
static arc arcs_47_3[1] = {
968995
{12, 5},
@@ -1063,7 +1090,7 @@ static state states_51[5] = {
10631090
{2, arcs_51_4},
10641091
};
10651092
static arc arcs_52_0[1] = {
1066-
{118, 1},
1093+
{119, 1},
10671094
};
10681095
static arc arcs_52_1[1] = {
10691096
{12, 2},
@@ -1097,115 +1124,154 @@ static state states_52[8] = {
10971124
{1, arcs_52_6},
10981125
{1, arcs_52_7},
10991126
};
1100-
static dfa dfas[53] = {
1127+
static arc arcs_53_0[1] = {
1128+
{120, 1},
1129+
};
1130+
static arc arcs_53_1[2] = {
1131+
{22, 2},
1132+
{0, 1},
1133+
};
1134+
static arc arcs_53_2[2] = {
1135+
{120, 1},
1136+
{0, 2},
1137+
};
1138+
static state states_53[3] = {
1139+
{1, arcs_53_0},
1140+
{2, arcs_53_1},
1141+
{2, arcs_53_2},
1142+
};
1143+
static arc arcs_54_0[1] = {
1144+
{21, 1},
1145+
};
1146+
static arc arcs_54_1[2] = {
1147+
{20, 2},
1148+
{0, 1},
1149+
};
1150+
static arc arcs_54_2[1] = {
1151+
{21, 3},
1152+
};
1153+
static arc arcs_54_3[1] = {
1154+
{0, 3},
1155+
};
1156+
static state states_54[4] = {
1157+
{1, arcs_54_0},
1158+
{2, arcs_54_1},
1159+
{1, arcs_54_2},
1160+
{1, arcs_54_3},
1161+
};
1162+
static dfa dfas[55] = {
11011163
{256, "single_input", 0, 3, states_0,
1102-
"\004\030\001\000\260\360\265\200\034\200\000\000\060\122\136"},
1164+
"\004\030\001\000\260\360\265\200\034\200\000\000\060\122\236\000"},
11031165
{257, "file_input", 0, 2, states_1,
1104-
"\204\030\001\000\260\360\265\200\034\200\000\000\060\122\136"},
1166+
"\204\030\001\000\260\360\265\200\034\200\000\000\060\122\236\000"},
11051167
{258, "eval_input", 0, 3, states_2,
1106-
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036"},
1168+
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036\000"},
11071169
{259, "funcdef", 0, 6, states_3,
1108-
"\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000"},
1170+
"\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
11091171
{260, "parameters", 0, 4, states_4,
1110-
"\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000"},
1111-
{261, "varargslist", 0, 7, states_5,
1112-
"\000\020\201\000\000\000\000\000\000\000\000\000\000\000\000"},
1172+
"\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000"},
1173+
{261, "varargslist", 0, 11, states_5,
1174+
"\000\020\201\000\000\000\000\000\000\000\000\000\000\000\000\000"},
11131175
{262, "fpdef", 0, 4, states_6,
1114-
"\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000"},
1176+
"\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000\000"},
11151177
{263, "fplist", 0, 3, states_7,
1116-
"\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000"},
1178+
"\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000\000"},
11171179
{264, "stmt", 0, 2, states_8,
1118-
"\000\030\001\000\260\360\265\200\034\200\000\000\060\122\136"},
1180+
"\000\030\001\000\260\360\265\200\034\200\000\000\060\122\236\000"},
11191181
{265, "simple_stmt", 0, 4, states_9,
1120-
"\000\020\001\000\260\360\265\000\000\200\000\000\060\122\036"},
1182+
"\000\020\001\000\260\360\265\000\000\200\000\000\060\122\036\000"},
11211183
{266, "small_stmt", 0, 2, states_10,
1122-
"\000\020\001\000\260\360\265\000\000\200\000\000\060\122\036"},
1184+
"\000\020\001\000\260\360\265\000\000\200\000\000\060\122\036\000"},
11231185
{267, "expr_stmt", 0, 2, states_11,
1124-
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036"},
1186+
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036\000"},
11251187
{268, "print_stmt", 0, 3, states_12,
1126-
"\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000"},
1188+
"\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000\000"},
11271189
{269, "del_stmt", 0, 3, states_13,
1128-
"\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000"},
1190+
"\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000\000"},
11291191
{270, "pass_stmt", 0, 2, states_14,
1130-
"\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000"},
1192+
"\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000"},
11311193
{271, "flow_stmt", 0, 2, states_15,
1132-
"\000\000\000\000\000\360\000\000\000\000\000\000\000\000\000"},
1194+
"\000\000\000\000\000\360\000\000\000\000\000\000\000\000\000\000"},
11331195
{272, "break_stmt", 0, 2, states_16,
1134-
"\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000"},
1196+
"\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000"},
11351197
{273, "continue_stmt", 0, 2, states_17,
1136-
"\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000"},
1198+
"\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000"},
11371199
{274, "return_stmt", 0, 3, states_18,
1138-
"\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000"},
1139-
{275, "raise_stmt", 0, 5, states_19,
1140-
"\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000"},
1200+
"\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000\000"},
1201+
{275, "raise_stmt", 0, 7, states_19,
1202+
"\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000"},
11411203
{276, "import_stmt", 0, 9, states_20,
1142-
"\000\000\000\000\000\000\005\000\000\000\000\000\000\000\000"},
1204+
"\000\000\000\000\000\000\005\000\000\000\000\000\000\000\000\000"},
11431205
{277, "dotted_name", 0, 2, states_21,
1144-
"\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000"},
1206+
"\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
11451207
{278, "global_stmt", 0, 3, states_22,
1146-
"\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000"},
1208+
"\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000"},
11471209
{279, "access_stmt", 0, 7, states_23,
1148-
"\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000"},
1210+
"\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000"},
11491211
{280, "accesstype", 0, 2, states_24,
1150-
"\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000"},
1212+
"\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
11511213
{281, "exec_stmt", 0, 7, states_25,
1152-
"\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000"},
1214+
"\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000"},
11531215
{282, "compound_stmt", 0, 2, states_26,
1154-
"\000\010\000\000\000\000\000\200\034\000\000\000\000\000\100"},
1216+
"\000\010\000\000\000\000\000\200\034\000\000\000\000\000\200\000"},
11551217
{283, "if_stmt", 0, 8, states_27,
1156-
"\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000"},
1218+
"\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000"},
11571219
{284, "while_stmt", 0, 8, states_28,
1158-
"\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000"},
1220+
"\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000"},
11591221
{285, "for_stmt", 0, 10, states_29,
1160-
"\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000"},
1222+
"\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000"},
11611223
{286, "try_stmt", 0, 10, states_30,
1162-
"\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000"},
1224+
"\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000"},
11631225
{287, "except_clause", 0, 5, states_31,
1164-
"\000\000\000\000\000\000\000\000\200\000\000\000\000\000\000"},
1226+
"\000\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000"},
11651227
{288, "suite", 0, 5, states_32,
1166-
"\004\020\001\000\260\360\265\000\000\200\000\000\060\122\036"},
1228+
"\004\020\001\000\260\360\265\000\000\200\000\000\060\122\036\000"},
11671229
{289, "test", 0, 4, states_33,
1168-
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036"},
1230+
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036\000"},
11691231
{290, "and_test", 0, 2, states_34,
1170-
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\016"},
1232+
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\016\000"},
11711233
{291, "not_test", 0, 3, states_35,
1172-
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\016"},
1234+
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\016\000"},
11731235
{292, "comparison", 0, 2, states_36,
1174-
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
1236+
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
11751237
{293, "comp_op", 0, 4, states_37,
1176-
"\000\000\000\000\000\000\000\002\000\200\374\003\000\000\000"},
1238+
"\000\000\000\000\000\000\000\002\000\200\374\003\000\000\000\000"},
11771239
{294, "expr", 0, 2, states_38,
1178-
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
1240+
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
11791241
{295, "xor_expr", 0, 2, states_39,
1180-
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
1242+
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
11811243
{296, "and_expr", 0, 2, states_40,
1182-
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
1244+
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
11831245
{297, "shift_expr", 0, 2, states_41,
1184-
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
1246+
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
11851247
{298, "arith_expr", 0, 2, states_42,
1186-
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
1248+
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
11871249
{299, "term", 0, 2, states_43,
1188-
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
1250+
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
11891251
{300, "factor", 0, 4, states_44,
1190-
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
1252+
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
11911253
{301, "atom", 0, 11, states_45,
1192-
"\000\020\001\000\000\000\000\000\000\000\000\000\000\120\016"},
1254+
"\000\020\001\000\000\000\000\000\000\000\000\000\000\120\016\000"},
11931255
{302, "lambdef", 0, 5, states_46,
1194-
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020"},
1256+
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\000"},
11951257
{303, "trailer", 0, 7, states_47,
1196-
"\000\000\001\000\000\000\010\000\000\000\000\000\000\020\000"},
1258+
"\000\000\001\000\000\000\010\000\000\000\000\000\000\020\000\000"},
11971259
{304, "subscript", 0, 4, states_48,
1198-
"\000\120\001\000\000\000\000\000\000\200\000\000\060\122\036"},
1260+
"\000\120\001\000\000\000\000\000\000\200\000\000\060\122\036\000"},
11991261
{305, "exprlist", 0, 3, states_49,
1200-
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
1262+
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
12011263
{306, "testlist", 0, 3, states_50,
1202-
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036"},
1264+
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036\000"},
12031265
{307, "dictmaker", 0, 5, states_51,
1204-
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036"},
1266+
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036\000"},
12051267
{308, "classdef", 0, 8, states_52,
1206-
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\100"},
1268+
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\200\000"},
1269+
{309, "arglist", 0, 3, states_53,
1270+
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036\000"},
1271+
{310, "argument", 0, 4, states_54,
1272+
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036\000"},
12071273
};
1208-
static label labels[119] = {
1274+
static label labels[121] = {
12091275
{0, "EMPTY"},
12101276
{256, 0},
12111277
{4, 0},
@@ -1323,12 +1389,14 @@ static label labels[119] = {
13231389
{2, 0},
13241390
{3, 0},
13251391
{1, "lambda"},
1392+
{309, 0},
13261393
{304, 0},
13271394
{1, "class"},
1395+
{310, 0},
13281396
};
13291397
grammar gram = {
1330-
53,
1398+
55,
13311399
dfas,
1332-
{119, labels},
1400+
{121, labels},
13331401
256
13341402
};

0 commit comments

Comments
 (0)