1 /* File automatically generated by Parser/asdl_c.py. */ 2 3 #include "asdl.h" 4 5 typedef struct _mod *mod_ty; 6 7 typedef struct _stmt *stmt_ty; 8 9 typedef struct _expr *expr_ty; 10 11 typedef enum _expr_context { Load=1, Store=2, Del=3, AugLoad=4, AugStore=5, 12 Param=6 } expr_context_ty; 13 14 typedef struct _slice *slice_ty; 15 16 typedef enum _boolop { And=1, Or=2 } boolop_ty; 17 18 typedef enum _operator { Add=1, Sub=2, Mult=3, MatMult=4, Div=5, Mod=6, Pow=7, 19 LShift=8, RShift=9, BitOr=10, BitXor=11, BitAnd=12, 20 FloorDiv=13 } operator_ty; 21 22 typedef enum _unaryop { Invert=1, Not=2, UAdd=3, USub=4 } unaryop_ty; 23 24 typedef enum _cmpop { Eq=1, NotEq=2, Lt=3, LtE=4, Gt=5, GtE=6, Is=7, IsNot=8, 25 In=9, NotIn=10 } cmpop_ty; 26 27 typedef struct _comprehension *comprehension_ty; 28 29 typedef struct _excepthandler *excepthandler_ty; 30 31 typedef struct _arguments *arguments_ty; 32 33 typedef struct _arg *arg_ty; 34 35 typedef struct _keyword *keyword_ty; 36 37 typedef struct _alias *alias_ty; 38 39 typedef struct _withitem *withitem_ty; 40 41 42 enum _mod_kind {Module_kind=1, Interactive_kind=2, Expression_kind=3, 43 Suite_kind=4}; 44 struct _mod { 45 enum _mod_kind kind; 46 union { 47 struct { 48 asdl_seq *body; 49 } Module; 50 51 struct { 52 asdl_seq *body; 53 } Interactive; 54 55 struct { 56 expr_ty body; 57 } Expression; 58 59 struct { 60 asdl_seq *body; 61 } Suite; 62 63 } v; 64 }; 65 66 enum _stmt_kind {FunctionDef_kind=1, AsyncFunctionDef_kind=2, ClassDef_kind=3, 67 Return_kind=4, Delete_kind=5, Assign_kind=6, 68 AugAssign_kind=7, For_kind=8, AsyncFor_kind=9, While_kind=10, 69 If_kind=11, With_kind=12, AsyncWith_kind=13, Raise_kind=14, 70 Try_kind=15, Assert_kind=16, Import_kind=17, 71 ImportFrom_kind=18, Global_kind=19, Nonlocal_kind=20, 72 Expr_kind=21, Pass_kind=22, Break_kind=23, Continue_kind=24}; 73 struct _stmt { 74 enum _stmt_kind kind; 75 union { 76 struct { 77 identifier name; 78 arguments_ty args; 79 asdl_seq *body; 80 asdl_seq *decorator_list; 81 expr_ty returns; 82 } FunctionDef; 83 84 struct { 85 identifier name; 86 arguments_ty args; 87 asdl_seq *body; 88 asdl_seq *decorator_list; 89 expr_ty returns; 90 } AsyncFunctionDef; 91 92 struct { 93 identifier name; 94 asdl_seq *bases; 95 asdl_seq *keywords; 96 asdl_seq *body; 97 asdl_seq *decorator_list; 98 } ClassDef; 99 100 struct { 101 expr_ty value; 102 } Return; 103 104 struct { 105 asdl_seq *targets; 106 } Delete; 107 108 struct { 109 asdl_seq *targets; 110 expr_ty value; 111 } Assign; 112 113 struct { 114 expr_ty target; 115 operator_ty op; 116 expr_ty value; 117 } AugAssign; 118 119 struct { 120 expr_ty target; 121 expr_ty iter; 122 asdl_seq *body; 123 asdl_seq *orelse; 124 } For; 125 126 struct { 127 expr_ty target; 128 expr_ty iter; 129 asdl_seq *body; 130 asdl_seq *orelse; 131 } AsyncFor; 132 133 struct { 134 expr_ty test; 135 asdl_seq *body; 136 asdl_seq *orelse; 137 } While; 138 139 struct { 140 expr_ty test; 141 asdl_seq *body; 142 asdl_seq *orelse; 143 } If; 144 145 struct { 146 asdl_seq *items; 147 asdl_seq *body; 148 } With; 149 150 struct { 151 asdl_seq *items; 152 asdl_seq *body; 153 } AsyncWith; 154 155 struct { 156 expr_ty exc; 157 expr_ty cause; 158 } Raise; 159 160 struct { 161 asdl_seq *body; 162 asdl_seq *handlers; 163 asdl_seq *orelse; 164 asdl_seq *finalbody; 165 } Try; 166 167 struct { 168 expr_ty test; 169 expr_ty msg; 170 } Assert; 171 172 struct { 173 asdl_seq *names; 174 } Import; 175 176 struct { 177 identifier module; 178 asdl_seq *names; 179 int level; 180 } ImportFrom; 181 182 struct { 183 asdl_seq *names; 184 } Global; 185 186 struct { 187 asdl_seq *names; 188 } Nonlocal; 189 190 struct { 191 expr_ty value; 192 } Expr; 193 194 } v; 195 int lineno; 196 int col_offset; 197 }; 198 199 enum _expr_kind {BoolOp_kind=1, BinOp_kind=2, UnaryOp_kind=3, Lambda_kind=4, 200 IfExp_kind=5, Dict_kind=6, Set_kind=7, ListComp_kind=8, 201 SetComp_kind=9, DictComp_kind=10, GeneratorExp_kind=11, 202 Await_kind=12, Yield_kind=13, YieldFrom_kind=14, 203 Compare_kind=15, Call_kind=16, Num_kind=17, Str_kind=18, 204 Bytes_kind=19, NameConstant_kind=20, Ellipsis_kind=21, 205 Attribute_kind=22, Subscript_kind=23, Starred_kind=24, 206 Name_kind=25, List_kind=26, Tuple_kind=27}; 207 struct _expr { 208 enum _expr_kind kind; 209 union { 210 struct { 211 boolop_ty op; 212 asdl_seq *values; 213 } BoolOp; 214 215 struct { 216 expr_ty left; 217 operator_ty op; 218 expr_ty right; 219 } BinOp; 220 221 struct { 222 unaryop_ty op; 223 expr_ty operand; 224 } UnaryOp; 225 226 struct { 227 arguments_ty args; 228 expr_ty body; 229 } Lambda; 230 231 struct { 232 expr_ty test; 233 expr_ty body; 234 expr_ty orelse; 235 } IfExp; 236 237 struct { 238 asdl_seq *keys; 239 asdl_seq *values; 240 } Dict; 241 242 struct { 243 asdl_seq *elts; 244 } Set; 245 246 struct { 247 expr_ty elt; 248 asdl_seq *generators; 249 } ListComp; 250 251 struct { 252 expr_ty elt; 253 asdl_seq *generators; 254 } SetComp; 255 256 struct { 257 expr_ty key; 258 expr_ty value; 259 asdl_seq *generators; 260 } DictComp; 261 262 struct { 263 expr_ty elt; 264 asdl_seq *generators; 265 } GeneratorExp; 266 267 struct { 268 expr_ty value; 269 } Await; 270 271 struct { 272 expr_ty value; 273 } Yield; 274 275 struct { 276 expr_ty value; 277 } YieldFrom; 278 279 struct { 280 expr_ty left; 281 asdl_int_seq *ops; 282 asdl_seq *comparators; 283 } Compare; 284 285 struct { 286 expr_ty func; 287 asdl_seq *args; 288 asdl_seq *keywords; 289 } Call; 290 291 struct { 292 object n; 293 } Num; 294 295 struct { 296 string s; 297 } Str; 298 299 struct { 300 bytes s; 301 } Bytes; 302 303 struct { 304 singleton value; 305 } NameConstant; 306 307 struct { 308 expr_ty value; 309 identifier attr; 310 expr_context_ty ctx; 311 } Attribute; 312 313 struct { 314 expr_ty value; 315 slice_ty slice; 316 expr_context_ty ctx; 317 } Subscript; 318 319 struct { 320 expr_ty value; 321 expr_context_ty ctx; 322 } Starred; 323 324 struct { 325 identifier id; 326 expr_context_ty ctx; 327 } Name; 328 329 struct { 330 asdl_seq *elts; 331 expr_context_ty ctx; 332 } List; 333 334 struct { 335 asdl_seq *elts; 336 expr_context_ty ctx; 337 } Tuple; 338 339 } v; 340 int lineno; 341 int col_offset; 342 }; 343 344 enum _slice_kind {Slice_kind=1, ExtSlice_kind=2, Index_kind=3}; 345 struct _slice { 346 enum _slice_kind kind; 347 union { 348 struct { 349 expr_ty lower; 350 expr_ty upper; 351 expr_ty step; 352 } Slice; 353 354 struct { 355 asdl_seq *dims; 356 } ExtSlice; 357 358 struct { 359 expr_ty value; 360 } Index; 361 362 } v; 363 }; 364 365 struct _comprehension { 366 expr_ty target; 367 expr_ty iter; 368 asdl_seq *ifs; 369 }; 370 371 enum _excepthandler_kind {ExceptHandler_kind=1}; 372 struct _excepthandler { 373 enum _excepthandler_kind kind; 374 union { 375 struct { 376 expr_ty type; 377 identifier name; 378 asdl_seq *body; 379 } ExceptHandler; 380 381 } v; 382 int lineno; 383 int col_offset; 384 }; 385 386 struct _arguments { 387 asdl_seq *args; 388 arg_ty vararg; 389 asdl_seq *kwonlyargs; 390 asdl_seq *kw_defaults; 391 arg_ty kwarg; 392 asdl_seq *defaults; 393 }; 394 395 struct _arg { 396 identifier arg; 397 expr_ty annotation; 398 int lineno; 399 int col_offset; 400 }; 401 402 struct _keyword { 403 identifier arg; 404 expr_ty value; 405 }; 406 407 struct _alias { 408 identifier name; 409 identifier asname; 410 }; 411 412 struct _withitem { 413 expr_ty context_expr; 414 expr_ty optional_vars; 415 }; 416 417 418 #define Module(a0, a1) _Py_Module(a0, a1) 419 mod_ty _Py_Module(asdl_seq * body, PyArena *arena); 420 #define Interactive(a0, a1) _Py_Interactive(a0, a1) 421 mod_ty _Py_Interactive(asdl_seq * body, PyArena *arena); 422 #define Expression(a0, a1) _Py_Expression(a0, a1) 423 mod_ty _Py_Expression(expr_ty body, PyArena *arena); 424 #define Suite(a0, a1) _Py_Suite(a0, a1) 425 mod_ty _Py_Suite(asdl_seq * body, PyArena *arena); 426 #define FunctionDef(a0, a1, a2, a3, a4, a5, a6, a7) _Py_FunctionDef(a0, a1, a2, a3, a4, a5, a6, a7) 427 stmt_ty _Py_FunctionDef(identifier name, arguments_ty args, asdl_seq * body, 428 asdl_seq * decorator_list, expr_ty returns, int lineno, 429 int col_offset, PyArena *arena); 430 #define AsyncFunctionDef(a0, a1, a2, a3, a4, a5, a6, a7) _Py_AsyncFunctionDef(a0, a1, a2, a3, a4, a5, a6, a7) 431 stmt_ty _Py_AsyncFunctionDef(identifier name, arguments_ty args, asdl_seq * 432 body, asdl_seq * decorator_list, expr_ty returns, 433 int lineno, int col_offset, PyArena *arena); 434 #define ClassDef(a0, a1, a2, a3, a4, a5, a6, a7) _Py_ClassDef(a0, a1, a2, a3, a4, a5, a6, a7) 435 stmt_ty _Py_ClassDef(identifier name, asdl_seq * bases, asdl_seq * keywords, 436 asdl_seq * body, asdl_seq * decorator_list, int lineno, 437 int col_offset, PyArena *arena); 438 #define Return(a0, a1, a2, a3) _Py_Return(a0, a1, a2, a3) 439 stmt_ty _Py_Return(expr_ty value, int lineno, int col_offset, PyArena *arena); 440 #define Delete(a0, a1, a2, a3) _Py_Delete(a0, a1, a2, a3) 441 stmt_ty _Py_Delete(asdl_seq * targets, int lineno, int col_offset, PyArena 442 *arena); 443 #define Assign(a0, a1, a2, a3, a4) _Py_Assign(a0, a1, a2, a3, a4) 444 stmt_ty _Py_Assign(asdl_seq * targets, expr_ty value, int lineno, int 445 col_offset, PyArena *arena); 446 #define AugAssign(a0, a1, a2, a3, a4, a5) _Py_AugAssign(a0, a1, a2, a3, a4, a5) 447 stmt_ty _Py_AugAssign(expr_ty target, operator_ty op, expr_ty value, int 448 lineno, int col_offset, PyArena *arena); 449 #define For(a0, a1, a2, a3, a4, a5, a6) _Py_For(a0, a1, a2, a3, a4, a5, a6) 450 stmt_ty _Py_For(expr_ty target, expr_ty iter, asdl_seq * body, asdl_seq * 451 orelse, int lineno, int col_offset, PyArena *arena); 452 #define AsyncFor(a0, a1, a2, a3, a4, a5, a6) _Py_AsyncFor(a0, a1, a2, a3, a4, a5, a6) 453 stmt_ty _Py_AsyncFor(expr_ty target, expr_ty iter, asdl_seq * body, asdl_seq * 454 orelse, int lineno, int col_offset, PyArena *arena); 455 #define While(a0, a1, a2, a3, a4, a5) _Py_While(a0, a1, a2, a3, a4, a5) 456 stmt_ty _Py_While(expr_ty test, asdl_seq * body, asdl_seq * orelse, int lineno, 457 int col_offset, PyArena *arena); 458 #define If(a0, a1, a2, a3, a4, a5) _Py_If(a0, a1, a2, a3, a4, a5) 459 stmt_ty _Py_If(expr_ty test, asdl_seq * body, asdl_seq * orelse, int lineno, 460 int col_offset, PyArena *arena); 461 #define With(a0, a1, a2, a3, a4) _Py_With(a0, a1, a2, a3, a4) 462 stmt_ty _Py_With(asdl_seq * items, asdl_seq * body, int lineno, int col_offset, 463 PyArena *arena); 464 #define AsyncWith(a0, a1, a2, a3, a4) _Py_AsyncWith(a0, a1, a2, a3, a4) 465 stmt_ty _Py_AsyncWith(asdl_seq * items, asdl_seq * body, int lineno, int 466 col_offset, PyArena *arena); 467 #define Raise(a0, a1, a2, a3, a4) _Py_Raise(a0, a1, a2, a3, a4) 468 stmt_ty _Py_Raise(expr_ty exc, expr_ty cause, int lineno, int col_offset, 469 PyArena *arena); 470 #define Try(a0, a1, a2, a3, a4, a5, a6) _Py_Try(a0, a1, a2, a3, a4, a5, a6) 471 stmt_ty _Py_Try(asdl_seq * body, asdl_seq * handlers, asdl_seq * orelse, 472 asdl_seq * finalbody, int lineno, int col_offset, PyArena 473 *arena); 474 #define Assert(a0, a1, a2, a3, a4) _Py_Assert(a0, a1, a2, a3, a4) 475 stmt_ty _Py_Assert(expr_ty test, expr_ty msg, int lineno, int col_offset, 476 PyArena *arena); 477 #define Import(a0, a1, a2, a3) _Py_Import(a0, a1, a2, a3) 478 stmt_ty _Py_Import(asdl_seq * names, int lineno, int col_offset, PyArena 479 *arena); 480 #define ImportFrom(a0, a1, a2, a3, a4, a5) _Py_ImportFrom(a0, a1, a2, a3, a4, a5) 481 stmt_ty _Py_ImportFrom(identifier module, asdl_seq * names, int level, int 482 lineno, int col_offset, PyArena *arena); 483 #define Global(a0, a1, a2, a3) _Py_Global(a0, a1, a2, a3) 484 stmt_ty _Py_Global(asdl_seq * names, int lineno, int col_offset, PyArena 485 *arena); 486 #define Nonlocal(a0, a1, a2, a3) _Py_Nonlocal(a0, a1, a2, a3) 487 stmt_ty _Py_Nonlocal(asdl_seq * names, int lineno, int col_offset, PyArena 488 *arena); 489 #define Expr(a0, a1, a2, a3) _Py_Expr(a0, a1, a2, a3) 490 stmt_ty _Py_Expr(expr_ty value, int lineno, int col_offset, PyArena *arena); 491 #define Pass(a0, a1, a2) _Py_Pass(a0, a1, a2) 492 stmt_ty _Py_Pass(int lineno, int col_offset, PyArena *arena); 493 #define Break(a0, a1, a2) _Py_Break(a0, a1, a2) 494 stmt_ty _Py_Break(int lineno, int col_offset, PyArena *arena); 495 #define Continue(a0, a1, a2) _Py_Continue(a0, a1, a2) 496 stmt_ty _Py_Continue(int lineno, int col_offset, PyArena *arena); 497 #define BoolOp(a0, a1, a2, a3, a4) _Py_BoolOp(a0, a1, a2, a3, a4) 498 expr_ty _Py_BoolOp(boolop_ty op, asdl_seq * values, int lineno, int col_offset, 499 PyArena *arena); 500 #define BinOp(a0, a1, a2, a3, a4, a5) _Py_BinOp(a0, a1, a2, a3, a4, a5) 501 expr_ty _Py_BinOp(expr_ty left, operator_ty op, expr_ty right, int lineno, int 502 col_offset, PyArena *arena); 503 #define UnaryOp(a0, a1, a2, a3, a4) _Py_UnaryOp(a0, a1, a2, a3, a4) 504 expr_ty _Py_UnaryOp(unaryop_ty op, expr_ty operand, int lineno, int col_offset, 505 PyArena *arena); 506 #define Lambda(a0, a1, a2, a3, a4) _Py_Lambda(a0, a1, a2, a3, a4) 507 expr_ty _Py_Lambda(arguments_ty args, expr_ty body, int lineno, int col_offset, 508 PyArena *arena); 509 #define IfExp(a0, a1, a2, a3, a4, a5) _Py_IfExp(a0, a1, a2, a3, a4, a5) 510 expr_ty _Py_IfExp(expr_ty test, expr_ty body, expr_ty orelse, int lineno, int 511 col_offset, PyArena *arena); 512 #define Dict(a0, a1, a2, a3, a4) _Py_Dict(a0, a1, a2, a3, a4) 513 expr_ty _Py_Dict(asdl_seq * keys, asdl_seq * values, int lineno, int 514 col_offset, PyArena *arena); 515 #define Set(a0, a1, a2, a3) _Py_Set(a0, a1, a2, a3) 516 expr_ty _Py_Set(asdl_seq * elts, int lineno, int col_offset, PyArena *arena); 517 #define ListComp(a0, a1, a2, a3, a4) _Py_ListComp(a0, a1, a2, a3, a4) 518 expr_ty _Py_ListComp(expr_ty elt, asdl_seq * generators, int lineno, int 519 col_offset, PyArena *arena); 520 #define SetComp(a0, a1, a2, a3, a4) _Py_SetComp(a0, a1, a2, a3, a4) 521 expr_ty _Py_SetComp(expr_ty elt, asdl_seq * generators, int lineno, int 522 col_offset, PyArena *arena); 523 #define DictComp(a0, a1, a2, a3, a4, a5) _Py_DictComp(a0, a1, a2, a3, a4, a5) 524 expr_ty _Py_DictComp(expr_ty key, expr_ty value, asdl_seq * generators, int 525 lineno, int col_offset, PyArena *arena); 526 #define GeneratorExp(a0, a1, a2, a3, a4) _Py_GeneratorExp(a0, a1, a2, a3, a4) 527 expr_ty _Py_GeneratorExp(expr_ty elt, asdl_seq * generators, int lineno, int 528 col_offset, PyArena *arena); 529 #define Await(a0, a1, a2, a3) _Py_Await(a0, a1, a2, a3) 530 expr_ty _Py_Await(expr_ty value, int lineno, int col_offset, PyArena *arena); 531 #define Yield(a0, a1, a2, a3) _Py_Yield(a0, a1, a2, a3) 532 expr_ty _Py_Yield(expr_ty value, int lineno, int col_offset, PyArena *arena); 533 #define YieldFrom(a0, a1, a2, a3) _Py_YieldFrom(a0, a1, a2, a3) 534 expr_ty _Py_YieldFrom(expr_ty value, int lineno, int col_offset, PyArena 535 *arena); 536 #define Compare(a0, a1, a2, a3, a4, a5) _Py_Compare(a0, a1, a2, a3, a4, a5) 537 expr_ty _Py_Compare(expr_ty left, asdl_int_seq * ops, asdl_seq * comparators, 538 int lineno, int col_offset, PyArena *arena); 539 #define Call(a0, a1, a2, a3, a4, a5) _Py_Call(a0, a1, a2, a3, a4, a5) 540 expr_ty _Py_Call(expr_ty func, asdl_seq * args, asdl_seq * keywords, int 541 lineno, int col_offset, PyArena *arena); 542 #define Num(a0, a1, a2, a3) _Py_Num(a0, a1, a2, a3) 543 expr_ty _Py_Num(object n, int lineno, int col_offset, PyArena *arena); 544 #define Str(a0, a1, a2, a3) _Py_Str(a0, a1, a2, a3) 545 expr_ty _Py_Str(string s, int lineno, int col_offset, PyArena *arena); 546 #define Bytes(a0, a1, a2, a3) _Py_Bytes(a0, a1, a2, a3) 547 expr_ty _Py_Bytes(bytes s, int lineno, int col_offset, PyArena *arena); 548 #define NameConstant(a0, a1, a2, a3) _Py_NameConstant(a0, a1, a2, a3) 549 expr_ty _Py_NameConstant(singleton value, int lineno, int col_offset, PyArena 550 *arena); 551 #define Ellipsis(a0, a1, a2) _Py_Ellipsis(a0, a1, a2) 552 expr_ty _Py_Ellipsis(int lineno, int col_offset, PyArena *arena); 553 #define Attribute(a0, a1, a2, a3, a4, a5) _Py_Attribute(a0, a1, a2, a3, a4, a5) 554 expr_ty _Py_Attribute(expr_ty value, identifier attr, expr_context_ty ctx, int 555 lineno, int col_offset, PyArena *arena); 556 #define Subscript(a0, a1, a2, a3, a4, a5) _Py_Subscript(a0, a1, a2, a3, a4, a5) 557 expr_ty _Py_Subscript(expr_ty value, slice_ty slice, expr_context_ty ctx, int 558 lineno, int col_offset, PyArena *arena); 559 #define Starred(a0, a1, a2, a3, a4) _Py_Starred(a0, a1, a2, a3, a4) 560 expr_ty _Py_Starred(expr_ty value, expr_context_ty ctx, int lineno, int 561 col_offset, PyArena *arena); 562 #define Name(a0, a1, a2, a3, a4) _Py_Name(a0, a1, a2, a3, a4) 563 expr_ty _Py_Name(identifier id, expr_context_ty ctx, int lineno, int 564 col_offset, PyArena *arena); 565 #define List(a0, a1, a2, a3, a4) _Py_List(a0, a1, a2, a3, a4) 566 expr_ty _Py_List(asdl_seq * elts, expr_context_ty ctx, int lineno, int 567 col_offset, PyArena *arena); 568 #define Tuple(a0, a1, a2, a3, a4) _Py_Tuple(a0, a1, a2, a3, a4) 569 expr_ty _Py_Tuple(asdl_seq * elts, expr_context_ty ctx, int lineno, int 570 col_offset, PyArena *arena); 571 #define Slice(a0, a1, a2, a3) _Py_Slice(a0, a1, a2, a3) 572 slice_ty _Py_Slice(expr_ty lower, expr_ty upper, expr_ty step, PyArena *arena); 573 #define ExtSlice(a0, a1) _Py_ExtSlice(a0, a1) 574 slice_ty _Py_ExtSlice(asdl_seq * dims, PyArena *arena); 575 #define Index(a0, a1) _Py_Index(a0, a1) 576 slice_ty _Py_Index(expr_ty value, PyArena *arena); 577 #define comprehension(a0, a1, a2, a3) _Py_comprehension(a0, a1, a2, a3) 578 comprehension_ty _Py_comprehension(expr_ty target, expr_ty iter, asdl_seq * 579 ifs, PyArena *arena); 580 #define ExceptHandler(a0, a1, a2, a3, a4, a5) _Py_ExceptHandler(a0, a1, a2, a3, a4, a5) 581 excepthandler_ty _Py_ExceptHandler(expr_ty type, identifier name, asdl_seq * 582 body, int lineno, int col_offset, PyArena 583 *arena); 584 #define arguments(a0, a1, a2, a3, a4, a5, a6) _Py_arguments(a0, a1, a2, a3, a4, a5, a6) 585 arguments_ty _Py_arguments(asdl_seq * args, arg_ty vararg, asdl_seq * 586 kwonlyargs, asdl_seq * kw_defaults, arg_ty kwarg, 587 asdl_seq * defaults, PyArena *arena); 588 #define arg(a0, a1, a2, a3, a4) _Py_arg(a0, a1, a2, a3, a4) 589 arg_ty _Py_arg(identifier arg, expr_ty annotation, int lineno, int col_offset, 590 PyArena *arena); 591 #define keyword(a0, a1, a2) _Py_keyword(a0, a1, a2) 592 keyword_ty _Py_keyword(identifier arg, expr_ty value, PyArena *arena); 593 #define alias(a0, a1, a2) _Py_alias(a0, a1, a2) 594 alias_ty _Py_alias(identifier name, identifier asname, PyArena *arena); 595 #define withitem(a0, a1, a2) _Py_withitem(a0, a1, a2) 596 withitem_ty _Py_withitem(expr_ty context_expr, expr_ty optional_vars, PyArena 597 *arena); 598 599 PyObject* PyAST_mod2obj(mod_ty t); 600 mod_ty PyAST_obj2mod(PyObject* ast, PyArena* arena, int mode); 601 int PyAST_Check(PyObject* obj); 602