new grammar

This commit is contained in:
Guido van Rossum 1995-07-07 22:44:10 +00:00
parent 872537cc86
commit e40bddc3ef
1 changed files with 194 additions and 126 deletions

View File

@ -97,32 +97,50 @@ static arc arcs_5_1[3] = {
{22, 4},
{0, 1},
};
static arc arcs_5_2[1] = {
static arc arcs_5_2[2] = {
{12, 5},
{23, 6},
};
static arc arcs_5_3[1] = {
{21, 6},
{21, 7},
};
static arc arcs_5_4[3] = {
{19, 1},
{23, 2},
{0, 4},
};
static arc arcs_5_5[1] = {
static arc arcs_5_5[2] = {
{22, 8},
{0, 5},
};
static arc arcs_5_6[2] = {
{22, 4},
{0, 6},
static arc arcs_5_6[1] = {
{12, 9},
};
static state states_5[7] = {
static arc arcs_5_7[2] = {
{22, 4},
{0, 7},
};
static arc arcs_5_8[1] = {
{23, 10},
};
static arc arcs_5_9[1] = {
{0, 9},
};
static arc arcs_5_10[1] = {
{23, 6},
};
static state states_5[11] = {
{2, arcs_5_0},
{3, arcs_5_1},
{1, arcs_5_2},
{2, arcs_5_2},
{1, arcs_5_3},
{3, arcs_5_4},
{1, arcs_5_5},
{2, arcs_5_6},
{2, arcs_5_5},
{1, arcs_5_6},
{2, arcs_5_7},
{1, arcs_5_8},
{1, arcs_5_9},
{1, arcs_5_10},
};
static arc arcs_6_0[2] = {
{12, 1},
@ -320,15 +338,24 @@ static arc arcs_19_2[2] = {
static arc arcs_19_3[1] = {
{21, 4},
};
static arc arcs_19_4[1] = {
static arc arcs_19_4[2] = {
{22, 5},
{0, 4},
};
static state states_19[5] = {
static arc arcs_19_5[1] = {
{21, 6},
};
static arc arcs_19_6[1] = {
{0, 6},
};
static state states_19[7] = {
{1, arcs_19_0},
{1, arcs_19_1},
{2, arcs_19_2},
{1, arcs_19_3},
{1, arcs_19_4},
{2, arcs_19_4},
{1, arcs_19_5},
{1, arcs_19_6},
};
static arc arcs_20_0[2] = {
{48, 1},
@ -958,11 +985,11 @@ static arc arcs_47_0[3] = {
{51, 3},
};
static arc arcs_47_1[2] = {
{9, 4},
{117, 4},
{18, 5},
};
static arc arcs_47_2[1] = {
{117, 6},
{118, 6},
};
static arc arcs_47_3[1] = {
{12, 5},
@ -1063,7 +1090,7 @@ static state states_51[5] = {
{2, arcs_51_4},
};
static arc arcs_52_0[1] = {
{118, 1},
{119, 1},
};
static arc arcs_52_1[1] = {
{12, 2},
@ -1097,115 +1124,154 @@ static state states_52[8] = {
{1, arcs_52_6},
{1, arcs_52_7},
};
static dfa dfas[53] = {
{256, "single_input", 0, 3, states_0,
"\004\030\001\000\260\360\265\200\034\200\000\000\060\122\136"},
{257, "file_input", 0, 2, states_1,
"\204\030\001\000\260\360\265\200\034\200\000\000\060\122\136"},
{258, "eval_input", 0, 3, states_2,
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036"},
{259, "funcdef", 0, 6, states_3,
"\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000"},
{260, "parameters", 0, 4, states_4,
"\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000"},
{261, "varargslist", 0, 7, states_5,
"\000\020\201\000\000\000\000\000\000\000\000\000\000\000\000"},
{262, "fpdef", 0, 4, states_6,
"\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000"},
{263, "fplist", 0, 3, states_7,
"\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000"},
{264, "stmt", 0, 2, states_8,
"\000\030\001\000\260\360\265\200\034\200\000\000\060\122\136"},
{265, "simple_stmt", 0, 4, states_9,
"\000\020\001\000\260\360\265\000\000\200\000\000\060\122\036"},
{266, "small_stmt", 0, 2, states_10,
"\000\020\001\000\260\360\265\000\000\200\000\000\060\122\036"},
{267, "expr_stmt", 0, 2, states_11,
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036"},
{268, "print_stmt", 0, 3, states_12,
"\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000"},
{269, "del_stmt", 0, 3, states_13,
"\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000"},
{270, "pass_stmt", 0, 2, states_14,
"\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000"},
{271, "flow_stmt", 0, 2, states_15,
"\000\000\000\000\000\360\000\000\000\000\000\000\000\000\000"},
{272, "break_stmt", 0, 2, states_16,
"\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000"},
{273, "continue_stmt", 0, 2, states_17,
"\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000"},
{274, "return_stmt", 0, 3, states_18,
"\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000"},
{275, "raise_stmt", 0, 5, states_19,
"\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000"},
{276, "import_stmt", 0, 9, states_20,
"\000\000\000\000\000\000\005\000\000\000\000\000\000\000\000"},
{277, "dotted_name", 0, 2, states_21,
"\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000"},
{278, "global_stmt", 0, 3, states_22,
"\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000"},
{279, "access_stmt", 0, 7, states_23,
"\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000"},
{280, "accesstype", 0, 2, states_24,
"\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000"},
{281, "exec_stmt", 0, 7, states_25,
"\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000"},
{282, "compound_stmt", 0, 2, states_26,
"\000\010\000\000\000\000\000\200\034\000\000\000\000\000\100"},
{283, "if_stmt", 0, 8, states_27,
"\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000"},
{284, "while_stmt", 0, 8, states_28,
"\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000"},
{285, "for_stmt", 0, 10, states_29,
"\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000"},
{286, "try_stmt", 0, 10, states_30,
"\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000"},
{287, "except_clause", 0, 5, states_31,
"\000\000\000\000\000\000\000\000\200\000\000\000\000\000\000"},
{288, "suite", 0, 5, states_32,
"\004\020\001\000\260\360\265\000\000\200\000\000\060\122\036"},
{289, "test", 0, 4, states_33,
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036"},
{290, "and_test", 0, 2, states_34,
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\016"},
{291, "not_test", 0, 3, states_35,
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\016"},
{292, "comparison", 0, 2, states_36,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
{293, "comp_op", 0, 4, states_37,
"\000\000\000\000\000\000\000\002\000\200\374\003\000\000\000"},
{294, "expr", 0, 2, states_38,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
{295, "xor_expr", 0, 2, states_39,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
{296, "and_expr", 0, 2, states_40,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
{297, "shift_expr", 0, 2, states_41,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
{298, "arith_expr", 0, 2, states_42,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
{299, "term", 0, 2, states_43,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
{300, "factor", 0, 4, states_44,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
{301, "atom", 0, 11, states_45,
"\000\020\001\000\000\000\000\000\000\000\000\000\000\120\016"},
{302, "lambdef", 0, 5, states_46,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020"},
{303, "trailer", 0, 7, states_47,
"\000\000\001\000\000\000\010\000\000\000\000\000\000\020\000"},
{304, "subscript", 0, 4, states_48,
"\000\120\001\000\000\000\000\000\000\200\000\000\060\122\036"},
{305, "exprlist", 0, 3, states_49,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016"},
{306, "testlist", 0, 3, states_50,
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036"},
{307, "dictmaker", 0, 5, states_51,
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036"},
{308, "classdef", 0, 8, states_52,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\100"},
static arc arcs_53_0[1] = {
{120, 1},
};
static label labels[119] = {
static arc arcs_53_1[2] = {
{22, 2},
{0, 1},
};
static arc arcs_53_2[2] = {
{120, 1},
{0, 2},
};
static state states_53[3] = {
{1, arcs_53_0},
{2, arcs_53_1},
{2, arcs_53_2},
};
static arc arcs_54_0[1] = {
{21, 1},
};
static arc arcs_54_1[2] = {
{20, 2},
{0, 1},
};
static arc arcs_54_2[1] = {
{21, 3},
};
static arc arcs_54_3[1] = {
{0, 3},
};
static state states_54[4] = {
{1, arcs_54_0},
{2, arcs_54_1},
{1, arcs_54_2},
{1, arcs_54_3},
};
static dfa dfas[55] = {
{256, "single_input", 0, 3, states_0,
"\004\030\001\000\260\360\265\200\034\200\000\000\060\122\236\000"},
{257, "file_input", 0, 2, states_1,
"\204\030\001\000\260\360\265\200\034\200\000\000\060\122\236\000"},
{258, "eval_input", 0, 3, states_2,
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036\000"},
{259, "funcdef", 0, 6, states_3,
"\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
{260, "parameters", 0, 4, states_4,
"\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000"},
{261, "varargslist", 0, 11, states_5,
"\000\020\201\000\000\000\000\000\000\000\000\000\000\000\000\000"},
{262, "fpdef", 0, 4, states_6,
"\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000\000"},
{263, "fplist", 0, 3, states_7,
"\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000\000"},
{264, "stmt", 0, 2, states_8,
"\000\030\001\000\260\360\265\200\034\200\000\000\060\122\236\000"},
{265, "simple_stmt", 0, 4, states_9,
"\000\020\001\000\260\360\265\000\000\200\000\000\060\122\036\000"},
{266, "small_stmt", 0, 2, states_10,
"\000\020\001\000\260\360\265\000\000\200\000\000\060\122\036\000"},
{267, "expr_stmt", 0, 2, states_11,
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036\000"},
{268, "print_stmt", 0, 3, states_12,
"\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000\000"},
{269, "del_stmt", 0, 3, states_13,
"\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000\000"},
{270, "pass_stmt", 0, 2, states_14,
"\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000"},
{271, "flow_stmt", 0, 2, states_15,
"\000\000\000\000\000\360\000\000\000\000\000\000\000\000\000\000"},
{272, "break_stmt", 0, 2, states_16,
"\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000"},
{273, "continue_stmt", 0, 2, states_17,
"\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000"},
{274, "return_stmt", 0, 3, states_18,
"\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000\000"},
{275, "raise_stmt", 0, 7, states_19,
"\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000"},
{276, "import_stmt", 0, 9, states_20,
"\000\000\000\000\000\000\005\000\000\000\000\000\000\000\000\000"},
{277, "dotted_name", 0, 2, states_21,
"\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
{278, "global_stmt", 0, 3, states_22,
"\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000"},
{279, "access_stmt", 0, 7, states_23,
"\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000"},
{280, "accesstype", 0, 2, states_24,
"\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
{281, "exec_stmt", 0, 7, states_25,
"\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000"},
{282, "compound_stmt", 0, 2, states_26,
"\000\010\000\000\000\000\000\200\034\000\000\000\000\000\200\000"},
{283, "if_stmt", 0, 8, states_27,
"\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000"},
{284, "while_stmt", 0, 8, states_28,
"\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000"},
{285, "for_stmt", 0, 10, states_29,
"\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000"},
{286, "try_stmt", 0, 10, states_30,
"\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000"},
{287, "except_clause", 0, 5, states_31,
"\000\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000"},
{288, "suite", 0, 5, states_32,
"\004\020\001\000\260\360\265\000\000\200\000\000\060\122\036\000"},
{289, "test", 0, 4, states_33,
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036\000"},
{290, "and_test", 0, 2, states_34,
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\016\000"},
{291, "not_test", 0, 3, states_35,
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\016\000"},
{292, "comparison", 0, 2, states_36,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
{293, "comp_op", 0, 4, states_37,
"\000\000\000\000\000\000\000\002\000\200\374\003\000\000\000\000"},
{294, "expr", 0, 2, states_38,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
{295, "xor_expr", 0, 2, states_39,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
{296, "and_expr", 0, 2, states_40,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
{297, "shift_expr", 0, 2, states_41,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
{298, "arith_expr", 0, 2, states_42,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
{299, "term", 0, 2, states_43,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
{300, "factor", 0, 4, states_44,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
{301, "atom", 0, 11, states_45,
"\000\020\001\000\000\000\000\000\000\000\000\000\000\120\016\000"},
{302, "lambdef", 0, 5, states_46,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\000"},
{303, "trailer", 0, 7, states_47,
"\000\000\001\000\000\000\010\000\000\000\000\000\000\020\000\000"},
{304, "subscript", 0, 4, states_48,
"\000\120\001\000\000\000\000\000\000\200\000\000\060\122\036\000"},
{305, "exprlist", 0, 3, states_49,
"\000\020\001\000\000\000\000\000\000\000\000\000\060\122\016\000"},
{306, "testlist", 0, 3, states_50,
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036\000"},
{307, "dictmaker", 0, 5, states_51,
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036\000"},
{308, "classdef", 0, 8, states_52,
"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\200\000"},
{309, "arglist", 0, 3, states_53,
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036\000"},
{310, "argument", 0, 4, states_54,
"\000\020\001\000\000\000\000\000\000\200\000\000\060\122\036\000"},
};
static label labels[121] = {
{0, "EMPTY"},
{256, 0},
{4, 0},
@ -1323,12 +1389,14 @@ static label labels[119] = {
{2, 0},
{3, 0},
{1, "lambda"},
{309, 0},
{304, 0},
{1, "class"},
{310, 0},
};
grammar gram = {
53,
55,
dfas,
{119, labels},
{121, labels},
256
};