1 /* File automatically generated by Parser/asdl_c.py */
5 typedef struct _mod
*mod_ty
;
7 typedef struct _stmt
*stmt_ty
;
9 typedef struct _expr
*expr_ty
;
11 typedef enum _expr_context
{ Load
=1, Store
=2, Del
=3, AugLoad
=4, AugStore
=5,
12 Param
=6 } expr_context_ty
;
14 typedef struct _slice
*slice_ty
;
16 typedef enum _boolop
{ And
=1, Or
=2 } boolop_ty
;
18 typedef enum _operator
{ Add
=1, Sub
=2, Mult
=3, Div
=4, Mod
=5, Pow
=6, LShift
=7,
19 RShift
=8, BitOr
=9, BitXor
=10, BitAnd
=11, FloorDiv
=12 }
22 typedef enum _unaryop
{ Invert
=1, Not
=2, UAdd
=3, USub
=4 } unaryop_ty
;
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
;
27 typedef struct _comprehension
*comprehension_ty
;
29 typedef struct _excepthandler
*excepthandler_ty
;
31 typedef struct _arguments
*arguments_ty
;
33 typedef struct _keyword
*keyword_ty
;
35 typedef struct _alias
*alias_ty
;
38 enum _mod_kind
{Module_kind
=1, Interactive_kind
=2, Expression_kind
=3,
62 enum _stmt_kind
{FunctionDef_kind
=1, ClassDef_kind
=2, Return_kind
=3,
63 Delete_kind
=4, Assign_kind
=5, AugAssign_kind
=6, Print_kind
=7,
64 For_kind
=8, While_kind
=9, If_kind
=10, With_kind
=11,
65 Raise_kind
=12, TryExcept_kind
=13, TryFinally_kind
=14,
66 Assert_kind
=15, Import_kind
=16, ImportFrom_kind
=17,
67 Exec_kind
=18, Global_kind
=19, Expr_kind
=20, Pass_kind
=21,
68 Break_kind
=22, Continue_kind
=23};
130 expr_ty context_expr
;
131 expr_ty optional_vars
;
186 enum _expr_kind
{BoolOp_kind
=1, BinOp_kind
=2, UnaryOp_kind
=3, Lambda_kind
=4,
187 IfExp_kind
=5, Dict_kind
=6, ListComp_kind
=7,
188 GeneratorExp_kind
=8, Yield_kind
=9, Compare_kind
=10,
189 Call_kind
=11, Repr_kind
=12, Num_kind
=13, Str_kind
=14,
190 Attribute_kind
=15, Subscript_kind
=16, Name_kind
=17,
191 List_kind
=18, Tuple_kind
=19};
193 enum _expr_kind kind
;
229 asdl_seq
*generators
;
234 asdl_seq
*generators
;
244 asdl_seq
*comparators
;
299 enum _slice_kind
{Ellipsis_kind
=1, Slice_kind
=2, ExtSlice_kind
=3, Index_kind
=4};
301 enum _slice_kind kind
;
320 struct _comprehension
{
326 struct _excepthandler
{
352 mod_ty
Module(asdl_seq
* body
, PyArena
*arena
);
353 mod_ty
Interactive(asdl_seq
* body
, PyArena
*arena
);
354 mod_ty
Expression(expr_ty body
, PyArena
*arena
);
355 mod_ty
Suite(asdl_seq
* body
, PyArena
*arena
);
356 stmt_ty
FunctionDef(identifier name
, arguments_ty args
, asdl_seq
* body
,
357 asdl_seq
* decorators
, int lineno
, int col_offset
, PyArena
359 stmt_ty
ClassDef(identifier name
, asdl_seq
* bases
, asdl_seq
* body
, int
360 lineno
, int col_offset
, PyArena
*arena
);
361 stmt_ty
Return(expr_ty value
, int lineno
, int col_offset
, PyArena
*arena
);
362 stmt_ty
Delete(asdl_seq
* targets
, int lineno
, int col_offset
, PyArena
*arena
);
363 stmt_ty
Assign(asdl_seq
* targets
, expr_ty value
, int lineno
, int col_offset
,
365 stmt_ty
AugAssign(expr_ty target
, operator_ty op
, expr_ty value
, int lineno
,
366 int col_offset
, PyArena
*arena
);
367 stmt_ty
Print(expr_ty dest
, asdl_seq
* values
, bool nl
, int lineno
, int
368 col_offset
, PyArena
*arena
);
369 stmt_ty
For(expr_ty target
, expr_ty iter
, asdl_seq
* body
, asdl_seq
* orelse
,
370 int lineno
, int col_offset
, PyArena
*arena
);
371 stmt_ty
While(expr_ty test
, asdl_seq
* body
, asdl_seq
* orelse
, int lineno
, int
372 col_offset
, PyArena
*arena
);
373 stmt_ty
If(expr_ty test
, asdl_seq
* body
, asdl_seq
* orelse
, int lineno
, int
374 col_offset
, PyArena
*arena
);
375 stmt_ty
With(expr_ty context_expr
, expr_ty optional_vars
, asdl_seq
* body
, int
376 lineno
, int col_offset
, PyArena
*arena
);
377 stmt_ty
Raise(expr_ty type
, expr_ty inst
, expr_ty tback
, int lineno
, int
378 col_offset
, PyArena
*arena
);
379 stmt_ty
TryExcept(asdl_seq
* body
, asdl_seq
* handlers
, asdl_seq
* orelse
, int
380 lineno
, int col_offset
, PyArena
*arena
);
381 stmt_ty
TryFinally(asdl_seq
* body
, asdl_seq
* finalbody
, int lineno
, int
382 col_offset
, PyArena
*arena
);
383 stmt_ty
Assert(expr_ty test
, expr_ty msg
, int lineno
, int col_offset
, PyArena
385 stmt_ty
Import(asdl_seq
* names
, int lineno
, int col_offset
, PyArena
*arena
);
386 stmt_ty
ImportFrom(identifier module
, asdl_seq
* names
, int level
, int lineno
,
387 int col_offset
, PyArena
*arena
);
388 stmt_ty
Exec(expr_ty body
, expr_ty globals
, expr_ty locals
, int lineno
, int
389 col_offset
, PyArena
*arena
);
390 stmt_ty
Global(asdl_seq
* names
, int lineno
, int col_offset
, PyArena
*arena
);
391 stmt_ty
Expr(expr_ty value
, int lineno
, int col_offset
, PyArena
*arena
);
392 stmt_ty
Pass(int lineno
, int col_offset
, PyArena
*arena
);
393 stmt_ty
Break(int lineno
, int col_offset
, PyArena
*arena
);
394 stmt_ty
Continue(int lineno
, int col_offset
, PyArena
*arena
);
395 expr_ty
BoolOp(boolop_ty op
, asdl_seq
* values
, int lineno
, int col_offset
,
397 expr_ty
BinOp(expr_ty left
, operator_ty op
, expr_ty right
, int lineno
, int
398 col_offset
, PyArena
*arena
);
399 expr_ty
UnaryOp(unaryop_ty op
, expr_ty operand
, int lineno
, int col_offset
,
401 expr_ty
Lambda(arguments_ty args
, expr_ty body
, int lineno
, int col_offset
,
403 expr_ty
IfExp(expr_ty test
, expr_ty body
, expr_ty orelse
, int lineno
, int
404 col_offset
, PyArena
*arena
);
405 expr_ty
Dict(asdl_seq
* keys
, asdl_seq
* values
, int lineno
, int col_offset
,
407 expr_ty
ListComp(expr_ty elt
, asdl_seq
* generators
, int lineno
, int
408 col_offset
, PyArena
*arena
);
409 expr_ty
GeneratorExp(expr_ty elt
, asdl_seq
* generators
, int lineno
, int
410 col_offset
, PyArena
*arena
);
411 expr_ty
Yield(expr_ty value
, int lineno
, int col_offset
, PyArena
*arena
);
412 expr_ty
Compare(expr_ty left
, asdl_int_seq
* ops
, asdl_seq
* comparators
, int
413 lineno
, int col_offset
, PyArena
*arena
);
414 expr_ty
Call(expr_ty func
, asdl_seq
* args
, asdl_seq
* keywords
, expr_ty
415 starargs
, expr_ty kwargs
, int lineno
, int col_offset
, PyArena
417 expr_ty
Repr(expr_ty value
, int lineno
, int col_offset
, PyArena
*arena
);
418 expr_ty
Num(object n
, int lineno
, int col_offset
, PyArena
*arena
);
419 expr_ty
Str(string s
, int lineno
, int col_offset
, PyArena
*arena
);
420 expr_ty
Attribute(expr_ty value
, identifier attr
, expr_context_ty ctx
, int
421 lineno
, int col_offset
, PyArena
*arena
);
422 expr_ty
Subscript(expr_ty value
, slice_ty slice
, expr_context_ty ctx
, int
423 lineno
, int col_offset
, PyArena
*arena
);
424 expr_ty
Name(identifier id
, expr_context_ty ctx
, int lineno
, int col_offset
,
426 expr_ty
List(asdl_seq
* elts
, expr_context_ty ctx
, int lineno
, int col_offset
,
428 expr_ty
Tuple(asdl_seq
* elts
, expr_context_ty ctx
, int lineno
, int col_offset
,
430 slice_ty
Ellipsis(PyArena
*arena
);
431 slice_ty
Slice(expr_ty lower
, expr_ty upper
, expr_ty step
, PyArena
*arena
);
432 slice_ty
ExtSlice(asdl_seq
* dims
, PyArena
*arena
);
433 slice_ty
Index(expr_ty value
, PyArena
*arena
);
434 comprehension_ty
comprehension(expr_ty target
, expr_ty iter
, asdl_seq
* ifs
,
436 excepthandler_ty
excepthandler(expr_ty type
, expr_ty name
, asdl_seq
* body
, int
437 lineno
, int col_offset
, PyArena
*arena
);
438 arguments_ty
arguments(asdl_seq
* args
, identifier vararg
, identifier kwarg
,
439 asdl_seq
* defaults
, PyArena
*arena
);
440 keyword_ty
keyword(identifier arg
, expr_ty value
, PyArena
*arena
);
441 alias_ty
alias(identifier name
, identifier asname
, PyArena
*arena
);
443 PyObject
* PyAST_mod2obj(mod_ty t
);