From ee480b5d0a8c23ea2f7778f39ec9810b523e92fa Mon Sep 17 00:00:00 2001 From: Ivan Levkivskyi Date: Tue, 13 Sep 2016 16:38:54 +0200 Subject: [PATCH 01/16] Start implementation of PEP 526; tests and docs needed! --- ast35/Grammar/Grammar | 3 +- ast35/Include/Python-ast.h | 4 +- ast35/Include/graminit.h | 143 +-- ast35/Parser/Python.asdl | 2 +- ast35/Python/Python-ast.c | 8 +- ast35/Python/ast.c | 75 +- ast35/Python/graminit.c | 1933 ++++++++++++++++++------------------ ast35/pgen | Bin 0 -> 303567 bytes 8 files changed, 1130 insertions(+), 1038 deletions(-) create mode 100755 ast35/pgen diff --git a/ast35/Grammar/Grammar b/ast35/Grammar/Grammar index 7aef9bec..4b481d78 100644 --- a/ast35/Grammar/Grammar +++ b/ast35/Grammar/Grammar @@ -44,8 +44,9 @@ stmt: simple_stmt | compound_stmt simple_stmt: small_stmt (';' small_stmt)* [';'] NEWLINE small_stmt: (expr_stmt | del_stmt | pass_stmt | flow_stmt | import_stmt | global_stmt | nonlocal_stmt | assert_stmt) -expr_stmt: testlist_star_expr (augassign (yield_expr|testlist) | +expr_stmt: testlist_star_expr (annassign | augassign (yield_expr|testlist) | ('=' (yield_expr|testlist_star_expr))* [TYPE_COMMENT]) +annassign: ':' test ['=' test] testlist_star_expr: (test|star_expr) (',' (test|star_expr))* [','] augassign: ('+=' | '-=' | '*=' | '@=' | '/=' | '%=' | '&=' | '|=' | '^=' | '<<=' | '>>=' | '**=' | '//=') diff --git a/ast35/Include/Python-ast.h b/ast35/Include/Python-ast.h index 83b92ba0..6b3c2c1c 100644 --- a/ast35/Include/Python-ast.h +++ b/ast35/Include/Python-ast.h @@ -118,7 +118,7 @@ struct _stmt { struct { asdl_seq *targets; expr_ty value; - string type_comment; + expr_ty type_comment; } Assign; struct { @@ -469,7 +469,7 @@ stmt_ty _Ta35_Return(expr_ty value, int lineno, int col_offset, PyArena *arena); stmt_ty _Ta35_Delete(asdl_seq * targets, int lineno, int col_offset, PyArena *arena); #define Assign(a0, a1, a2, a3, a4, a5) _Ta35_Assign(a0, a1, a2, a3, a4, a5) -stmt_ty _Ta35_Assign(asdl_seq * targets, expr_ty value, string type_comment, +stmt_ty _Ta35_Assign(asdl_seq * targets, expr_ty value, expr_ty type_comment, int lineno, int col_offset, PyArena *arena); #define AugAssign(a0, a1, a2, a3, a4, a5) _Ta35_AugAssign(a0, a1, a2, a3, a4, a5) stmt_ty _Ta35_AugAssign(expr_ty target, operator_ty op, expr_ty value, int diff --git a/ast35/Include/graminit.h b/ast35/Include/graminit.h index 69d03726..93003981 100644 --- a/ast35/Include/graminit.h +++ b/ast35/Include/graminit.h @@ -17,74 +17,75 @@ #define simple_stmt 270 #define small_stmt 271 #define expr_stmt 272 -#define testlist_star_expr 273 -#define augassign 274 -#define del_stmt 275 -#define pass_stmt 276 -#define flow_stmt 277 -#define break_stmt 278 -#define continue_stmt 279 -#define return_stmt 280 -#define yield_stmt 281 -#define raise_stmt 282 -#define import_stmt 283 -#define import_name 284 -#define import_from 285 -#define import_as_name 286 -#define dotted_as_name 287 -#define import_as_names 288 -#define dotted_as_names 289 -#define dotted_name 290 -#define global_stmt 291 -#define nonlocal_stmt 292 -#define assert_stmt 293 -#define compound_stmt 294 -#define async_stmt 295 -#define if_stmt 296 -#define while_stmt 297 -#define for_stmt 298 -#define try_stmt 299 -#define with_stmt 300 -#define with_item 301 -#define except_clause 302 -#define suite 303 -#define test 304 -#define test_nocond 305 -#define lambdef 306 -#define lambdef_nocond 307 -#define or_test 308 -#define and_test 309 -#define not_test 310 -#define comparison 311 -#define comp_op 312 -#define star_expr 313 -#define expr 314 -#define xor_expr 315 -#define and_expr 316 -#define shift_expr 317 -#define arith_expr 318 -#define term 319 -#define factor 320 -#define power 321 -#define atom_expr 322 -#define atom 323 -#define testlist_comp 324 -#define trailer 325 -#define subscriptlist 326 -#define subscript 327 -#define sliceop 328 -#define exprlist 329 -#define testlist 330 -#define dictorsetmaker 331 -#define classdef 332 -#define arglist 333 -#define argument 334 -#define comp_iter 335 -#define comp_for 336 -#define comp_if 337 -#define encoding_decl 338 -#define yield_expr 339 -#define yield_arg 340 -#define func_type_input 341 -#define func_type 342 -#define typelist 343 +#define annassign 273 +#define testlist_star_expr 274 +#define augassign 275 +#define del_stmt 276 +#define pass_stmt 277 +#define flow_stmt 278 +#define break_stmt 279 +#define continue_stmt 280 +#define return_stmt 281 +#define yield_stmt 282 +#define raise_stmt 283 +#define import_stmt 284 +#define import_name 285 +#define import_from 286 +#define import_as_name 287 +#define dotted_as_name 288 +#define import_as_names 289 +#define dotted_as_names 290 +#define dotted_name 291 +#define global_stmt 292 +#define nonlocal_stmt 293 +#define assert_stmt 294 +#define compound_stmt 295 +#define async_stmt 296 +#define if_stmt 297 +#define while_stmt 298 +#define for_stmt 299 +#define try_stmt 300 +#define with_stmt 301 +#define with_item 302 +#define except_clause 303 +#define suite 304 +#define test 305 +#define test_nocond 306 +#define lambdef 307 +#define lambdef_nocond 308 +#define or_test 309 +#define and_test 310 +#define not_test 311 +#define comparison 312 +#define comp_op 313 +#define star_expr 314 +#define expr 315 +#define xor_expr 316 +#define and_expr 317 +#define shift_expr 318 +#define arith_expr 319 +#define term 320 +#define factor 321 +#define power 322 +#define atom_expr 323 +#define atom 324 +#define testlist_comp 325 +#define trailer 326 +#define subscriptlist 327 +#define subscript 328 +#define sliceop 329 +#define exprlist 330 +#define testlist 331 +#define dictorsetmaker 332 +#define classdef 333 +#define arglist 334 +#define argument 335 +#define comp_iter 336 +#define comp_for 337 +#define comp_if 338 +#define encoding_decl 339 +#define yield_expr 340 +#define yield_arg 341 +#define func_type_input 342 +#define func_type 343 +#define typelist 344 diff --git a/ast35/Parser/Python.asdl b/ast35/Parser/Python.asdl index e4937256..98737a32 100644 --- a/ast35/Parser/Python.asdl +++ b/ast35/Parser/Python.asdl @@ -23,7 +23,7 @@ module Python | Return(expr? value) | Delete(expr* targets) - | Assign(expr* targets, expr value, string? type_comment) + | Assign(expr* targets, expr value, expr? type_comment) | AugAssign(expr target, operator op, expr value) -- use 'orelse' because else is a keyword in target languages diff --git a/ast35/Python/Python-ast.c b/ast35/Python/Python-ast.c index eb866be9..9ad9d642 100644 --- a/ast35/Python/Python-ast.c +++ b/ast35/Python/Python-ast.c @@ -1369,7 +1369,7 @@ Delete(asdl_seq * targets, int lineno, int col_offset, PyArena *arena) } stmt_ty -Assign(asdl_seq * targets, expr_ty value, string type_comment, int lineno, int +Assign(asdl_seq * targets, expr_ty value, expr_ty type_comment, int lineno, int col_offset, PyArena *arena) { stmt_ty p; @@ -2724,7 +2724,7 @@ ast2obj_stmt(void* _o) if (_PyObject_SetAttrId(result, &PyId_value, value) == -1) goto failed; Py_DECREF(value); - value = ast2obj_string(o->v.Assign.type_comment); + value = ast2obj_expr(o->v.Assign.type_comment); if (!value) goto failed; if (_PyObject_SetAttrId(result, &PyId_type_comment, value) == -1) goto failed; @@ -4553,7 +4553,7 @@ obj2ast_stmt(PyObject* obj, stmt_ty* out, PyArena* arena) if (isinstance) { asdl_seq* targets; expr_ty value; - string type_comment; + expr_ty type_comment; if (_PyObject_HasAttrId(obj, &PyId_targets)) { int res; @@ -4594,7 +4594,7 @@ obj2ast_stmt(PyObject* obj, stmt_ty* out, PyArena* arena) int res; tmp = _PyObject_GetAttrId(obj, &PyId_type_comment); if (tmp == NULL) goto failed; - res = obj2ast_string(tmp, &type_comment, arena); + res = obj2ast_expr(tmp, &type_comment, arena); if (res != 0) goto failed; Py_CLEAR(tmp); } else { diff --git a/ast35/Python/ast.c b/ast35/Python/ast.c index 34186f07..be028bb8 100644 --- a/ast35/Python/ast.c +++ b/ast35/Python/ast.c @@ -335,7 +335,9 @@ validate_stmt(stmt_ty stmt) return validate_assignlist(stmt->v.Delete.targets, Del); case Assign_kind: return validate_assignlist(stmt->v.Assign.targets, Store) && - validate_expr(stmt->v.Assign.value, Load); + validate_expr(stmt->v.Assign.value, Load) && + (!stmt->v.Assign.type_comment || + validate_expr(stmt->v.Assign.type_comment, Load)); case AugAssign_kind: return validate_expr(stmt->v.AugAssign.target, Store) && validate_expr(stmt->v.AugAssign.value, Load); @@ -2999,12 +3001,71 @@ ast_for_expr_stmt(struct compiling *c, const node *n) return AugAssign(expr1, newoperator, expr2, LINENO(n), n->n_col_offset, c->c_arena); } + else if (TYPE(CHILD(n, 1)) == annassign) { + expr_ty expr1, type_comment, expr3; + node *ch = CHILD(n, 0); + node *ann = CHILD(n, 1); + asdl_seq *targets = _Py_asdl_seq_new(1, c->c_arena); + if (!targets) + return NULL; + + expr1 = ast_for_testlist(c, ch); + if (!expr1) { + return NULL; + } + switch (expr1->kind) { + case Name_kind: + if (forbidden_name(c, expr1->v.Name.id, n, 0)) { + return NULL; + } + expr1->v.Name.ctx = Store; + break; + case Attribute_kind: + if (forbidden_name(c, expr1->v.Attribute.attr, n, 1)) { + return NULL; + } + expr1->v.Attribute.ctx = Store; + break; + case Subscript_kind: + expr1->v.Subscript.ctx = Store; + break; + case List_kind: + ast_error(c, ch, + "only single target (not list) can be annotated"); + return NULL; + case Tuple_kind: + ast_error(c, ch, + "only single target (not tuple) can be annotated"); + return NULL; + default: + ast_error(c, ch, + "illegal target for annotation"); + return NULL; + } + ch = CHILD(ann, 1); + type_comment = ast_for_expr(c, ch); + if (!type_comment) { + return NULL; + } + if (NCH(ann) == 2) { + expr3 = NameConstant(Py_None, LINENO(n), n->n_col_offset, c->c_arena); + } + else { + ch = CHILD(ann, 3); + expr3 = ast_for_expr(c, ch); + } + if (!expr3) { + return NULL; + } + asdl_seq_SET(targets, 0, expr1); + return Assign(targets, expr3, type_comment, + LINENO(n), n->n_col_offset, c->c_arena); + } else { int i, nch_minus_type, has_type_comment; asdl_seq *targets; - node *value; - expr_ty expression; - string type_comment; + node *value, *chc; + expr_ty expression, type_comment; /* a normal assignment */ REQ(CHILD(n, 1), EQUAL); @@ -3039,8 +3100,10 @@ ast_for_expr_stmt(struct compiling *c, const node *n) expression = ast_for_expr(c, value); if (!expression) return NULL; - if (has_type_comment) - type_comment = NEW_TYPE_COMMENT(CHILD(n, nch_minus_type)); + if (has_type_comment) { + chc = CHILD(n, nch_minus_type); + type_comment = Str(NEW_TYPE_COMMENT(chc), LINENO(chc), chc->n_col_offset, c->c_arena); + } else type_comment = NULL; return Assign(targets, expression, type_comment, LINENO(n), n->n_col_offset, c->c_arena); diff --git a/ast35/Python/graminit.c b/ast35/Python/graminit.c index 29972006..75b05de4 100644 --- a/ast35/Python/graminit.c +++ b/ast35/Python/graminit.c @@ -485,56 +485,79 @@ static state states_15[2] = { static arc arcs_16_0[1] = { {48, 1}, }; -static arc arcs_16_1[4] = { +static arc arcs_16_1[5] = { {49, 2}, - {32, 3}, - {28, 4}, + {50, 3}, + {32, 4}, + {28, 2}, {0, 1}, }; -static arc arcs_16_2[2] = { - {50, 4}, - {9, 4}, +static arc arcs_16_2[1] = { + {0, 2}, }; static arc arcs_16_3[2] = { - {50, 5}, - {48, 5}, + {51, 2}, + {9, 2}, }; -static arc arcs_16_4[1] = { - {0, 4}, +static arc arcs_16_4[2] = { + {51, 5}, + {48, 5}, }; static arc arcs_16_5[3] = { - {32, 3}, - {28, 4}, + {32, 4}, + {28, 2}, {0, 5}, }; static state states_16[6] = { {1, arcs_16_0}, - {4, arcs_16_1}, - {2, arcs_16_2}, + {5, arcs_16_1}, + {1, arcs_16_2}, {2, arcs_16_3}, - {1, arcs_16_4}, + {2, arcs_16_4}, {3, arcs_16_5}, }; -static arc arcs_17_0[2] = { +static arc arcs_17_0[1] = { + {27, 1}, +}; +static arc arcs_17_1[1] = { + {26, 2}, +}; +static arc arcs_17_2[2] = { + {32, 3}, + {0, 2}, +}; +static arc arcs_17_3[1] = { + {26, 4}, +}; +static arc arcs_17_4[1] = { + {0, 4}, +}; +static state states_17[5] = { + {1, arcs_17_0}, + {1, arcs_17_1}, + {2, arcs_17_2}, + {1, arcs_17_3}, + {1, arcs_17_4}, +}; +static arc arcs_18_0[2] = { {26, 1}, - {51, 1}, + {52, 1}, }; -static arc arcs_17_1[2] = { +static arc arcs_18_1[2] = { {33, 2}, {0, 1}, }; -static arc arcs_17_2[3] = { +static arc arcs_18_2[3] = { {26, 1}, - {51, 1}, + {52, 1}, {0, 2}, }; -static state states_17[3] = { - {2, arcs_17_0}, - {2, arcs_17_1}, - {3, arcs_17_2}, +static state states_18[3] = { + {2, arcs_18_0}, + {2, arcs_18_1}, + {3, arcs_18_2}, }; -static arc arcs_18_0[13] = { - {52, 1}, +static arc arcs_19_0[13] = { {53, 1}, {54, 1}, {55, 1}, @@ -547,60 +570,51 @@ static arc arcs_18_0[13] = { {62, 1}, {63, 1}, {64, 1}, -}; -static arc arcs_18_1[1] = { - {0, 1}, -}; -static state states_18[2] = { - {13, arcs_18_0}, - {1, arcs_18_1}, -}; -static arc arcs_19_0[1] = { {65, 1}, }; static arc arcs_19_1[1] = { - {66, 2}, -}; -static arc arcs_19_2[1] = { - {0, 2}, + {0, 1}, }; -static state states_19[3] = { - {1, arcs_19_0}, +static state states_19[2] = { + {13, arcs_19_0}, {1, arcs_19_1}, - {1, arcs_19_2}, }; static arc arcs_20_0[1] = { - {67, 1}, + {66, 1}, }; static arc arcs_20_1[1] = { - {0, 1}, + {67, 2}, }; -static state states_20[2] = { +static arc arcs_20_2[1] = { + {0, 2}, +}; +static state states_20[3] = { {1, arcs_20_0}, {1, arcs_20_1}, + {1, arcs_20_2}, }; -static arc arcs_21_0[5] = { +static arc arcs_21_0[1] = { {68, 1}, - {69, 1}, - {70, 1}, - {71, 1}, - {72, 1}, }; static arc arcs_21_1[1] = { {0, 1}, }; static state states_21[2] = { - {5, arcs_21_0}, + {1, arcs_21_0}, {1, arcs_21_1}, }; -static arc arcs_22_0[1] = { +static arc arcs_22_0[5] = { + {69, 1}, + {70, 1}, + {71, 1}, + {72, 1}, {73, 1}, }; static arc arcs_22_1[1] = { {0, 1}, }; static state states_22[2] = { - {1, arcs_22_0}, + {5, arcs_22_0}, {1, arcs_22_1}, }; static arc arcs_23_0[1] = { @@ -616,142 +630,133 @@ static state states_23[2] = { static arc arcs_24_0[1] = { {75, 1}, }; -static arc arcs_24_1[2] = { - {9, 2}, +static arc arcs_24_1[1] = { {0, 1}, }; -static arc arcs_24_2[1] = { - {0, 2}, -}; -static state states_24[3] = { +static state states_24[2] = { {1, arcs_24_0}, - {2, arcs_24_1}, - {1, arcs_24_2}, + {1, arcs_24_1}, }; static arc arcs_25_0[1] = { - {50, 1}, + {76, 1}, }; -static arc arcs_25_1[1] = { +static arc arcs_25_1[2] = { + {9, 2}, {0, 1}, }; -static state states_25[2] = { +static arc arcs_25_2[1] = { + {0, 2}, +}; +static state states_25[3] = { {1, arcs_25_0}, - {1, arcs_25_1}, + {2, arcs_25_1}, + {1, arcs_25_2}, }; static arc arcs_26_0[1] = { - {76, 1}, + {51, 1}, +}; +static arc arcs_26_1[1] = { + {0, 1}, +}; +static state states_26[2] = { + {1, arcs_26_0}, + {1, arcs_26_1}, }; -static arc arcs_26_1[2] = { +static arc arcs_27_0[1] = { + {77, 1}, +}; +static arc arcs_27_1[2] = { {26, 2}, {0, 1}, }; -static arc arcs_26_2[2] = { - {77, 3}, +static arc arcs_27_2[2] = { + {78, 3}, {0, 2}, }; -static arc arcs_26_3[1] = { +static arc arcs_27_3[1] = { {26, 4}, }; -static arc arcs_26_4[1] = { +static arc arcs_27_4[1] = { {0, 4}, }; -static state states_26[5] = { - {1, arcs_26_0}, - {2, arcs_26_1}, - {2, arcs_26_2}, - {1, arcs_26_3}, - {1, arcs_26_4}, +static state states_27[5] = { + {1, arcs_27_0}, + {2, arcs_27_1}, + {2, arcs_27_2}, + {1, arcs_27_3}, + {1, arcs_27_4}, }; -static arc arcs_27_0[2] = { - {78, 1}, +static arc arcs_28_0[2] = { {79, 1}, + {80, 1}, }; -static arc arcs_27_1[1] = { +static arc arcs_28_1[1] = { {0, 1}, }; -static state states_27[2] = { - {2, arcs_27_0}, - {1, arcs_27_1}, +static state states_28[2] = { + {2, arcs_28_0}, + {1, arcs_28_1}, }; -static arc arcs_28_0[1] = { - {80, 1}, +static arc arcs_29_0[1] = { + {81, 1}, }; -static arc arcs_28_1[1] = { - {81, 2}, +static arc arcs_29_1[1] = { + {82, 2}, }; -static arc arcs_28_2[1] = { +static arc arcs_29_2[1] = { {0, 2}, }; -static state states_28[3] = { - {1, arcs_28_0}, - {1, arcs_28_1}, - {1, arcs_28_2}, +static state states_29[3] = { + {1, arcs_29_0}, + {1, arcs_29_1}, + {1, arcs_29_2}, }; -static arc arcs_29_0[1] = { - {77, 1}, +static arc arcs_30_0[1] = { + {78, 1}, }; -static arc arcs_29_1[3] = { - {82, 2}, +static arc arcs_30_1[3] = { {83, 2}, + {84, 2}, {12, 3}, }; -static arc arcs_29_2[4] = { - {82, 2}, +static arc arcs_30_2[4] = { {83, 2}, + {84, 2}, {12, 3}, - {80, 4}, + {81, 4}, }; -static arc arcs_29_3[1] = { - {80, 4}, +static arc arcs_30_3[1] = { + {81, 4}, }; -static arc arcs_29_4[3] = { +static arc arcs_30_4[3] = { {34, 5}, {13, 6}, - {84, 5}, + {85, 5}, }; -static arc arcs_29_5[1] = { +static arc arcs_30_5[1] = { {0, 5}, }; -static arc arcs_29_6[1] = { - {84, 7}, +static arc arcs_30_6[1] = { + {85, 7}, }; -static arc arcs_29_7[1] = { +static arc arcs_30_7[1] = { {15, 5}, }; -static state states_29[8] = { - {1, arcs_29_0}, - {3, arcs_29_1}, - {4, arcs_29_2}, - {1, arcs_29_3}, - {3, arcs_29_4}, - {1, arcs_29_5}, - {1, arcs_29_6}, - {1, arcs_29_7}, -}; -static arc arcs_30_0[1] = { - {23, 1}, -}; -static arc arcs_30_1[2] = { - {86, 2}, - {0, 1}, -}; -static arc arcs_30_2[1] = { - {23, 3}, -}; -static arc arcs_30_3[1] = { - {0, 3}, -}; -static state states_30[4] = { +static state states_30[8] = { {1, arcs_30_0}, - {2, arcs_30_1}, - {1, arcs_30_2}, + {3, arcs_30_1}, + {4, arcs_30_2}, {1, arcs_30_3}, + {3, arcs_30_4}, + {1, arcs_30_5}, + {1, arcs_30_6}, + {1, arcs_30_7}, }; static arc arcs_31_0[1] = { - {12, 1}, + {23, 1}, }; static arc arcs_31_1[2] = { - {86, 2}, + {87, 2}, {0, 1}, }; static arc arcs_31_2[1] = { @@ -767,37 +772,45 @@ static state states_31[4] = { {1, arcs_31_3}, }; static arc arcs_32_0[1] = { - {85, 1}, + {12, 1}, }; static arc arcs_32_1[2] = { - {33, 2}, + {87, 2}, {0, 1}, }; -static arc arcs_32_2[2] = { - {85, 1}, - {0, 2}, +static arc arcs_32_2[1] = { + {23, 3}, +}; +static arc arcs_32_3[1] = { + {0, 3}, }; -static state states_32[3] = { +static state states_32[4] = { {1, arcs_32_0}, {2, arcs_32_1}, - {2, arcs_32_2}, + {1, arcs_32_2}, + {1, arcs_32_3}, }; static arc arcs_33_0[1] = { - {87, 1}, + {86, 1}, }; static arc arcs_33_1[2] = { - {33, 0}, + {33, 2}, {0, 1}, }; -static state states_33[2] = { +static arc arcs_33_2[2] = { + {86, 1}, + {0, 2}, +}; +static state states_33[3] = { {1, arcs_33_0}, {2, arcs_33_1}, + {2, arcs_33_2}, }; static arc arcs_34_0[1] = { - {23, 1}, + {88, 1}, }; static arc arcs_34_1[2] = { - {82, 0}, + {33, 0}, {0, 1}, }; static state states_34[2] = { @@ -805,19 +818,15 @@ static state states_34[2] = { {2, arcs_34_1}, }; static arc arcs_35_0[1] = { - {88, 1}, -}; -static arc arcs_35_1[1] = { - {23, 2}, + {23, 1}, }; -static arc arcs_35_2[2] = { - {33, 1}, - {0, 2}, +static arc arcs_35_1[2] = { + {83, 0}, + {0, 1}, }; -static state states_35[3] = { +static state states_35[2] = { {1, arcs_35_0}, - {1, arcs_35_1}, - {2, arcs_35_2}, + {2, arcs_35_1}, }; static arc arcs_36_0[1] = { {89, 1}, @@ -838,97 +847,76 @@ static arc arcs_37_0[1] = { {90, 1}, }; static arc arcs_37_1[1] = { - {26, 2}, + {23, 2}, }; static arc arcs_37_2[2] = { + {33, 1}, + {0, 2}, +}; +static state states_37[3] = { + {1, arcs_37_0}, + {1, arcs_37_1}, + {2, arcs_37_2}, +}; +static arc arcs_38_0[1] = { + {91, 1}, +}; +static arc arcs_38_1[1] = { + {26, 2}, +}; +static arc arcs_38_2[2] = { {33, 3}, {0, 2}, }; -static arc arcs_37_3[1] = { +static arc arcs_38_3[1] = { {26, 4}, }; -static arc arcs_37_4[1] = { +static arc arcs_38_4[1] = { {0, 4}, }; -static state states_37[5] = { - {1, arcs_37_0}, - {1, arcs_37_1}, - {2, arcs_37_2}, - {1, arcs_37_3}, - {1, arcs_37_4}, +static state states_38[5] = { + {1, arcs_38_0}, + {1, arcs_38_1}, + {2, arcs_38_2}, + {1, arcs_38_3}, + {1, arcs_38_4}, }; -static arc arcs_38_0[9] = { - {91, 1}, +static arc arcs_39_0[9] = { {92, 1}, {93, 1}, {94, 1}, {95, 1}, + {96, 1}, {19, 1}, {18, 1}, {17, 1}, - {96, 1}, + {97, 1}, }; -static arc arcs_38_1[1] = { +static arc arcs_39_1[1] = { {0, 1}, }; -static state states_38[2] = { - {9, arcs_38_0}, - {1, arcs_38_1}, +static state states_39[2] = { + {9, arcs_39_0}, + {1, arcs_39_1}, }; -static arc arcs_39_0[1] = { +static arc arcs_40_0[1] = { {21, 1}, }; -static arc arcs_39_1[3] = { +static arc arcs_40_1[3] = { {19, 2}, - {95, 2}, - {93, 2}, -}; -static arc arcs_39_2[1] = { - {0, 2}, -}; -static state states_39[3] = { - {1, arcs_39_0}, - {3, arcs_39_1}, - {1, arcs_39_2}, -}; -static arc arcs_40_0[1] = { - {97, 1}, -}; -static arc arcs_40_1[1] = { - {26, 2}, + {96, 2}, + {94, 2}, }; static arc arcs_40_2[1] = { - {27, 3}, -}; -static arc arcs_40_3[1] = { - {29, 4}, -}; -static arc arcs_40_4[3] = { - {98, 1}, - {99, 5}, - {0, 4}, -}; -static arc arcs_40_5[1] = { - {27, 6}, -}; -static arc arcs_40_6[1] = { - {29, 7}, -}; -static arc arcs_40_7[1] = { - {0, 7}, + {0, 2}, }; -static state states_40[8] = { +static state states_40[3] = { {1, arcs_40_0}, - {1, arcs_40_1}, + {3, arcs_40_1}, {1, arcs_40_2}, - {1, arcs_40_3}, - {3, arcs_40_4}, - {1, arcs_40_5}, - {1, arcs_40_6}, - {1, arcs_40_7}, }; static arc arcs_41_0[1] = { - {100, 1}, + {98, 1}, }; static arc arcs_41_1[1] = { {26, 2}, @@ -939,8 +927,9 @@ static arc arcs_41_2[1] = { static arc arcs_41_3[1] = { {29, 4}, }; -static arc arcs_41_4[2] = { - {99, 5}, +static arc arcs_41_4[3] = { + {99, 1}, + {100, 5}, {0, 4}, }; static arc arcs_41_5[1] = { @@ -957,7 +946,7 @@ static state states_41[8] = { {1, arcs_41_1}, {1, arcs_41_2}, {1, arcs_41_3}, - {2, arcs_41_4}, + {3, arcs_41_4}, {1, arcs_41_5}, {1, arcs_41_6}, {1, arcs_41_7}, @@ -966,277 +955,289 @@ static arc arcs_42_0[1] = { {101, 1}, }; static arc arcs_42_1[1] = { - {66, 2}, + {26, 2}, }; static arc arcs_42_2[1] = { - {102, 3}, + {27, 3}, }; static arc arcs_42_3[1] = { - {9, 4}, + {29, 4}, }; -static arc arcs_42_4[1] = { - {27, 5}, +static arc arcs_42_4[2] = { + {100, 5}, + {0, 4}, }; -static arc arcs_42_5[2] = { - {28, 6}, - {29, 7}, +static arc arcs_42_5[1] = { + {27, 6}, }; static arc arcs_42_6[1] = { {29, 7}, }; -static arc arcs_42_7[2] = { - {99, 8}, +static arc arcs_42_7[1] = { {0, 7}, }; -static arc arcs_42_8[1] = { - {27, 9}, -}; -static arc arcs_42_9[1] = { - {29, 10}, -}; -static arc arcs_42_10[1] = { - {0, 10}, -}; -static state states_42[11] = { +static state states_42[8] = { {1, arcs_42_0}, {1, arcs_42_1}, {1, arcs_42_2}, {1, arcs_42_3}, - {1, arcs_42_4}, - {2, arcs_42_5}, + {2, arcs_42_4}, + {1, arcs_42_5}, {1, arcs_42_6}, - {2, arcs_42_7}, - {1, arcs_42_8}, - {1, arcs_42_9}, - {1, arcs_42_10}, + {1, arcs_42_7}, }; static arc arcs_43_0[1] = { - {103, 1}, + {102, 1}, }; static arc arcs_43_1[1] = { - {27, 2}, + {67, 2}, }; static arc arcs_43_2[1] = { - {29, 3}, + {103, 3}, }; -static arc arcs_43_3[2] = { - {104, 4}, - {105, 5}, +static arc arcs_43_3[1] = { + {9, 4}, }; static arc arcs_43_4[1] = { - {27, 6}, + {27, 5}, }; -static arc arcs_43_5[1] = { - {27, 7}, +static arc arcs_43_5[2] = { + {28, 6}, + {29, 7}, }; static arc arcs_43_6[1] = { - {29, 8}, + {29, 7}, }; -static arc arcs_43_7[1] = { - {29, 9}, +static arc arcs_43_7[2] = { + {100, 8}, + {0, 7}, }; -static arc arcs_43_8[4] = { - {104, 4}, - {99, 10}, - {105, 5}, - {0, 8}, +static arc arcs_43_8[1] = { + {27, 9}, }; static arc arcs_43_9[1] = { - {0, 9}, + {29, 10}, }; static arc arcs_43_10[1] = { - {27, 11}, -}; -static arc arcs_43_11[1] = { - {29, 12}, -}; -static arc arcs_43_12[2] = { - {105, 5}, - {0, 12}, + {0, 10}, }; -static state states_43[13] = { +static state states_43[11] = { {1, arcs_43_0}, {1, arcs_43_1}, {1, arcs_43_2}, - {2, arcs_43_3}, + {1, arcs_43_3}, {1, arcs_43_4}, - {1, arcs_43_5}, + {2, arcs_43_5}, {1, arcs_43_6}, - {1, arcs_43_7}, - {4, arcs_43_8}, + {2, arcs_43_7}, + {1, arcs_43_8}, {1, arcs_43_9}, {1, arcs_43_10}, - {1, arcs_43_11}, - {2, arcs_43_12}, }; static arc arcs_44_0[1] = { - {106, 1}, + {104, 1}, }; static arc arcs_44_1[1] = { - {107, 2}, + {27, 2}, }; -static arc arcs_44_2[2] = { - {33, 1}, - {27, 3}, +static arc arcs_44_2[1] = { + {29, 3}, }; static arc arcs_44_3[2] = { - {28, 4}, - {29, 5}, + {105, 4}, + {106, 5}, }; static arc arcs_44_4[1] = { - {29, 5}, + {27, 6}, }; static arc arcs_44_5[1] = { - {0, 5}, + {27, 7}, +}; +static arc arcs_44_6[1] = { + {29, 8}, +}; +static arc arcs_44_7[1] = { + {29, 9}, +}; +static arc arcs_44_8[4] = { + {105, 4}, + {100, 10}, + {106, 5}, + {0, 8}, +}; +static arc arcs_44_9[1] = { + {0, 9}, }; -static state states_44[6] = { +static arc arcs_44_10[1] = { + {27, 11}, +}; +static arc arcs_44_11[1] = { + {29, 12}, +}; +static arc arcs_44_12[2] = { + {106, 5}, + {0, 12}, +}; +static state states_44[13] = { {1, arcs_44_0}, {1, arcs_44_1}, - {2, arcs_44_2}, + {1, arcs_44_2}, {2, arcs_44_3}, {1, arcs_44_4}, {1, arcs_44_5}, + {1, arcs_44_6}, + {1, arcs_44_7}, + {4, arcs_44_8}, + {1, arcs_44_9}, + {1, arcs_44_10}, + {1, arcs_44_11}, + {2, arcs_44_12}, }; static arc arcs_45_0[1] = { - {26, 1}, + {107, 1}, }; -static arc arcs_45_1[2] = { - {86, 2}, - {0, 1}, +static arc arcs_45_1[1] = { + {108, 2}, }; -static arc arcs_45_2[1] = { - {108, 3}, +static arc arcs_45_2[2] = { + {33, 1}, + {27, 3}, }; -static arc arcs_45_3[1] = { - {0, 3}, +static arc arcs_45_3[2] = { + {28, 4}, + {29, 5}, }; -static state states_45[4] = { +static arc arcs_45_4[1] = { + {29, 5}, +}; +static arc arcs_45_5[1] = { + {0, 5}, +}; +static state states_45[6] = { {1, arcs_45_0}, - {2, arcs_45_1}, - {1, arcs_45_2}, - {1, arcs_45_3}, + {1, arcs_45_1}, + {2, arcs_45_2}, + {2, arcs_45_3}, + {1, arcs_45_4}, + {1, arcs_45_5}, }; static arc arcs_46_0[1] = { - {109, 1}, + {26, 1}, }; static arc arcs_46_1[2] = { - {26, 2}, + {87, 2}, {0, 1}, }; -static arc arcs_46_2[2] = { - {86, 3}, - {0, 2}, +static arc arcs_46_2[1] = { + {109, 3}, }; static arc arcs_46_3[1] = { - {23, 4}, -}; -static arc arcs_46_4[1] = { - {0, 4}, + {0, 3}, }; -static state states_46[5] = { +static state states_46[4] = { {1, arcs_46_0}, {2, arcs_46_1}, - {2, arcs_46_2}, + {1, arcs_46_2}, {1, arcs_46_3}, - {1, arcs_46_4}, }; -static arc arcs_47_0[2] = { - {3, 1}, - {2, 2}, +static arc arcs_47_0[1] = { + {110, 1}, }; -static arc arcs_47_1[1] = { +static arc arcs_47_1[2] = { + {26, 2}, {0, 1}, }; static arc arcs_47_2[2] = { - {28, 3}, - {110, 4}, + {87, 3}, + {0, 2}, }; static arc arcs_47_3[1] = { - {2, 5}, + {23, 4}, }; static arc arcs_47_4[1] = { - {6, 6}, -}; -static arc arcs_47_5[1] = { - {110, 4}, -}; -static arc arcs_47_6[2] = { - {6, 6}, - {111, 1}, + {0, 4}, }; -static state states_47[7] = { - {2, arcs_47_0}, - {1, arcs_47_1}, +static state states_47[5] = { + {1, arcs_47_0}, + {2, arcs_47_1}, {2, arcs_47_2}, {1, arcs_47_3}, {1, arcs_47_4}, - {1, arcs_47_5}, - {2, arcs_47_6}, }; static arc arcs_48_0[2] = { - {112, 1}, - {113, 2}, + {3, 1}, + {2, 2}, }; -static arc arcs_48_1[2] = { - {97, 3}, +static arc arcs_48_1[1] = { {0, 1}, }; -static arc arcs_48_2[1] = { - {0, 2}, +static arc arcs_48_2[2] = { + {28, 3}, + {111, 4}, }; static arc arcs_48_3[1] = { - {112, 4}, + {2, 5}, }; static arc arcs_48_4[1] = { - {99, 5}, + {6, 6}, }; static arc arcs_48_5[1] = { - {26, 2}, + {111, 4}, +}; +static arc arcs_48_6[2] = { + {6, 6}, + {112, 1}, }; -static state states_48[6] = { +static state states_48[7] = { {2, arcs_48_0}, - {2, arcs_48_1}, - {1, arcs_48_2}, + {1, arcs_48_1}, + {2, arcs_48_2}, {1, arcs_48_3}, {1, arcs_48_4}, {1, arcs_48_5}, + {2, arcs_48_6}, }; static arc arcs_49_0[2] = { - {112, 1}, - {115, 1}, + {113, 1}, + {114, 2}, }; -static arc arcs_49_1[1] = { +static arc arcs_49_1[2] = { + {98, 3}, {0, 1}, }; -static state states_49[2] = { - {2, arcs_49_0}, - {1, arcs_49_1}, +static arc arcs_49_2[1] = { + {0, 2}, }; -static arc arcs_50_0[1] = { - {116, 1}, +static arc arcs_49_3[1] = { + {113, 4}, }; -static arc arcs_50_1[2] = { - {36, 2}, - {27, 3}, +static arc arcs_49_4[1] = { + {100, 5}, }; -static arc arcs_50_2[1] = { - {27, 3}, +static arc arcs_49_5[1] = { + {26, 2}, }; -static arc arcs_50_3[1] = { - {26, 4}, +static state states_49[6] = { + {2, arcs_49_0}, + {2, arcs_49_1}, + {1, arcs_49_2}, + {1, arcs_49_3}, + {1, arcs_49_4}, + {1, arcs_49_5}, +}; +static arc arcs_50_0[2] = { + {113, 1}, + {116, 1}, }; -static arc arcs_50_4[1] = { - {0, 4}, +static arc arcs_50_1[1] = { + {0, 1}, }; -static state states_50[5] = { - {1, arcs_50_0}, - {2, arcs_50_1}, - {1, arcs_50_2}, - {1, arcs_50_3}, - {1, arcs_50_4}, +static state states_50[2] = { + {2, arcs_50_0}, + {1, arcs_50_1}, }; static arc arcs_51_0[1] = { - {116, 1}, + {117, 1}, }; static arc arcs_51_1[2] = { {36, 2}, @@ -1246,7 +1247,7 @@ static arc arcs_51_2[1] = { {27, 3}, }; static arc arcs_51_3[1] = { - {114, 4}, + {26, 4}, }; static arc arcs_51_4[1] = { {0, 4}, @@ -1262,108 +1263,120 @@ static arc arcs_52_0[1] = { {117, 1}, }; static arc arcs_52_1[2] = { - {118, 0}, - {0, 1}, + {36, 2}, + {27, 3}, }; -static state states_52[2] = { +static arc arcs_52_2[1] = { + {27, 3}, +}; +static arc arcs_52_3[1] = { + {115, 4}, +}; +static arc arcs_52_4[1] = { + {0, 4}, +}; +static state states_52[5] = { {1, arcs_52_0}, {2, arcs_52_1}, + {1, arcs_52_2}, + {1, arcs_52_3}, + {1, arcs_52_4}, }; static arc arcs_53_0[1] = { - {119, 1}, + {118, 1}, }; static arc arcs_53_1[2] = { - {120, 0}, + {119, 0}, {0, 1}, }; static state states_53[2] = { {1, arcs_53_0}, {2, arcs_53_1}, }; -static arc arcs_54_0[2] = { - {121, 1}, - {122, 2}, +static arc arcs_54_0[1] = { + {120, 1}, +}; +static arc arcs_54_1[2] = { + {121, 0}, + {0, 1}, +}; +static state states_54[2] = { + {1, arcs_54_0}, + {2, arcs_54_1}, +}; +static arc arcs_55_0[2] = { + {122, 1}, + {123, 2}, }; -static arc arcs_54_1[1] = { - {119, 2}, +static arc arcs_55_1[1] = { + {120, 2}, }; -static arc arcs_54_2[1] = { +static arc arcs_55_2[1] = { {0, 2}, }; -static state states_54[3] = { - {2, arcs_54_0}, - {1, arcs_54_1}, - {1, arcs_54_2}, +static state states_55[3] = { + {2, arcs_55_0}, + {1, arcs_55_1}, + {1, arcs_55_2}, }; -static arc arcs_55_0[1] = { - {108, 1}, +static arc arcs_56_0[1] = { + {109, 1}, }; -static arc arcs_55_1[2] = { - {123, 0}, +static arc arcs_56_1[2] = { + {124, 0}, {0, 1}, }; -static state states_55[2] = { - {1, arcs_55_0}, - {2, arcs_55_1}, +static state states_56[2] = { + {1, arcs_56_0}, + {2, arcs_56_1}, }; -static arc arcs_56_0[10] = { - {124, 1}, +static arc arcs_57_0[10] = { {125, 1}, {126, 1}, {127, 1}, {128, 1}, {129, 1}, {130, 1}, - {102, 1}, - {121, 2}, - {131, 3}, + {131, 1}, + {103, 1}, + {122, 2}, + {132, 3}, }; -static arc arcs_56_1[1] = { +static arc arcs_57_1[1] = { {0, 1}, }; -static arc arcs_56_2[1] = { - {102, 1}, +static arc arcs_57_2[1] = { + {103, 1}, }; -static arc arcs_56_3[2] = { - {121, 1}, +static arc arcs_57_3[2] = { + {122, 1}, {0, 3}, }; -static state states_56[4] = { - {10, arcs_56_0}, - {1, arcs_56_1}, - {1, arcs_56_2}, - {2, arcs_56_3}, -}; -static arc arcs_57_0[1] = { - {34, 1}, -}; -static arc arcs_57_1[1] = { - {108, 2}, -}; -static arc arcs_57_2[1] = { - {0, 2}, -}; -static state states_57[3] = { - {1, arcs_57_0}, +static state states_57[4] = { + {10, arcs_57_0}, {1, arcs_57_1}, {1, arcs_57_2}, + {2, arcs_57_3}, }; static arc arcs_58_0[1] = { - {132, 1}, + {34, 1}, +}; +static arc arcs_58_1[1] = { + {109, 2}, }; -static arc arcs_58_1[2] = { - {133, 0}, - {0, 1}, +static arc arcs_58_2[1] = { + {0, 2}, }; -static state states_58[2] = { +static state states_58[3] = { {1, arcs_58_0}, - {2, arcs_58_1}, + {1, arcs_58_1}, + {1, arcs_58_2}, }; static arc arcs_59_0[1] = { - {134, 1}, + {133, 1}, }; static arc arcs_59_1[2] = { - {135, 0}, + {134, 0}, {0, 1}, }; static state states_59[2] = { @@ -1371,10 +1384,10 @@ static state states_59[2] = { {2, arcs_59_1}, }; static arc arcs_60_0[1] = { - {136, 1}, + {135, 1}, }; static arc arcs_60_1[2] = { - {137, 0}, + {136, 0}, {0, 1}, }; static state states_60[2] = { @@ -1382,23 +1395,22 @@ static state states_60[2] = { {2, arcs_60_1}, }; static arc arcs_61_0[1] = { - {138, 1}, + {137, 1}, }; -static arc arcs_61_1[3] = { - {139, 0}, - {140, 0}, +static arc arcs_61_1[2] = { + {138, 0}, {0, 1}, }; static state states_61[2] = { {1, arcs_61_0}, - {3, arcs_61_1}, + {2, arcs_61_1}, }; static arc arcs_62_0[1] = { - {141, 1}, + {139, 1}, }; static arc arcs_62_1[3] = { - {142, 0}, - {143, 0}, + {140, 0}, + {141, 0}, {0, 1}, }; static state states_62[2] = { @@ -1406,630 +1418,642 @@ static state states_62[2] = { {3, arcs_62_1}, }; static arc arcs_63_0[1] = { - {144, 1}, + {142, 1}, +}; +static arc arcs_63_1[3] = { + {143, 0}, + {144, 0}, + {0, 1}, +}; +static state states_63[2] = { + {1, arcs_63_0}, + {3, arcs_63_1}, +}; +static arc arcs_64_0[1] = { + {145, 1}, }; -static arc arcs_63_1[6] = { +static arc arcs_64_1[6] = { {34, 0}, {11, 0}, - {145, 0}, {146, 0}, {147, 0}, + {148, 0}, {0, 1}, }; -static state states_63[2] = { - {1, arcs_63_0}, - {6, arcs_63_1}, +static state states_64[2] = { + {1, arcs_64_0}, + {6, arcs_64_1}, }; -static arc arcs_64_0[4] = { - {142, 1}, +static arc arcs_65_0[4] = { {143, 1}, - {148, 1}, - {149, 2}, + {144, 1}, + {149, 1}, + {150, 2}, }; -static arc arcs_64_1[1] = { - {144, 2}, +static arc arcs_65_1[1] = { + {145, 2}, }; -static arc arcs_64_2[1] = { +static arc arcs_65_2[1] = { {0, 2}, }; -static state states_64[3] = { - {4, arcs_64_0}, - {1, arcs_64_1}, - {1, arcs_64_2}, +static state states_65[3] = { + {4, arcs_65_0}, + {1, arcs_65_1}, + {1, arcs_65_2}, }; -static arc arcs_65_0[1] = { - {150, 1}, +static arc arcs_66_0[1] = { + {151, 1}, }; -static arc arcs_65_1[2] = { +static arc arcs_66_1[2] = { {35, 2}, {0, 1}, }; -static arc arcs_65_2[1] = { - {144, 3}, +static arc arcs_66_2[1] = { + {145, 3}, }; -static arc arcs_65_3[1] = { +static arc arcs_66_3[1] = { {0, 3}, }; -static state states_65[4] = { - {1, arcs_65_0}, - {2, arcs_65_1}, - {1, arcs_65_2}, - {1, arcs_65_3}, -}; -static arc arcs_66_0[2] = { - {151, 1}, - {152, 2}, +static state states_66[4] = { + {1, arcs_66_0}, + {2, arcs_66_1}, + {1, arcs_66_2}, + {1, arcs_66_3}, }; -static arc arcs_66_1[1] = { - {152, 2}, +static arc arcs_67_0[2] = { + {152, 1}, + {153, 2}, }; -static arc arcs_66_2[2] = { +static arc arcs_67_1[1] = { {153, 2}, +}; +static arc arcs_67_2[2] = { + {154, 2}, {0, 2}, }; -static state states_66[3] = { - {2, arcs_66_0}, - {1, arcs_66_1}, - {2, arcs_66_2}, +static state states_67[3] = { + {2, arcs_67_0}, + {1, arcs_67_1}, + {2, arcs_67_2}, }; -static arc arcs_67_0[10] = { +static arc arcs_68_0[10] = { {13, 1}, - {155, 2}, - {157, 3}, + {156, 2}, + {158, 3}, {23, 4}, - {160, 4}, - {161, 5}, - {83, 4}, - {162, 4}, + {161, 4}, + {162, 5}, + {84, 4}, {163, 4}, {164, 4}, + {165, 4}, }; -static arc arcs_67_1[3] = { - {50, 6}, - {154, 6}, +static arc arcs_68_1[3] = { + {51, 6}, + {155, 6}, {15, 4}, }; -static arc arcs_67_2[2] = { - {154, 7}, - {156, 4}, +static arc arcs_68_2[2] = { + {155, 7}, + {157, 4}, }; -static arc arcs_67_3[2] = { - {158, 8}, - {159, 4}, +static arc arcs_68_3[2] = { + {159, 8}, + {160, 4}, }; -static arc arcs_67_4[1] = { +static arc arcs_68_4[1] = { {0, 4}, }; -static arc arcs_67_5[2] = { - {161, 5}, +static arc arcs_68_5[2] = { + {162, 5}, {0, 5}, }; -static arc arcs_67_6[1] = { +static arc arcs_68_6[1] = { {15, 4}, }; -static arc arcs_67_7[1] = { - {156, 4}, +static arc arcs_68_7[1] = { + {157, 4}, }; -static arc arcs_67_8[1] = { - {159, 4}, +static arc arcs_68_8[1] = { + {160, 4}, }; -static state states_67[9] = { - {10, arcs_67_0}, - {3, arcs_67_1}, - {2, arcs_67_2}, - {2, arcs_67_3}, - {1, arcs_67_4}, - {2, arcs_67_5}, - {1, arcs_67_6}, - {1, arcs_67_7}, - {1, arcs_67_8}, -}; -static arc arcs_68_0[2] = { +static state states_68[9] = { + {10, arcs_68_0}, + {3, arcs_68_1}, + {2, arcs_68_2}, + {2, arcs_68_3}, + {1, arcs_68_4}, + {2, arcs_68_5}, + {1, arcs_68_6}, + {1, arcs_68_7}, + {1, arcs_68_8}, +}; +static arc arcs_69_0[2] = { {26, 1}, - {51, 1}, + {52, 1}, }; -static arc arcs_68_1[3] = { - {165, 2}, +static arc arcs_69_1[3] = { + {166, 2}, {33, 3}, {0, 1}, }; -static arc arcs_68_2[1] = { +static arc arcs_69_2[1] = { {0, 2}, }; -static arc arcs_68_3[3] = { +static arc arcs_69_3[3] = { {26, 4}, - {51, 4}, + {52, 4}, {0, 3}, }; -static arc arcs_68_4[2] = { +static arc arcs_69_4[2] = { {33, 3}, {0, 4}, }; -static state states_68[5] = { - {2, arcs_68_0}, - {3, arcs_68_1}, - {1, arcs_68_2}, - {3, arcs_68_3}, - {2, arcs_68_4}, +static state states_69[5] = { + {2, arcs_69_0}, + {3, arcs_69_1}, + {1, arcs_69_2}, + {3, arcs_69_3}, + {2, arcs_69_4}, }; -static arc arcs_69_0[3] = { +static arc arcs_70_0[3] = { {13, 1}, - {155, 2}, - {82, 3}, + {156, 2}, + {83, 3}, }; -static arc arcs_69_1[2] = { +static arc arcs_70_1[2] = { {14, 4}, {15, 5}, }; -static arc arcs_69_2[1] = { - {166, 6}, +static arc arcs_70_2[1] = { + {167, 6}, }; -static arc arcs_69_3[1] = { +static arc arcs_70_3[1] = { {23, 5}, }; -static arc arcs_69_4[1] = { +static arc arcs_70_4[1] = { {15, 5}, }; -static arc arcs_69_5[1] = { +static arc arcs_70_5[1] = { {0, 5}, }; -static arc arcs_69_6[1] = { - {156, 5}, +static arc arcs_70_6[1] = { + {157, 5}, }; -static state states_69[7] = { - {3, arcs_69_0}, - {2, arcs_69_1}, - {1, arcs_69_2}, - {1, arcs_69_3}, - {1, arcs_69_4}, - {1, arcs_69_5}, - {1, arcs_69_6}, +static state states_70[7] = { + {3, arcs_70_0}, + {2, arcs_70_1}, + {1, arcs_70_2}, + {1, arcs_70_3}, + {1, arcs_70_4}, + {1, arcs_70_5}, + {1, arcs_70_6}, }; -static arc arcs_70_0[1] = { - {167, 1}, +static arc arcs_71_0[1] = { + {168, 1}, }; -static arc arcs_70_1[2] = { +static arc arcs_71_1[2] = { {33, 2}, {0, 1}, }; -static arc arcs_70_2[2] = { - {167, 1}, +static arc arcs_71_2[2] = { + {168, 1}, {0, 2}, }; -static state states_70[3] = { - {1, arcs_70_0}, - {2, arcs_70_1}, - {2, arcs_70_2}, +static state states_71[3] = { + {1, arcs_71_0}, + {2, arcs_71_1}, + {2, arcs_71_2}, }; -static arc arcs_71_0[2] = { +static arc arcs_72_0[2] = { {26, 1}, {27, 2}, }; -static arc arcs_71_1[2] = { +static arc arcs_72_1[2] = { {27, 2}, {0, 1}, }; -static arc arcs_71_2[3] = { +static arc arcs_72_2[3] = { {26, 3}, - {168, 4}, + {169, 4}, {0, 2}, }; -static arc arcs_71_3[2] = { - {168, 4}, +static arc arcs_72_3[2] = { + {169, 4}, {0, 3}, }; -static arc arcs_71_4[1] = { +static arc arcs_72_4[1] = { {0, 4}, }; -static state states_71[5] = { - {2, arcs_71_0}, - {2, arcs_71_1}, - {3, arcs_71_2}, - {2, arcs_71_3}, - {1, arcs_71_4}, +static state states_72[5] = { + {2, arcs_72_0}, + {2, arcs_72_1}, + {3, arcs_72_2}, + {2, arcs_72_3}, + {1, arcs_72_4}, }; -static arc arcs_72_0[1] = { +static arc arcs_73_0[1] = { {27, 1}, }; -static arc arcs_72_1[2] = { +static arc arcs_73_1[2] = { {26, 2}, {0, 1}, }; -static arc arcs_72_2[1] = { +static arc arcs_73_2[1] = { {0, 2}, }; -static state states_72[3] = { - {1, arcs_72_0}, - {2, arcs_72_1}, - {1, arcs_72_2}, +static state states_73[3] = { + {1, arcs_73_0}, + {2, arcs_73_1}, + {1, arcs_73_2}, }; -static arc arcs_73_0[2] = { - {108, 1}, - {51, 1}, +static arc arcs_74_0[2] = { + {109, 1}, + {52, 1}, }; -static arc arcs_73_1[2] = { +static arc arcs_74_1[2] = { {33, 2}, {0, 1}, }; -static arc arcs_73_2[3] = { - {108, 1}, - {51, 1}, +static arc arcs_74_2[3] = { + {109, 1}, + {52, 1}, {0, 2}, }; -static state states_73[3] = { - {2, arcs_73_0}, - {2, arcs_73_1}, - {3, arcs_73_2}, +static state states_74[3] = { + {2, arcs_74_0}, + {2, arcs_74_1}, + {3, arcs_74_2}, }; -static arc arcs_74_0[1] = { +static arc arcs_75_0[1] = { {26, 1}, }; -static arc arcs_74_1[2] = { +static arc arcs_75_1[2] = { {33, 2}, {0, 1}, }; -static arc arcs_74_2[2] = { +static arc arcs_75_2[2] = { {26, 1}, {0, 2}, }; -static state states_74[3] = { - {1, arcs_74_0}, - {2, arcs_74_1}, - {2, arcs_74_2}, +static state states_75[3] = { + {1, arcs_75_0}, + {2, arcs_75_1}, + {2, arcs_75_2}, }; -static arc arcs_75_0[3] = { +static arc arcs_76_0[3] = { {26, 1}, {35, 2}, - {51, 3}, + {52, 3}, }; -static arc arcs_75_1[4] = { +static arc arcs_76_1[4] = { {27, 4}, - {165, 5}, + {166, 5}, {33, 6}, {0, 1}, }; -static arc arcs_75_2[1] = { - {108, 7}, +static arc arcs_76_2[1] = { + {109, 7}, }; -static arc arcs_75_3[3] = { - {165, 5}, +static arc arcs_76_3[3] = { + {166, 5}, {33, 6}, {0, 3}, }; -static arc arcs_75_4[1] = { +static arc arcs_76_4[1] = { {26, 7}, }; -static arc arcs_75_5[1] = { +static arc arcs_76_5[1] = { {0, 5}, }; -static arc arcs_75_6[3] = { +static arc arcs_76_6[3] = { {26, 8}, - {51, 8}, + {52, 8}, {0, 6}, }; -static arc arcs_75_7[3] = { - {165, 5}, +static arc arcs_76_7[3] = { + {166, 5}, {33, 9}, {0, 7}, }; -static arc arcs_75_8[2] = { +static arc arcs_76_8[2] = { {33, 6}, {0, 8}, }; -static arc arcs_75_9[3] = { +static arc arcs_76_9[3] = { {26, 10}, {35, 11}, {0, 9}, }; -static arc arcs_75_10[1] = { +static arc arcs_76_10[1] = { {27, 12}, }; -static arc arcs_75_11[1] = { - {108, 13}, +static arc arcs_76_11[1] = { + {109, 13}, }; -static arc arcs_75_12[1] = { +static arc arcs_76_12[1] = { {26, 13}, }; -static arc arcs_75_13[2] = { +static arc arcs_76_13[2] = { {33, 9}, {0, 13}, }; -static state states_75[14] = { - {3, arcs_75_0}, - {4, arcs_75_1}, - {1, arcs_75_2}, - {3, arcs_75_3}, - {1, arcs_75_4}, - {1, arcs_75_5}, - {3, arcs_75_6}, - {3, arcs_75_7}, - {2, arcs_75_8}, - {3, arcs_75_9}, - {1, arcs_75_10}, - {1, arcs_75_11}, - {1, arcs_75_12}, - {2, arcs_75_13}, -}; -static arc arcs_76_0[1] = { - {169, 1}, -}; -static arc arcs_76_1[1] = { +static state states_76[14] = { + {3, arcs_76_0}, + {4, arcs_76_1}, + {1, arcs_76_2}, + {3, arcs_76_3}, + {1, arcs_76_4}, + {1, arcs_76_5}, + {3, arcs_76_6}, + {3, arcs_76_7}, + {2, arcs_76_8}, + {3, arcs_76_9}, + {1, arcs_76_10}, + {1, arcs_76_11}, + {1, arcs_76_12}, + {2, arcs_76_13}, +}; +static arc arcs_77_0[1] = { + {170, 1}, +}; +static arc arcs_77_1[1] = { {23, 2}, }; -static arc arcs_76_2[2] = { +static arc arcs_77_2[2] = { {13, 3}, {27, 4}, }; -static arc arcs_76_3[2] = { +static arc arcs_77_3[2] = { {14, 5}, {15, 6}, }; -static arc arcs_76_4[1] = { +static arc arcs_77_4[1] = { {29, 7}, }; -static arc arcs_76_5[1] = { +static arc arcs_77_5[1] = { {15, 6}, }; -static arc arcs_76_6[1] = { +static arc arcs_77_6[1] = { {27, 4}, }; -static arc arcs_76_7[1] = { +static arc arcs_77_7[1] = { {0, 7}, }; -static state states_76[8] = { - {1, arcs_76_0}, - {1, arcs_76_1}, - {2, arcs_76_2}, - {2, arcs_76_3}, - {1, arcs_76_4}, - {1, arcs_76_5}, - {1, arcs_76_6}, - {1, arcs_76_7}, +static state states_77[8] = { + {1, arcs_77_0}, + {1, arcs_77_1}, + {2, arcs_77_2}, + {2, arcs_77_3}, + {1, arcs_77_4}, + {1, arcs_77_5}, + {1, arcs_77_6}, + {1, arcs_77_7}, }; -static arc arcs_77_0[1] = { - {170, 1}, +static arc arcs_78_0[1] = { + {171, 1}, }; -static arc arcs_77_1[2] = { +static arc arcs_78_1[2] = { {33, 2}, {0, 1}, }; -static arc arcs_77_2[2] = { - {170, 1}, +static arc arcs_78_2[2] = { + {171, 1}, {0, 2}, }; -static state states_77[3] = { - {1, arcs_77_0}, - {2, arcs_77_1}, - {2, arcs_77_2}, +static state states_78[3] = { + {1, arcs_78_0}, + {2, arcs_78_1}, + {2, arcs_78_2}, }; -static arc arcs_78_0[3] = { +static arc arcs_79_0[3] = { {26, 1}, {35, 2}, {34, 2}, }; -static arc arcs_78_1[3] = { - {165, 3}, +static arc arcs_79_1[3] = { + {166, 3}, {32, 2}, {0, 1}, }; -static arc arcs_78_2[1] = { +static arc arcs_79_2[1] = { {26, 3}, }; -static arc arcs_78_3[1] = { +static arc arcs_79_3[1] = { {0, 3}, }; -static state states_78[4] = { - {3, arcs_78_0}, - {3, arcs_78_1}, - {1, arcs_78_2}, - {1, arcs_78_3}, -}; -static arc arcs_79_0[2] = { - {165, 1}, - {172, 1}, +static state states_79[4] = { + {3, arcs_79_0}, + {3, arcs_79_1}, + {1, arcs_79_2}, + {1, arcs_79_3}, }; -static arc arcs_79_1[1] = { - {0, 1}, -}; -static state states_79[2] = { - {2, arcs_79_0}, - {1, arcs_79_1}, -}; -static arc arcs_80_0[1] = { - {101, 1}, +static arc arcs_80_0[2] = { + {166, 1}, + {173, 1}, }; static arc arcs_80_1[1] = { - {66, 2}, -}; -static arc arcs_80_2[1] = { - {102, 3}, -}; -static arc arcs_80_3[1] = { - {112, 4}, -}; -static arc arcs_80_4[2] = { - {171, 5}, - {0, 4}, -}; -static arc arcs_80_5[1] = { - {0, 5}, + {0, 1}, }; -static state states_80[6] = { - {1, arcs_80_0}, +static state states_80[2] = { + {2, arcs_80_0}, {1, arcs_80_1}, - {1, arcs_80_2}, - {1, arcs_80_3}, - {2, arcs_80_4}, - {1, arcs_80_5}, }; static arc arcs_81_0[1] = { - {97, 1}, + {102, 1}, }; static arc arcs_81_1[1] = { - {114, 2}, + {67, 2}, }; -static arc arcs_81_2[2] = { - {171, 3}, - {0, 2}, +static arc arcs_81_2[1] = { + {103, 3}, }; static arc arcs_81_3[1] = { - {0, 3}, + {113, 4}, }; -static state states_81[4] = { +static arc arcs_81_4[2] = { + {172, 5}, + {0, 4}, +}; +static arc arcs_81_5[1] = { + {0, 5}, +}; +static state states_81[6] = { {1, arcs_81_0}, {1, arcs_81_1}, - {2, arcs_81_2}, + {1, arcs_81_2}, {1, arcs_81_3}, + {2, arcs_81_4}, + {1, arcs_81_5}, }; static arc arcs_82_0[1] = { - {23, 1}, + {98, 1}, }; static arc arcs_82_1[1] = { - {0, 1}, + {115, 2}, +}; +static arc arcs_82_2[2] = { + {172, 3}, + {0, 2}, +}; +static arc arcs_82_3[1] = { + {0, 3}, }; -static state states_82[2] = { +static state states_82[4] = { {1, arcs_82_0}, {1, arcs_82_1}, + {2, arcs_82_2}, + {1, arcs_82_3}, }; static arc arcs_83_0[1] = { - {174, 1}, + {23, 1}, }; -static arc arcs_83_1[2] = { - {175, 2}, +static arc arcs_83_1[1] = { {0, 1}, }; -static arc arcs_83_2[1] = { - {0, 2}, -}; -static state states_83[3] = { +static state states_83[2] = { {1, arcs_83_0}, - {2, arcs_83_1}, - {1, arcs_83_2}, + {1, arcs_83_1}, }; -static arc arcs_84_0[2] = { - {77, 1}, - {9, 2}, +static arc arcs_84_0[1] = { + {175, 1}, }; -static arc arcs_84_1[1] = { - {26, 2}, +static arc arcs_84_1[2] = { + {176, 2}, + {0, 1}, }; static arc arcs_84_2[1] = { {0, 2}, }; static state states_84[3] = { - {2, arcs_84_0}, - {1, arcs_84_1}, + {1, arcs_84_0}, + {2, arcs_84_1}, {1, arcs_84_2}, }; -static arc arcs_85_0[1] = { - {177, 1}, +static arc arcs_85_0[2] = { + {78, 1}, + {9, 2}, }; -static arc arcs_85_1[2] = { - {2, 1}, - {7, 2}, +static arc arcs_85_1[1] = { + {26, 2}, }; static arc arcs_85_2[1] = { {0, 2}, }; static state states_85[3] = { - {1, arcs_85_0}, - {2, arcs_85_1}, + {2, arcs_85_0}, + {1, arcs_85_1}, {1, arcs_85_2}, }; static arc arcs_86_0[1] = { - {13, 1}, + {178, 1}, }; static arc arcs_86_1[2] = { - {178, 2}, - {15, 3}, + {2, 1}, + {7, 2}, }; static arc arcs_86_2[1] = { + {0, 2}, +}; +static state states_86[3] = { + {1, arcs_86_0}, + {2, arcs_86_1}, + {1, arcs_86_2}, +}; +static arc arcs_87_0[1] = { + {13, 1}, +}; +static arc arcs_87_1[2] = { + {179, 2}, {15, 3}, }; -static arc arcs_86_3[1] = { +static arc arcs_87_2[1] = { + {15, 3}, +}; +static arc arcs_87_3[1] = { {25, 4}, }; -static arc arcs_86_4[1] = { +static arc arcs_87_4[1] = { {26, 5}, }; -static arc arcs_86_5[1] = { +static arc arcs_87_5[1] = { {0, 5}, }; -static state states_86[6] = { - {1, arcs_86_0}, - {2, arcs_86_1}, - {1, arcs_86_2}, - {1, arcs_86_3}, - {1, arcs_86_4}, - {1, arcs_86_5}, +static state states_87[6] = { + {1, arcs_87_0}, + {2, arcs_87_1}, + {1, arcs_87_2}, + {1, arcs_87_3}, + {1, arcs_87_4}, + {1, arcs_87_5}, }; -static arc arcs_87_0[3] = { +static arc arcs_88_0[3] = { {26, 1}, {34, 2}, {35, 3}, }; -static arc arcs_87_1[2] = { +static arc arcs_88_1[2] = { {33, 4}, {0, 1}, }; -static arc arcs_87_2[3] = { +static arc arcs_88_2[3] = { {26, 5}, {33, 6}, {0, 2}, }; -static arc arcs_87_3[1] = { +static arc arcs_88_3[1] = { {26, 7}, }; -static arc arcs_87_4[4] = { +static arc arcs_88_4[4] = { {26, 1}, {34, 8}, {35, 3}, {0, 4}, }; -static arc arcs_87_5[2] = { +static arc arcs_88_5[2] = { {33, 6}, {0, 5}, }; -static arc arcs_87_6[2] = { +static arc arcs_88_6[2] = { {26, 5}, {35, 3}, }; -static arc arcs_87_7[1] = { +static arc arcs_88_7[1] = { {0, 7}, }; -static arc arcs_87_8[3] = { +static arc arcs_88_8[3] = { {26, 9}, {33, 10}, {0, 8}, }; -static arc arcs_87_9[2] = { +static arc arcs_88_9[2] = { {33, 10}, {0, 9}, }; -static arc arcs_87_10[2] = { +static arc arcs_88_10[2] = { {26, 9}, {35, 3}, }; -static state states_87[11] = { - {3, arcs_87_0}, - {2, arcs_87_1}, - {3, arcs_87_2}, - {1, arcs_87_3}, - {4, arcs_87_4}, - {2, arcs_87_5}, - {2, arcs_87_6}, - {1, arcs_87_7}, - {3, arcs_87_8}, - {2, arcs_87_9}, - {2, arcs_87_10}, -}; -static dfa dfas[88] = { +static state states_88[11] = { + {3, arcs_88_0}, + {2, arcs_88_1}, + {3, arcs_88_2}, + {1, arcs_88_3}, + {4, arcs_88_4}, + {2, arcs_88_5}, + {2, arcs_88_6}, + {1, arcs_88_7}, + {3, arcs_88_8}, + {2, arcs_88_9}, + {2, arcs_88_10}, +}; +static dfa dfas[89] = { {256, "single_input", 0, 3, states_0, - "\004\050\340\000\004\000\000\000\012\076\011\007\262\004\020\002\000\300\220\050\037\102\000"}, + "\004\050\340\000\004\000\000\000\024\174\022\016\144\011\040\004\000\200\041\121\076\204\000"}, {257, "file_input", 0, 2, states_1, - "\204\050\340\000\004\000\000\000\012\076\011\007\262\004\020\002\000\300\220\050\037\102\000"}, + "\204\050\340\000\004\000\000\000\024\174\022\016\144\011\040\004\000\200\041\121\076\204\000"}, {258, "eval_input", 0, 3, states_2, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\020\002\000\300\220\050\037\000\000"}, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\040\004\000\200\041\121\076\000\000"}, {259, "decorator", 0, 7, states_3, "\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, {260, "decorators", 0, 2, states_4, @@ -2051,176 +2075,178 @@ static dfa dfas[88] = { {268, "vfpdef", 0, 2, states_12, "\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, {269, "stmt", 0, 2, states_13, - "\000\050\340\000\004\000\000\000\012\076\011\007\262\004\020\002\000\300\220\050\037\102\000"}, + "\000\050\340\000\004\000\000\000\024\174\022\016\144\011\040\004\000\200\041\121\076\204\000"}, {270, "simple_stmt", 0, 4, states_14, - "\000\040\200\000\004\000\000\000\012\076\011\007\000\000\020\002\000\300\220\050\037\100\000"}, + "\000\040\200\000\004\000\000\000\024\174\022\016\000\000\040\004\000\200\041\121\076\200\000"}, {271, "small_stmt", 0, 2, states_15, - "\000\040\200\000\004\000\000\000\012\076\011\007\000\000\020\002\000\300\220\050\037\100\000"}, + "\000\040\200\000\004\000\000\000\024\174\022\016\000\000\040\004\000\200\041\121\076\200\000"}, {272, "expr_stmt", 0, 6, states_16, - "\000\040\200\000\004\000\000\000\000\000\010\000\000\000\020\002\000\300\220\050\037\000\000"}, - {273, "testlist_star_expr", 0, 3, states_17, - "\000\040\200\000\004\000\000\000\000\000\010\000\000\000\020\002\000\300\220\050\037\000\000"}, - {274, "augassign", 0, 2, states_18, - "\000\000\000\000\000\000\360\377\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {275, "del_stmt", 0, 3, states_19, - "\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {276, "pass_stmt", 0, 2, states_20, - "\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {277, "flow_stmt", 0, 2, states_21, - "\000\000\000\000\000\000\000\000\000\036\000\000\000\000\000\000\000\000\000\000\000\100\000"}, - {278, "break_stmt", 0, 2, states_22, - "\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {279, "continue_stmt", 0, 2, states_23, + "\000\040\200\000\004\000\000\000\000\000\020\000\000\000\040\004\000\200\041\121\076\000\000"}, + {273, "annassign", 0, 5, states_17, + "\000\000\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {274, "testlist_star_expr", 0, 3, states_18, + "\000\040\200\000\004\000\000\000\000\000\020\000\000\000\040\004\000\200\041\121\076\000\000"}, + {275, "augassign", 0, 2, states_19, + "\000\000\000\000\000\000\340\377\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {276, "del_stmt", 0, 3, states_20, + "\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {277, "pass_stmt", 0, 2, states_21, + "\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {278, "flow_stmt", 0, 2, states_22, + "\000\000\000\000\000\000\000\000\000\074\000\000\000\000\000\000\000\000\000\000\000\200\000"}, + {279, "break_stmt", 0, 2, states_23, "\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {280, "return_stmt", 0, 3, states_24, + {280, "continue_stmt", 0, 2, states_24, "\000\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {281, "yield_stmt", 0, 2, states_25, - "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\100\000"}, - {282, "raise_stmt", 0, 5, states_26, + {281, "return_stmt", 0, 3, states_25, "\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {283, "import_stmt", 0, 2, states_27, - "\000\000\000\000\000\000\000\000\000\040\001\000\000\000\000\000\000\000\000\000\000\000\000"}, - {284, "import_name", 0, 3, states_28, - "\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000"}, - {285, "import_from", 0, 8, states_29, + {282, "yield_stmt", 0, 2, states_26, + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\200\000"}, + {283, "raise_stmt", 0, 5, states_27, "\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {286, "import_as_name", 0, 4, states_30, + {284, "import_stmt", 0, 2, states_28, + "\000\000\000\000\000\000\000\000\000\100\002\000\000\000\000\000\000\000\000\000\000\000\000"}, + {285, "import_name", 0, 3, states_29, + "\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000"}, + {286, "import_from", 0, 8, states_30, + "\000\000\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000\000\000\000\000"}, + {287, "import_as_name", 0, 4, states_31, "\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {287, "dotted_as_name", 0, 4, states_31, + {288, "dotted_as_name", 0, 4, states_32, "\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {288, "import_as_names", 0, 3, states_32, + {289, "import_as_names", 0, 3, states_33, "\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {289, "dotted_as_names", 0, 2, states_33, + {290, "dotted_as_names", 0, 2, states_34, "\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {290, "dotted_name", 0, 2, states_34, + {291, "dotted_name", 0, 2, states_35, "\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {291, "global_stmt", 0, 3, states_35, - "\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000"}, - {292, "nonlocal_stmt", 0, 3, states_36, + {292, "global_stmt", 0, 3, states_36, "\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000"}, - {293, "assert_stmt", 0, 5, states_37, + {293, "nonlocal_stmt", 0, 3, states_37, "\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000"}, - {294, "compound_stmt", 0, 2, states_38, - "\000\010\140\000\000\000\000\000\000\000\000\000\262\004\000\000\000\000\000\000\000\002\000"}, - {295, "async_stmt", 0, 3, states_39, + {294, "assert_stmt", 0, 5, states_38, + "\000\000\000\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\000\000\000"}, + {295, "compound_stmt", 0, 2, states_39, + "\000\010\140\000\000\000\000\000\000\000\000\000\144\011\000\000\000\000\000\000\000\004\000"}, + {296, "async_stmt", 0, 3, states_40, "\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {296, "if_stmt", 0, 8, states_40, - "\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000"}, - {297, "while_stmt", 0, 8, states_41, - "\000\000\000\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000"}, - {298, "for_stmt", 0, 11, states_42, + {297, "if_stmt", 0, 8, states_41, + "\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000"}, + {298, "while_stmt", 0, 8, states_42, "\000\000\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000"}, - {299, "try_stmt", 0, 13, states_43, - "\000\000\000\000\000\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000"}, - {300, "with_stmt", 0, 6, states_44, - "\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000"}, - {301, "with_item", 0, 4, states_45, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\020\002\000\300\220\050\037\000\000"}, - {302, "except_clause", 0, 5, states_46, - "\000\000\000\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000"}, - {303, "suite", 0, 7, states_47, - "\004\040\200\000\004\000\000\000\012\076\011\007\000\000\020\002\000\300\220\050\037\100\000"}, - {304, "test", 0, 6, states_48, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\020\002\000\300\220\050\037\000\000"}, - {305, "test_nocond", 0, 2, states_49, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\020\002\000\300\220\050\037\000\000"}, - {306, "lambdef", 0, 5, states_50, - "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000"}, - {307, "lambdef_nocond", 0, 5, states_51, - "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000"}, - {308, "or_test", 0, 2, states_52, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\000\002\000\300\220\050\037\000\000"}, - {309, "and_test", 0, 2, states_53, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\000\002\000\300\220\050\037\000\000"}, - {310, "not_test", 0, 3, states_54, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\000\002\000\300\220\050\037\000\000"}, - {311, "comparison", 0, 2, states_55, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\000\000\000\300\220\050\037\000\000"}, - {312, "comp_op", 0, 4, states_56, - "\000\000\000\000\000\000\000\000\000\000\000\000\100\000\000\362\017\000\000\000\000\000\000"}, - {313, "star_expr", 0, 3, states_57, + {299, "for_stmt", 0, 11, states_43, + "\000\000\000\000\000\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000\000"}, + {300, "try_stmt", 0, 13, states_44, + "\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000"}, + {301, "with_stmt", 0, 6, states_45, + "\000\000\000\000\000\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\000"}, + {302, "with_item", 0, 4, states_46, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\040\004\000\200\041\121\076\000\000"}, + {303, "except_clause", 0, 5, states_47, + "\000\000\000\000\000\000\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000"}, + {304, "suite", 0, 7, states_48, + "\004\040\200\000\004\000\000\000\024\174\022\016\000\000\040\004\000\200\041\121\076\200\000"}, + {305, "test", 0, 6, states_49, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\040\004\000\200\041\121\076\000\000"}, + {306, "test_nocond", 0, 2, states_50, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\040\004\000\200\041\121\076\000\000"}, + {307, "lambdef", 0, 5, states_51, + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000"}, + {308, "lambdef_nocond", 0, 5, states_52, + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000"}, + {309, "or_test", 0, 2, states_53, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\004\000\200\041\121\076\000\000"}, + {310, "and_test", 0, 2, states_54, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\004\000\200\041\121\076\000\000"}, + {311, "not_test", 0, 3, states_55, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\004\000\200\041\121\076\000\000"}, + {312, "comparison", 0, 2, states_56, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\200\041\121\076\000\000"}, + {313, "comp_op", 0, 4, states_57, + "\000\000\000\000\000\000\000\000\000\000\000\000\200\000\000\344\037\000\000\000\000\000\000"}, + {314, "star_expr", 0, 3, states_58, "\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {314, "expr", 0, 2, states_58, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\000\000\000\300\220\050\037\000\000"}, - {315, "xor_expr", 0, 2, states_59, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\000\000\000\300\220\050\037\000\000"}, - {316, "and_expr", 0, 2, states_60, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\000\000\000\300\220\050\037\000\000"}, - {317, "shift_expr", 0, 2, states_61, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\000\000\000\300\220\050\037\000\000"}, - {318, "arith_expr", 0, 2, states_62, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\000\000\000\300\220\050\037\000\000"}, - {319, "term", 0, 2, states_63, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\000\000\000\300\220\050\037\000\000"}, - {320, "factor", 0, 3, states_64, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\000\000\000\300\220\050\037\000\000"}, - {321, "power", 0, 4, states_65, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\200\050\037\000\000"}, - {322, "atom_expr", 0, 3, states_66, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\200\050\037\000\000"}, - {323, "atom", 0, 9, states_67, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\050\037\000\000"}, - {324, "testlist_comp", 0, 5, states_68, - "\000\040\200\000\004\000\000\000\000\000\010\000\000\000\020\002\000\300\220\050\037\000\000"}, - {325, "trailer", 0, 7, states_69, - "\000\040\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\010\000\000\000"}, - {326, "subscriptlist", 0, 3, states_70, - "\000\040\200\010\000\000\000\000\000\000\010\000\000\000\020\002\000\300\220\050\037\000\000"}, - {327, "subscript", 0, 5, states_71, - "\000\040\200\010\000\000\000\000\000\000\010\000\000\000\020\002\000\300\220\050\037\000\000"}, - {328, "sliceop", 0, 3, states_72, + {315, "expr", 0, 2, states_59, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\200\041\121\076\000\000"}, + {316, "xor_expr", 0, 2, states_60, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\200\041\121\076\000\000"}, + {317, "and_expr", 0, 2, states_61, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\200\041\121\076\000\000"}, + {318, "shift_expr", 0, 2, states_62, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\200\041\121\076\000\000"}, + {319, "arith_expr", 0, 2, states_63, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\200\041\121\076\000\000"}, + {320, "term", 0, 2, states_64, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\200\041\121\076\000\000"}, + {321, "factor", 0, 3, states_65, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\200\041\121\076\000\000"}, + {322, "power", 0, 4, states_66, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\121\076\000\000"}, + {323, "atom_expr", 0, 3, states_67, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\121\076\000\000"}, + {324, "atom", 0, 9, states_68, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\120\076\000\000"}, + {325, "testlist_comp", 0, 5, states_69, + "\000\040\200\000\004\000\000\000\000\000\020\000\000\000\040\004\000\200\041\121\076\000\000"}, + {326, "trailer", 0, 7, states_70, + "\000\040\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\020\000\000\000"}, + {327, "subscriptlist", 0, 3, states_71, + "\000\040\200\010\000\000\000\000\000\000\020\000\000\000\040\004\000\200\041\121\076\000\000"}, + {328, "subscript", 0, 5, states_72, + "\000\040\200\010\000\000\000\000\000\000\020\000\000\000\040\004\000\200\041\121\076\000\000"}, + {329, "sliceop", 0, 3, states_73, "\000\000\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {329, "exprlist", 0, 3, states_73, - "\000\040\200\000\004\000\000\000\000\000\010\000\000\000\000\000\000\300\220\050\037\000\000"}, - {330, "testlist", 0, 3, states_74, - "\000\040\200\000\000\000\000\000\000\000\010\000\000\000\020\002\000\300\220\050\037\000\000"}, - {331, "dictorsetmaker", 0, 14, states_75, - "\000\040\200\000\014\000\000\000\000\000\010\000\000\000\020\002\000\300\220\050\037\000\000"}, - {332, "classdef", 0, 8, states_76, - "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000"}, - {333, "arglist", 0, 3, states_77, - "\000\040\200\000\014\000\000\000\000\000\010\000\000\000\020\002\000\300\220\050\037\000\000"}, - {334, "argument", 0, 4, states_78, - "\000\040\200\000\014\000\000\000\000\000\010\000\000\000\020\002\000\300\220\050\037\000\000"}, - {335, "comp_iter", 0, 2, states_79, - "\000\000\000\000\000\000\000\000\000\000\000\000\042\000\000\000\000\000\000\000\000\000\000"}, - {336, "comp_for", 0, 6, states_80, - "\000\000\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000"}, - {337, "comp_if", 0, 4, states_81, - "\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000"}, - {338, "encoding_decl", 0, 2, states_82, + {330, "exprlist", 0, 3, states_74, + "\000\040\200\000\004\000\000\000\000\000\020\000\000\000\000\000\000\200\041\121\076\000\000"}, + {331, "testlist", 0, 3, states_75, + "\000\040\200\000\000\000\000\000\000\000\020\000\000\000\040\004\000\200\041\121\076\000\000"}, + {332, "dictorsetmaker", 0, 14, states_76, + "\000\040\200\000\014\000\000\000\000\000\020\000\000\000\040\004\000\200\041\121\076\000\000"}, + {333, "classdef", 0, 8, states_77, + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000"}, + {334, "arglist", 0, 3, states_78, + "\000\040\200\000\014\000\000\000\000\000\020\000\000\000\040\004\000\200\041\121\076\000\000"}, + {335, "argument", 0, 4, states_79, + "\000\040\200\000\014\000\000\000\000\000\020\000\000\000\040\004\000\200\041\121\076\000\000"}, + {336, "comp_iter", 0, 2, states_80, + "\000\000\000\000\000\000\000\000\000\000\000\000\104\000\000\000\000\000\000\000\000\000\000"}, + {337, "comp_for", 0, 6, states_81, + "\000\000\000\000\000\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000\000"}, + {338, "comp_if", 0, 4, states_82, + "\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000"}, + {339, "encoding_decl", 0, 2, states_83, "\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {339, "yield_expr", 0, 3, states_83, - "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\100\000"}, - {340, "yield_arg", 0, 3, states_84, - "\000\040\200\000\000\000\000\000\000\040\010\000\000\000\020\002\000\300\220\050\037\000\000"}, - {341, "func_type_input", 0, 3, states_85, + {340, "yield_expr", 0, 3, states_84, + "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\200\000"}, + {341, "yield_arg", 0, 3, states_85, + "\000\040\200\000\000\000\000\000\000\100\020\000\000\000\040\004\000\200\041\121\076\000\000"}, + {342, "func_type_input", 0, 3, states_86, "\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {342, "func_type", 0, 6, states_86, + {343, "func_type", 0, 6, states_87, "\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"}, - {343, "typelist", 0, 11, states_87, - "\000\040\200\000\014\000\000\000\000\000\010\000\000\000\020\002\000\300\220\050\037\000\000"}, + {344, "typelist", 0, 11, states_88, + "\000\040\200\000\014\000\000\000\000\000\020\000\000\000\040\004\000\200\041\121\076\000\000"}, }; -static label labels[179] = { +static label labels[180] = { {0, "EMPTY"}, {256, 0}, {4, 0}, {270, 0}, - {294, 0}, + {295, 0}, {257, 0}, {269, 0}, {0, 0}, {258, 0}, - {330, 0}, + {331, 0}, {259, 0}, {49, 0}, - {290, 0}, + {291, 0}, {7, 0}, - {333, 0}, + {334, 0}, {8, 0}, {260, 0}, {261, 0}, - {332, 0}, + {333, 0}, {263, 0}, {262, 0}, {55, 0}, @@ -2228,10 +2254,10 @@ static label labels[179] = { {1, 0}, {264, 0}, {51, 0}, - {304, 0}, + {305, 0}, {11, 0}, {57, 0}, - {303, 0}, + {304, 0}, {265, 0}, {266, 0}, {22, 0}, @@ -2243,17 +2269,18 @@ static label labels[179] = { {271, 0}, {13, 0}, {272, 0}, - {275, 0}, {276, 0}, {277, 0}, - {283, 0}, - {291, 0}, + {278, 0}, + {284, 0}, {292, 0}, {293, 0}, - {273, 0}, + {294, 0}, {274, 0}, - {339, 0}, - {313, 0}, + {273, 0}, + {275, 0}, + {340, 0}, + {314, 0}, {36, 0}, {37, 0}, {38, 0}, @@ -2268,37 +2295,37 @@ static label labels[179] = { {46, 0}, {48, 0}, {1, "del"}, - {329, 0}, + {330, 0}, {1, "pass"}, - {278, 0}, {279, 0}, {280, 0}, - {282, 0}, {281, 0}, + {283, 0}, + {282, 0}, {1, "break"}, {1, "continue"}, {1, "return"}, {1, "raise"}, {1, "from"}, - {284, 0}, {285, 0}, + {286, 0}, {1, "import"}, - {289, 0}, + {290, 0}, {23, 0}, {52, 0}, - {288, 0}, - {286, 0}, - {1, "as"}, + {289, 0}, {287, 0}, + {1, "as"}, + {288, 0}, {1, "global"}, {1, "nonlocal"}, {1, "assert"}, - {296, 0}, {297, 0}, {298, 0}, {299, 0}, {300, 0}, - {295, 0}, + {301, 0}, + {296, 0}, {1, "if"}, {1, "elif"}, {1, "else"}, @@ -2306,26 +2333,26 @@ static label labels[179] = { {1, "for"}, {1, "in"}, {1, "try"}, - {302, 0}, + {303, 0}, {1, "finally"}, {1, "with"}, - {301, 0}, - {314, 0}, + {302, 0}, + {315, 0}, {1, "except"}, {5, 0}, {6, 0}, - {308, 0}, - {306, 0}, - {305, 0}, + {309, 0}, {307, 0}, + {306, 0}, + {308, 0}, {1, "lambda"}, - {309, 0}, - {1, "or"}, {310, 0}, + {1, "or"}, + {311, 0}, {1, "and"}, {1, "not"}, - {311, 0}, {312, 0}, + {313, 0}, {20, 0}, {21, 0}, {27, 0}, @@ -2334,57 +2361,57 @@ static label labels[179] = { {28, 0}, {28, 0}, {1, "is"}, - {315, 0}, - {18, 0}, {316, 0}, - {32, 0}, + {18, 0}, {317, 0}, - {19, 0}, + {32, 0}, {318, 0}, + {19, 0}, + {319, 0}, {33, 0}, {34, 0}, - {319, 0}, + {320, 0}, {14, 0}, {15, 0}, - {320, 0}, + {321, 0}, {17, 0}, {24, 0}, {47, 0}, {31, 0}, - {321, 0}, {322, 0}, - {54, 0}, {323, 0}, - {325, 0}, + {54, 0}, {324, 0}, + {326, 0}, + {325, 0}, {9, 0}, {10, 0}, {25, 0}, - {331, 0}, + {332, 0}, {26, 0}, {2, 0}, {3, 0}, {1, "None"}, {1, "True"}, {1, "False"}, - {336, 0}, - {326, 0}, + {337, 0}, {327, 0}, {328, 0}, + {329, 0}, {1, "class"}, - {334, 0}, {335, 0}, - {337, 0}, + {336, 0}, {338, 0}, + {339, 0}, {1, "yield"}, - {340, 0}, {341, 0}, {342, 0}, {343, 0}, + {344, 0}, }; grammar _Ta35Parser_Grammar = { - 88, + 89, dfas, - {179, labels}, + {180, labels}, 256 }; diff --git a/ast35/pgen b/ast35/pgen new file mode 100755 index 0000000000000000000000000000000000000000..29ac2f60ce138a7f1a93033c73d7256ac3b765c1 GIT binary patch literal 303567 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%0AZRm7X!?-KVXlpM51n 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 literal 0 HcmV?d00001 From 92da6c4fac2398185a1f7159da2c6865d1de12bd Mon Sep 17 00:00:00 2001 From: Ivan Levkivskyi Date: Tue, 13 Sep 2016 22:37:11 +0200 Subject: [PATCH 02/16] Make assign value optional --- ast35/Parser/Python.asdl | 2 +- ast35/Python/Python-ast.c | 10 ++-------- ast35/Python/ast.c | 13 +++++++++---- 3 files changed, 12 insertions(+), 13 deletions(-) diff --git a/ast35/Parser/Python.asdl b/ast35/Parser/Python.asdl index 98737a32..f946b660 100644 --- a/ast35/Parser/Python.asdl +++ b/ast35/Parser/Python.asdl @@ -23,7 +23,7 @@ module Python | Return(expr? value) | Delete(expr* targets) - | Assign(expr* targets, expr value, expr? type_comment) + | Assign(expr* targets, expr? value, expr? type_comment) | AugAssign(expr target, operator op, expr value) -- use 'orelse' because else is a keyword in target languages diff --git a/ast35/Python/Python-ast.c b/ast35/Python/Python-ast.c index 9ad9d642..432d6db3 100644 --- a/ast35/Python/Python-ast.c +++ b/ast35/Python/Python-ast.c @@ -1373,11 +1373,6 @@ Assign(asdl_seq * targets, expr_ty value, expr_ty type_comment, int lineno, int col_offset, PyArena *arena) { stmt_ty p; - if (!value) { - PyErr_SetString(PyExc_ValueError, - "field value is required for Assign"); - return NULL; - } p = (stmt_ty)PyArena_Malloc(arena, sizeof(*p)); if (!p) return NULL; @@ -4579,7 +4574,7 @@ obj2ast_stmt(PyObject* obj, stmt_ty* out, PyArena* arena) PyErr_SetString(PyExc_TypeError, "required field \"targets\" missing from Assign"); return 1; } - if (_PyObject_HasAttrId(obj, &PyId_value)) { + if (exists_not_none(obj, &PyId_value)) { int res; tmp = _PyObject_GetAttrId(obj, &PyId_value); if (tmp == NULL) goto failed; @@ -4587,8 +4582,7 @@ obj2ast_stmt(PyObject* obj, stmt_ty* out, PyArena* arena) if (res != 0) goto failed; Py_CLEAR(tmp); } else { - PyErr_SetString(PyExc_TypeError, "required field \"value\" missing from Assign"); - return 1; + value = NULL; } if (exists_not_none(obj, &PyId_type_comment)) { int res; diff --git a/ast35/Python/ast.c b/ast35/Python/ast.c index be028bb8..ccdd319c 100644 --- a/ast35/Python/ast.c +++ b/ast35/Python/ast.c @@ -334,6 +334,11 @@ validate_stmt(stmt_ty stmt) case Delete_kind: return validate_assignlist(stmt->v.Delete.targets, Del); case Assign_kind: + if (!stmt->v.Assign.value && !stmt->v.Assign.type_comment) { + PyErr_SetString(PyExc_TypeError, + "Assignment should at least have type or value"); + return 0; + } return validate_assignlist(stmt->v.Assign.targets, Store) && validate_expr(stmt->v.Assign.value, Load) && (!stmt->v.Assign.type_comment || @@ -3048,14 +3053,14 @@ ast_for_expr_stmt(struct compiling *c, const node *n) return NULL; } if (NCH(ann) == 2) { - expr3 = NameConstant(Py_None, LINENO(n), n->n_col_offset, c->c_arena); + expr3 = NULL; } else { ch = CHILD(ann, 3); expr3 = ast_for_expr(c, ch); - } - if (!expr3) { - return NULL; + if (!expr3) { + return NULL; + } } asdl_seq_SET(targets, 0, expr1); return Assign(targets, expr3, type_comment, From 4836a3998bc3980e9d1efad282ccc3d00a6f9237 Mon Sep 17 00:00:00 2001 From: Ivan Levkivskyi Date: Wed, 14 Sep 2016 13:42:47 +0200 Subject: [PATCH 03/16] Fix bug with file_type --- ast35/Include/compile.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ast35/Include/compile.h b/ast35/Include/compile.h index 88a93870..f4cd238b 100644 --- a/ast35/Include/compile.h +++ b/ast35/Include/compile.h @@ -6,6 +6,6 @@ #define Py_single_input 256 #define Py_file_input 257 #define Py_eval_input 258 -#define Py_func_type_input 341 +#define Py_func_type_input 342 #endif /* !Ta35_COMPILE_H */ From f650268d97f629583fb5bc6228c7ba92fbaa6df5 Mon Sep 17 00:00:00 2001 From: Ivan Levkivskyi Date: Wed, 14 Sep 2016 14:14:12 +0200 Subject: [PATCH 04/16] remove my own /pgen --- ast35/pgen | Bin 303567 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100755 ast35/pgen diff --git a/ast35/pgen b/ast35/pgen deleted file mode 100755 index 29ac2f60ce138a7f1a93033c73d7256ac3b765c1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 303567 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%0AZRm7X!?-KVXlpM51n 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 From 4e74bf01308037f5ded086d4ee13a83a52bb3f12 Mon Sep 17 00:00:00 2001 From: Ivan Levkivskyi Date: Thu, 15 Sep 2016 00:22:49 +0200 Subject: [PATCH 05/16] New semantics for None; pending other changes requested by Guido --- ast35/Python/ast.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ast35/Python/ast.c b/ast35/Python/ast.c index ccdd319c..73b7873c 100644 --- a/ast35/Python/ast.c +++ b/ast35/Python/ast.c @@ -3108,6 +3108,10 @@ ast_for_expr_stmt(struct compiling *c, const node *n) if (has_type_comment) { chc = CHILD(n, nch_minus_type); type_comment = Str(NEW_TYPE_COMMENT(chc), LINENO(chc), chc->n_col_offset, c->c_arena); + if (expression->kind == NameConstant_kind && + expression->v.NameConstant.value == Py_None) { + expression = NULL; + } } else type_comment = NULL; From 806bce0fcf69cf5762648941f0248b97f1fa67d1 Mon Sep 17 00:00:00 2001 From: Ivan Levkivskyi Date: Thu, 15 Sep 2016 01:42:58 +0200 Subject: [PATCH 06/16] Bump version to 0.5.7 --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 4cd5b5fe..9f9dfb8b 100644 --- a/setup.py +++ b/setup.py @@ -82,7 +82,7 @@ """.strip() setup (name = 'typed-ast', - version = '0.5.6', + version = '0.5.7', description = 'fork of Python 2 and 3 ast modules with type comment support', long_description = long_description, author = 'David Fisher', From 5911aab5e02416f3495ab883bf963a1f4b9d13f7 Mon Sep 17 00:00:00 2001 From: Ivan Levkivskyi Date: Thu, 15 Sep 2016 16:39:15 +0200 Subject: [PATCH 07/16] Added an int field to indicste use of new syntax --- ast35/Include/Python-ast.h | 6 ++++-- ast35/Parser/Python.asdl | 2 +- ast35/Python/Python-ast.c | 28 ++++++++++++++++++++++++---- ast35/Python/ast.c | 5 +++-- 4 files changed, 32 insertions(+), 9 deletions(-) diff --git a/ast35/Include/Python-ast.h b/ast35/Include/Python-ast.h index 6b3c2c1c..39b26176 100644 --- a/ast35/Include/Python-ast.h +++ b/ast35/Include/Python-ast.h @@ -119,6 +119,7 @@ struct _stmt { asdl_seq *targets; expr_ty value; expr_ty type_comment; + int new_syntax; } Assign; struct { @@ -468,9 +469,10 @@ stmt_ty _Ta35_Return(expr_ty value, int lineno, int col_offset, PyArena *arena); #define Delete(a0, a1, a2, a3) _Ta35_Delete(a0, a1, a2, a3) stmt_ty _Ta35_Delete(asdl_seq * targets, int lineno, int col_offset, PyArena *arena); -#define Assign(a0, a1, a2, a3, a4, a5) _Ta35_Assign(a0, a1, a2, a3, a4, a5) +#define Assign(a0, a1, a2, a3, a4, a5, a6) _Ta35_Assign(a0, a1, a2, a3, a4, a5, a6) stmt_ty _Ta35_Assign(asdl_seq * targets, expr_ty value, expr_ty type_comment, - int lineno, int col_offset, PyArena *arena); + int new_syntax, int lineno, int col_offset, PyArena + *arena); #define AugAssign(a0, a1, a2, a3, a4, a5) _Ta35_AugAssign(a0, a1, a2, a3, a4, a5) stmt_ty _Ta35_AugAssign(expr_ty target, operator_ty op, expr_ty value, int lineno, int col_offset, PyArena *arena); diff --git a/ast35/Parser/Python.asdl b/ast35/Parser/Python.asdl index f946b660..5adfe0f5 100644 --- a/ast35/Parser/Python.asdl +++ b/ast35/Parser/Python.asdl @@ -23,7 +23,7 @@ module Python | Return(expr? value) | Delete(expr* targets) - | Assign(expr* targets, expr? value, expr? type_comment) + | Assign(expr* targets, expr? value, expr? type_comment, int? new_syntax) | AugAssign(expr target, operator op, expr value) -- use 'orelse' because else is a keyword in target languages diff --git a/ast35/Python/Python-ast.c b/ast35/Python/Python-ast.c index 432d6db3..06641304 100644 --- a/ast35/Python/Python-ast.c +++ b/ast35/Python/Python-ast.c @@ -85,10 +85,12 @@ static char *Delete_fields[]={ "targets", }; static PyTypeObject *Assign_type; +_Py_IDENTIFIER(new_syntax); static char *Assign_fields[]={ "targets", "value", "type_comment", + "new_syntax", }; static PyTypeObject *AugAssign_type; _Py_IDENTIFIER(target); @@ -862,7 +864,7 @@ static int init_types(void) if (!Return_type) return 0; Delete_type = make_type("Delete", stmt_type, Delete_fields, 1); if (!Delete_type) return 0; - Assign_type = make_type("Assign", stmt_type, Assign_fields, 3); + Assign_type = make_type("Assign", stmt_type, Assign_fields, 4); if (!Assign_type) return 0; AugAssign_type = make_type("AugAssign", stmt_type, AugAssign_fields, 3); if (!AugAssign_type) return 0; @@ -1369,8 +1371,8 @@ Delete(asdl_seq * targets, int lineno, int col_offset, PyArena *arena) } stmt_ty -Assign(asdl_seq * targets, expr_ty value, expr_ty type_comment, int lineno, int - col_offset, PyArena *arena) +Assign(asdl_seq * targets, expr_ty value, expr_ty type_comment, int new_syntax, + int lineno, int col_offset, PyArena *arena) { stmt_ty p; p = (stmt_ty)PyArena_Malloc(arena, sizeof(*p)); @@ -1380,6 +1382,7 @@ Assign(asdl_seq * targets, expr_ty value, expr_ty type_comment, int lineno, int p->v.Assign.targets = targets; p->v.Assign.value = value; p->v.Assign.type_comment = type_comment; + p->v.Assign.new_syntax = new_syntax; p->lineno = lineno; p->col_offset = col_offset; return p; @@ -2724,6 +2727,11 @@ ast2obj_stmt(void* _o) if (_PyObject_SetAttrId(result, &PyId_type_comment, value) == -1) goto failed; Py_DECREF(value); + value = ast2obj_int(o->v.Assign.new_syntax); + if (!value) goto failed; + if (_PyObject_SetAttrId(result, &PyId_new_syntax, value) == -1) + goto failed; + Py_DECREF(value); break; case AugAssign_kind: result = PyType_GenericNew(AugAssign_type, NULL, NULL); @@ -4549,6 +4557,7 @@ obj2ast_stmt(PyObject* obj, stmt_ty* out, PyArena* arena) asdl_seq* targets; expr_ty value; expr_ty type_comment; + int new_syntax; if (_PyObject_HasAttrId(obj, &PyId_targets)) { int res; @@ -4594,7 +4603,18 @@ obj2ast_stmt(PyObject* obj, stmt_ty* out, PyArena* arena) } else { type_comment = NULL; } - *out = Assign(targets, value, type_comment, lineno, col_offset, arena); + if (exists_not_none(obj, &PyId_new_syntax)) { + int res; + tmp = _PyObject_GetAttrId(obj, &PyId_new_syntax); + if (tmp == NULL) goto failed; + res = obj2ast_int(tmp, &new_syntax, arena); + if (res != 0) goto failed; + Py_CLEAR(tmp); + } else { + new_syntax = 0; + } + *out = Assign(targets, value, type_comment, new_syntax, lineno, + col_offset, arena); if (*out == NULL) goto failed; return 0; } diff --git a/ast35/Python/ast.c b/ast35/Python/ast.c index 73b7873c..75c3fb14 100644 --- a/ast35/Python/ast.c +++ b/ast35/Python/ast.c @@ -3063,7 +3063,7 @@ ast_for_expr_stmt(struct compiling *c, const node *n) } } asdl_seq_SET(targets, 0, expr1); - return Assign(targets, expr3, type_comment, + return Assign(targets, expr3, type_comment, 1, LINENO(n), n->n_col_offset, c->c_arena); } else { @@ -3115,7 +3115,8 @@ ast_for_expr_stmt(struct compiling *c, const node *n) } else type_comment = NULL; - return Assign(targets, expression, type_comment, LINENO(n), n->n_col_offset, c->c_arena); + return Assign(targets, expression, type_comment, 0, + LINENO(n), n->n_col_offset, c->c_arena); } } From c4119733909c86c4e69be02b0649c124d5824c9e Mon Sep 17 00:00:00 2001 From: Ivan Levkivskyi Date: Thu, 15 Sep 2016 17:38:35 +0200 Subject: [PATCH 08/16] expose own version --- setup.py | 4 +++- typed_ast/__init__.py | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 9f9dfb8b..8617cae7 100644 --- a/setup.py +++ b/setup.py @@ -7,6 +7,8 @@ except ImportError: from distutils.core import setup, Extension +import typed_ast + _ast27 = Extension( '_ast27', include_dirs = ['ast27/Include'], @@ -82,7 +84,7 @@ """.strip() setup (name = 'typed-ast', - version = '0.5.7', + version = typed_ast.__version__, description = 'fork of Python 2 and 3 ast modules with type comment support', long_description = long_description, author = 'David Fisher', diff --git a/typed_ast/__init__.py b/typed_ast/__init__.py index e69de29b..22e3a830 100644 --- a/typed_ast/__init__.py +++ b/typed_ast/__init__.py @@ -0,0 +1 @@ +__version__ = '0.5.7' From 7363164c5e05cf283514af790d1060ddb2dffe6e Mon Sep 17 00:00:00 2001 From: Ivan Levkivskyi Date: Thu, 15 Sep 2016 22:51:32 +0200 Subject: [PATCH 09/16] Simplify old parser behavior, all analysis should be done in mypy --- ast35/Python/ast.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/ast35/Python/ast.c b/ast35/Python/ast.c index 75c3fb14..751ebf38 100644 --- a/ast35/Python/ast.c +++ b/ast35/Python/ast.c @@ -3107,11 +3107,8 @@ ast_for_expr_stmt(struct compiling *c, const node *n) return NULL; if (has_type_comment) { chc = CHILD(n, nch_minus_type); - type_comment = Str(NEW_TYPE_COMMENT(chc), LINENO(chc), chc->n_col_offset, c->c_arena); - if (expression->kind == NameConstant_kind && - expression->v.NameConstant.value == Py_None) { - expression = NULL; - } + type_comment = Str(NEW_TYPE_COMMENT(chc), + LINENO(chc), chc->n_col_offset, c->c_arena); } else type_comment = NULL; From b93193d0d1af9eb3d8982df96876bcaa7534d036 Mon Sep 17 00:00:00 2001 From: David Fisher Date: Wed, 21 Sep 2016 11:09:09 -0700 Subject: [PATCH 10/16] change version This is technically a breaking interface change, so I'm going to bump a major version number. --- typed_ast/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/typed_ast/__init__.py b/typed_ast/__init__.py index 22e3a830..ef7eb44d 100644 --- a/typed_ast/__init__.py +++ b/typed_ast/__init__.py @@ -1 +1 @@ -__version__ = '0.5.7' +__version__ = '0.6.0' From cfdbef676094ad2327a29467596332c2b518284c Mon Sep 17 00:00:00 2001 From: Ivan Levkivskyi Date: Tue, 27 Sep 2016 22:04:35 +0200 Subject: [PATCH 11/16] Backward compatible implementation of PEP 526 --- ast35/Include/Python-ast.h | 8 ++++---- ast35/Parser/Python.asdl | 2 +- ast35/Python/Python-ast.c | 33 ++++++++++++++++----------------- ast35/Python/ast.c | 36 ++++++++++++++++++++---------------- typed_ast/__init__.py | 2 +- 5 files changed, 42 insertions(+), 39 deletions(-) diff --git a/ast35/Include/Python-ast.h b/ast35/Include/Python-ast.h index 39b26176..6b070e69 100644 --- a/ast35/Include/Python-ast.h +++ b/ast35/Include/Python-ast.h @@ -118,8 +118,8 @@ struct _stmt { struct { asdl_seq *targets; expr_ty value; - expr_ty type_comment; - int new_syntax; + string type_comment; + expr_ty annotation; } Assign; struct { @@ -470,8 +470,8 @@ stmt_ty _Ta35_Return(expr_ty value, int lineno, int col_offset, PyArena *arena); stmt_ty _Ta35_Delete(asdl_seq * targets, int lineno, int col_offset, PyArena *arena); #define Assign(a0, a1, a2, a3, a4, a5, a6) _Ta35_Assign(a0, a1, a2, a3, a4, a5, a6) -stmt_ty _Ta35_Assign(asdl_seq * targets, expr_ty value, expr_ty type_comment, - int new_syntax, int lineno, int col_offset, PyArena +stmt_ty _Ta35_Assign(asdl_seq * targets, expr_ty value, string type_comment, + expr_ty annotation, int lineno, int col_offset, PyArena *arena); #define AugAssign(a0, a1, a2, a3, a4, a5) _Ta35_AugAssign(a0, a1, a2, a3, a4, a5) stmt_ty _Ta35_AugAssign(expr_ty target, operator_ty op, expr_ty value, int diff --git a/ast35/Parser/Python.asdl b/ast35/Parser/Python.asdl index 5adfe0f5..c59a551f 100644 --- a/ast35/Parser/Python.asdl +++ b/ast35/Parser/Python.asdl @@ -23,7 +23,7 @@ module Python | Return(expr? value) | Delete(expr* targets) - | Assign(expr* targets, expr? value, expr? type_comment, int? new_syntax) + | Assign(expr* targets, expr? value, string? type_comment, expr? annotation) | AugAssign(expr target, operator op, expr value) -- use 'orelse' because else is a keyword in target languages diff --git a/ast35/Python/Python-ast.c b/ast35/Python/Python-ast.c index 06641304..45cf4bb6 100644 --- a/ast35/Python/Python-ast.c +++ b/ast35/Python/Python-ast.c @@ -85,12 +85,12 @@ static char *Delete_fields[]={ "targets", }; static PyTypeObject *Assign_type; -_Py_IDENTIFIER(new_syntax); +_Py_IDENTIFIER(annotation); static char *Assign_fields[]={ "targets", "value", "type_comment", - "new_syntax", + "annotation", }; static PyTypeObject *AugAssign_type; _Py_IDENTIFIER(target); @@ -466,7 +466,6 @@ static char *arg_attributes[] = { "col_offset", }; _Py_IDENTIFIER(arg); -_Py_IDENTIFIER(annotation); static char *arg_fields[]={ "arg", "annotation", @@ -1371,8 +1370,8 @@ Delete(asdl_seq * targets, int lineno, int col_offset, PyArena *arena) } stmt_ty -Assign(asdl_seq * targets, expr_ty value, expr_ty type_comment, int new_syntax, - int lineno, int col_offset, PyArena *arena) +Assign(asdl_seq * targets, expr_ty value, string type_comment, expr_ty + annotation, int lineno, int col_offset, PyArena *arena) { stmt_ty p; p = (stmt_ty)PyArena_Malloc(arena, sizeof(*p)); @@ -1382,7 +1381,7 @@ Assign(asdl_seq * targets, expr_ty value, expr_ty type_comment, int new_syntax, p->v.Assign.targets = targets; p->v.Assign.value = value; p->v.Assign.type_comment = type_comment; - p->v.Assign.new_syntax = new_syntax; + p->v.Assign.annotation = annotation; p->lineno = lineno; p->col_offset = col_offset; return p; @@ -2722,14 +2721,14 @@ ast2obj_stmt(void* _o) if (_PyObject_SetAttrId(result, &PyId_value, value) == -1) goto failed; Py_DECREF(value); - value = ast2obj_expr(o->v.Assign.type_comment); + value = ast2obj_string(o->v.Assign.type_comment); if (!value) goto failed; if (_PyObject_SetAttrId(result, &PyId_type_comment, value) == -1) goto failed; Py_DECREF(value); - value = ast2obj_int(o->v.Assign.new_syntax); + value = ast2obj_expr(o->v.Assign.annotation); if (!value) goto failed; - if (_PyObject_SetAttrId(result, &PyId_new_syntax, value) == -1) + if (_PyObject_SetAttrId(result, &PyId_annotation, value) == -1) goto failed; Py_DECREF(value); break; @@ -4556,8 +4555,8 @@ obj2ast_stmt(PyObject* obj, stmt_ty* out, PyArena* arena) if (isinstance) { asdl_seq* targets; expr_ty value; - expr_ty type_comment; - int new_syntax; + string type_comment; + expr_ty annotation; if (_PyObject_HasAttrId(obj, &PyId_targets)) { int res; @@ -4597,23 +4596,23 @@ obj2ast_stmt(PyObject* obj, stmt_ty* out, PyArena* arena) int res; tmp = _PyObject_GetAttrId(obj, &PyId_type_comment); if (tmp == NULL) goto failed; - res = obj2ast_expr(tmp, &type_comment, arena); + res = obj2ast_string(tmp, &type_comment, arena); if (res != 0) goto failed; Py_CLEAR(tmp); } else { type_comment = NULL; } - if (exists_not_none(obj, &PyId_new_syntax)) { + if (exists_not_none(obj, &PyId_annotation)) { int res; - tmp = _PyObject_GetAttrId(obj, &PyId_new_syntax); + tmp = _PyObject_GetAttrId(obj, &PyId_annotation); if (tmp == NULL) goto failed; - res = obj2ast_int(tmp, &new_syntax, arena); + res = obj2ast_expr(tmp, &annotation, arena); if (res != 0) goto failed; Py_CLEAR(tmp); } else { - new_syntax = 0; + annotation = NULL; } - *out = Assign(targets, value, type_comment, new_syntax, lineno, + *out = Assign(targets, value, type_comment, annotation, lineno, col_offset, arena); if (*out == NULL) goto failed; return 0; diff --git a/ast35/Python/ast.c b/ast35/Python/ast.c index 751ebf38..cf43b267 100644 --- a/ast35/Python/ast.c +++ b/ast35/Python/ast.c @@ -334,15 +334,21 @@ validate_stmt(stmt_ty stmt) case Delete_kind: return validate_assignlist(stmt->v.Delete.targets, Del); case Assign_kind: - if (!stmt->v.Assign.value && !stmt->v.Assign.type_comment) { + if (!stmt->v.Assign.value && !stmt->v.Assign.annotation) { PyErr_SetString(PyExc_TypeError, "Assignment should at least have type or value"); return 0; } + if (stmt->v.Assign.type_comment && stmt->v.Assign.annotation) { + PyErr_SetString(PyExc_TypeError, + "Assignment can't have annotaion and type comment"); + return 0; + } return validate_assignlist(stmt->v.Assign.targets, Store) && - validate_expr(stmt->v.Assign.value, Load) && - (!stmt->v.Assign.type_comment || - validate_expr(stmt->v.Assign.type_comment, Load)); + (!stmt->v.Assign.value || + validate_expr(stmt->v.Assign.value, Load)) && + (!stmt->v.Assign.annotation || + validate_expr(stmt->v.Assign.annotation, Load)); case AugAssign_kind: return validate_expr(stmt->v.AugAssign.target, Store) && validate_expr(stmt->v.AugAssign.value, Load); @@ -3007,7 +3013,7 @@ ast_for_expr_stmt(struct compiling *c, const node *n) return AugAssign(expr1, newoperator, expr2, LINENO(n), n->n_col_offset, c->c_arena); } else if (TYPE(CHILD(n, 1)) == annassign) { - expr_ty expr1, type_comment, expr3; + expr_ty expr1, annotation, expr3; node *ch = CHILD(n, 0); node *ann = CHILD(n, 1); asdl_seq *targets = _Py_asdl_seq_new(1, c->c_arena); @@ -3048,8 +3054,8 @@ ast_for_expr_stmt(struct compiling *c, const node *n) return NULL; } ch = CHILD(ann, 1); - type_comment = ast_for_expr(c, ch); - if (!type_comment) { + annotation = ast_for_expr(c, ch); + if (!annotation) { return NULL; } if (NCH(ann) == 2) { @@ -3063,14 +3069,15 @@ ast_for_expr_stmt(struct compiling *c, const node *n) } } asdl_seq_SET(targets, 0, expr1); - return Assign(targets, expr3, type_comment, 1, + return Assign(targets, expr3, NULL, annotation, LINENO(n), n->n_col_offset, c->c_arena); } else { int i, nch_minus_type, has_type_comment; asdl_seq *targets; - node *value, *chc; - expr_ty expression, type_comment; + node *value; + expr_ty expression; + string type_comment; /* a normal assignment */ REQ(CHILD(n, 1), EQUAL); @@ -3105,14 +3112,11 @@ ast_for_expr_stmt(struct compiling *c, const node *n) expression = ast_for_expr(c, value); if (!expression) return NULL; - if (has_type_comment) { - chc = CHILD(n, nch_minus_type); - type_comment = Str(NEW_TYPE_COMMENT(chc), - LINENO(chc), chc->n_col_offset, c->c_arena); - } + if (has_type_comment) + type_comment = NEW_TYPE_COMMENT(CHILD(n, nch_minus_type)); else type_comment = NULL; - return Assign(targets, expression, type_comment, 0, + return Assign(targets, expression, type_comment, NULL, LINENO(n), n->n_col_offset, c->c_arena); } } diff --git a/typed_ast/__init__.py b/typed_ast/__init__.py index 22e3a830..ef7eb44d 100644 --- a/typed_ast/__init__.py +++ b/typed_ast/__init__.py @@ -1 +1 @@ -__version__ = '0.5.7' +__version__ = '0.6.0' From 676cd27103d8feafe1c59ce867f6c41a7ca4d1b9 Mon Sep 17 00:00:00 2001 From: David Fisher Date: Tue, 27 Sep 2016 16:40:28 -0700 Subject: [PATCH 12/16] Fix tiny typo --- ast35/Python/ast.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ast35/Python/ast.c b/ast35/Python/ast.c index cf43b267..a545844b 100644 --- a/ast35/Python/ast.c +++ b/ast35/Python/ast.c @@ -341,7 +341,7 @@ validate_stmt(stmt_ty stmt) } if (stmt->v.Assign.type_comment && stmt->v.Assign.annotation) { PyErr_SetString(PyExc_TypeError, - "Assignment can't have annotaion and type comment"); + "Assignment can't have annotation and type comment"); return 0; } return validate_assignlist(stmt->v.Assign.targets, Store) && From 4591c9ce7a4c903c06b9a1b712584d1c9a517343 Mon Sep 17 00:00:00 2001 From: David Fisher Date: Tue, 27 Sep 2016 16:41:49 -0700 Subject: [PATCH 13/16] slight wording change --- ast35/Python/ast.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ast35/Python/ast.c b/ast35/Python/ast.c index a545844b..1340717e 100644 --- a/ast35/Python/ast.c +++ b/ast35/Python/ast.c @@ -341,7 +341,7 @@ validate_stmt(stmt_ty stmt) } if (stmt->v.Assign.type_comment && stmt->v.Assign.annotation) { PyErr_SetString(PyExc_TypeError, - "Assignment can't have annotation and type comment"); + "Assignment can't have both annotation and type comment"); return 0; } return validate_assignlist(stmt->v.Assign.targets, Store) && From 2ea321284bbce6fdbcd202bbfccf471471e9c5ed Mon Sep 17 00:00:00 2001 From: David Fisher Date: Tue, 27 Sep 2016 16:43:17 -0700 Subject: [PATCH 14/16] Hard-code version number It turns out that importing yourself in setup.py is a bad idea. See e.g.: http://stackoverflow.com/questions/2058802/how-can-i-get-the-version-defined-in-setup-py-setuptools-in-my-package --- setup.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/setup.py b/setup.py index 8617cae7..576954ba 100644 --- a/setup.py +++ b/setup.py @@ -7,8 +7,6 @@ except ImportError: from distutils.core import setup, Extension -import typed_ast - _ast27 = Extension( '_ast27', include_dirs = ['ast27/Include'], @@ -84,7 +82,7 @@ """.strip() setup (name = 'typed-ast', - version = typed_ast.__version__, + version = '0.6.0', description = 'fork of Python 2 and 3 ast modules with type comment support', long_description = long_description, author = 'David Fisher', From 476025ae46119d9617a403404c92cfa0a7521e78 Mon Sep 17 00:00:00 2001 From: David Fisher Date: Tue, 27 Sep 2016 16:47:11 -0700 Subject: [PATCH 15/16] Remove unnecessary/duplicate version string --- typed_ast/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/typed_ast/__init__.py b/typed_ast/__init__.py index ef7eb44d..8b137891 100644 --- a/typed_ast/__init__.py +++ b/typed_ast/__init__.py @@ -1 +1 @@ -__version__ = '0.6.0' + From 6157371a82aadf67a6b2e94241d581972cbf28b4 Mon Sep 17 00:00:00 2001 From: David Fisher Date: Tue, 27 Sep 2016 16:47:34 -0700 Subject: [PATCH 16/16] remove blank line