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, Div=4, Mod=5, Pow=6, LShift=7,
|
---|
19 | RShift=8, BitOr=9, BitXor=10, BitAnd=11, FloorDiv=12 }
|
---|
20 | 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 _keyword *keyword_ty;
|
---|
34 |
|
---|
35 | typedef struct _alias *alias_ty;
|
---|
36 |
|
---|
37 |
|
---|
38 | enum _mod_kind {Module_kind=1, Interactive_kind=2, Expression_kind=3,
|
---|
39 | Suite_kind=4};
|
---|
40 | struct _mod {
|
---|
41 | enum _mod_kind kind;
|
---|
42 | union {
|
---|
43 | struct {
|
---|
44 | asdl_seq *body;
|
---|
45 | } Module;
|
---|
46 |
|
---|
47 | struct {
|
---|
48 | asdl_seq *body;
|
---|
49 | } Interactive;
|
---|
50 |
|
---|
51 | struct {
|
---|
52 | expr_ty body;
|
---|
53 | } Expression;
|
---|
54 |
|
---|
55 | struct {
|
---|
56 | asdl_seq *body;
|
---|
57 | } Suite;
|
---|
58 |
|
---|
59 | } v;
|
---|
60 | };
|
---|
61 |
|
---|
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};
|
---|
69 | struct _stmt {
|
---|
70 | enum _stmt_kind kind;
|
---|
71 | union {
|
---|
72 | struct {
|
---|
73 | identifier name;
|
---|
74 | arguments_ty args;
|
---|
75 | asdl_seq *body;
|
---|
76 | asdl_seq *decorators;
|
---|
77 | } FunctionDef;
|
---|
78 |
|
---|
79 | struct {
|
---|
80 | identifier name;
|
---|
81 | asdl_seq *bases;
|
---|
82 | asdl_seq *body;
|
---|
83 | } ClassDef;
|
---|
84 |
|
---|
85 | struct {
|
---|
86 | expr_ty value;
|
---|
87 | } Return;
|
---|
88 |
|
---|
89 | struct {
|
---|
90 | asdl_seq *targets;
|
---|
91 | } Delete;
|
---|
92 |
|
---|
93 | struct {
|
---|
94 | asdl_seq *targets;
|
---|
95 | expr_ty value;
|
---|
96 | } Assign;
|
---|
97 |
|
---|
98 | struct {
|
---|
99 | expr_ty target;
|
---|
100 | operator_ty op;
|
---|
101 | expr_ty value;
|
---|
102 | } AugAssign;
|
---|
103 |
|
---|
104 | struct {
|
---|
105 | expr_ty dest;
|
---|
106 | asdl_seq *values;
|
---|
107 | bool nl;
|
---|
108 | } Print;
|
---|
109 |
|
---|
110 | struct {
|
---|
111 | expr_ty target;
|
---|
112 | expr_ty iter;
|
---|
113 | asdl_seq *body;
|
---|
114 | asdl_seq *orelse;
|
---|
115 | } For;
|
---|
116 |
|
---|
117 | struct {
|
---|
118 | expr_ty test;
|
---|
119 | asdl_seq *body;
|
---|
120 | asdl_seq *orelse;
|
---|
121 | } While;
|
---|
122 |
|
---|
123 | struct {
|
---|
124 | expr_ty test;
|
---|
125 | asdl_seq *body;
|
---|
126 | asdl_seq *orelse;
|
---|
127 | } If;
|
---|
128 |
|
---|
129 | struct {
|
---|
130 | expr_ty context_expr;
|
---|
131 | expr_ty optional_vars;
|
---|
132 | asdl_seq *body;
|
---|
133 | } With;
|
---|
134 |
|
---|
135 | struct {
|
---|
136 | expr_ty type;
|
---|
137 | expr_ty inst;
|
---|
138 | expr_ty tback;
|
---|
139 | } Raise;
|
---|
140 |
|
---|
141 | struct {
|
---|
142 | asdl_seq *body;
|
---|
143 | asdl_seq *handlers;
|
---|
144 | asdl_seq *orelse;
|
---|
145 | } TryExcept;
|
---|
146 |
|
---|
147 | struct {
|
---|
148 | asdl_seq *body;
|
---|
149 | asdl_seq *finalbody;
|
---|
150 | } TryFinally;
|
---|
151 |
|
---|
152 | struct {
|
---|
153 | expr_ty test;
|
---|
154 | expr_ty msg;
|
---|
155 | } Assert;
|
---|
156 |
|
---|
157 | struct {
|
---|
158 | asdl_seq *names;
|
---|
159 | } Import;
|
---|
160 |
|
---|
161 | struct {
|
---|
162 | identifier module;
|
---|
163 | asdl_seq *names;
|
---|
164 | int level;
|
---|
165 | } ImportFrom;
|
---|
166 |
|
---|
167 | struct {
|
---|
168 | expr_ty body;
|
---|
169 | expr_ty globals;
|
---|
170 | expr_ty locals;
|
---|
171 | } Exec;
|
---|
172 |
|
---|
173 | struct {
|
---|
174 | asdl_seq *names;
|
---|
175 | } Global;
|
---|
176 |
|
---|
177 | struct {
|
---|
178 | expr_ty value;
|
---|
179 | } Expr;
|
---|
180 |
|
---|
181 | } v;
|
---|
182 | int lineno;
|
---|
183 | int col_offset;
|
---|
184 | };
|
---|
185 |
|
---|
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};
|
---|
192 | struct _expr {
|
---|
193 | enum _expr_kind kind;
|
---|
194 | union {
|
---|
195 | struct {
|
---|
196 | boolop_ty op;
|
---|
197 | asdl_seq *values;
|
---|
198 | } BoolOp;
|
---|
199 |
|
---|
200 | struct {
|
---|
201 | expr_ty left;
|
---|
202 | operator_ty op;
|
---|
203 | expr_ty right;
|
---|
204 | } BinOp;
|
---|
205 |
|
---|
206 | struct {
|
---|
207 | unaryop_ty op;
|
---|
208 | expr_ty operand;
|
---|
209 | } UnaryOp;
|
---|
210 |
|
---|
211 | struct {
|
---|
212 | arguments_ty args;
|
---|
213 | expr_ty body;
|
---|
214 | } Lambda;
|
---|
215 |
|
---|
216 | struct {
|
---|
217 | expr_ty test;
|
---|
218 | expr_ty body;
|
---|
219 | expr_ty orelse;
|
---|
220 | } IfExp;
|
---|
221 |
|
---|
222 | struct {
|
---|
223 | asdl_seq *keys;
|
---|
224 | asdl_seq *values;
|
---|
225 | } Dict;
|
---|
226 |
|
---|
227 | struct {
|
---|
228 | expr_ty elt;
|
---|
229 | asdl_seq *generators;
|
---|
230 | } ListComp;
|
---|
231 |
|
---|
232 | struct {
|
---|
233 | expr_ty elt;
|
---|
234 | asdl_seq *generators;
|
---|
235 | } GeneratorExp;
|
---|
236 |
|
---|
237 | struct {
|
---|
238 | expr_ty value;
|
---|
239 | } Yield;
|
---|
240 |
|
---|
241 | struct {
|
---|
242 | expr_ty left;
|
---|
243 | asdl_int_seq *ops;
|
---|
244 | asdl_seq *comparators;
|
---|
245 | } Compare;
|
---|
246 |
|
---|
247 | struct {
|
---|
248 | expr_ty func;
|
---|
249 | asdl_seq *args;
|
---|
250 | asdl_seq *keywords;
|
---|
251 | expr_ty starargs;
|
---|
252 | expr_ty kwargs;
|
---|
253 | } Call;
|
---|
254 |
|
---|
255 | struct {
|
---|
256 | expr_ty value;
|
---|
257 | } Repr;
|
---|
258 |
|
---|
259 | struct {
|
---|
260 | object n;
|
---|
261 | } Num;
|
---|
262 |
|
---|
263 | struct {
|
---|
264 | string s;
|
---|
265 | } Str;
|
---|
266 |
|
---|
267 | struct {
|
---|
268 | expr_ty value;
|
---|
269 | identifier attr;
|
---|
270 | expr_context_ty ctx;
|
---|
271 | } Attribute;
|
---|
272 |
|
---|
273 | struct {
|
---|
274 | expr_ty value;
|
---|
275 | slice_ty slice;
|
---|
276 | expr_context_ty ctx;
|
---|
277 | } Subscript;
|
---|
278 |
|
---|
279 | struct {
|
---|
280 | identifier id;
|
---|
281 | expr_context_ty ctx;
|
---|
282 | } Name;
|
---|
283 |
|
---|
284 | struct {
|
---|
285 | asdl_seq *elts;
|
---|
286 | expr_context_ty ctx;
|
---|
287 | } List;
|
---|
288 |
|
---|
289 | struct {
|
---|
290 | asdl_seq *elts;
|
---|
291 | expr_context_ty ctx;
|
---|
292 | } Tuple;
|
---|
293 |
|
---|
294 | } v;
|
---|
295 | int lineno;
|
---|
296 | int col_offset;
|
---|
297 | };
|
---|
298 |
|
---|
299 | enum _slice_kind {Ellipsis_kind=1, Slice_kind=2, ExtSlice_kind=3, Index_kind=4};
|
---|
300 | struct _slice {
|
---|
301 | enum _slice_kind kind;
|
---|
302 | union {
|
---|
303 | struct {
|
---|
304 | expr_ty lower;
|
---|
305 | expr_ty upper;
|
---|
306 | expr_ty step;
|
---|
307 | } Slice;
|
---|
308 |
|
---|
309 | struct {
|
---|
310 | asdl_seq *dims;
|
---|
311 | } ExtSlice;
|
---|
312 |
|
---|
313 | struct {
|
---|
314 | expr_ty value;
|
---|
315 | } Index;
|
---|
316 |
|
---|
317 | } v;
|
---|
318 | };
|
---|
319 |
|
---|
320 | struct _comprehension {
|
---|
321 | expr_ty target;
|
---|
322 | expr_ty iter;
|
---|
323 | asdl_seq *ifs;
|
---|
324 | };
|
---|
325 |
|
---|
326 | struct _excepthandler {
|
---|
327 | expr_ty type;
|
---|
328 | expr_ty name;
|
---|
329 | asdl_seq *body;
|
---|
330 | int lineno;
|
---|
331 | int col_offset;
|
---|
332 | };
|
---|
333 |
|
---|
334 | struct _arguments {
|
---|
335 | asdl_seq *args;
|
---|
336 | identifier vararg;
|
---|
337 | identifier kwarg;
|
---|
338 | asdl_seq *defaults;
|
---|
339 | };
|
---|
340 |
|
---|
341 | struct _keyword {
|
---|
342 | identifier arg;
|
---|
343 | expr_ty value;
|
---|
344 | };
|
---|
345 |
|
---|
346 | struct _alias {
|
---|
347 | identifier name;
|
---|
348 | identifier asname;
|
---|
349 | };
|
---|
350 |
|
---|
351 |
|
---|
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
|
---|
358 | *arena);
|
---|
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,
|
---|
364 | PyArena *arena);
|
---|
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
|
---|
384 | *arena);
|
---|
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,
|
---|
396 | PyArena *arena);
|
---|
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,
|
---|
400 | PyArena *arena);
|
---|
401 | expr_ty Lambda(arguments_ty args, expr_ty body, int lineno, int col_offset,
|
---|
402 | PyArena *arena);
|
---|
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,
|
---|
406 | PyArena *arena);
|
---|
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
|
---|
416 | *arena);
|
---|
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,
|
---|
425 | PyArena *arena);
|
---|
426 | expr_ty List(asdl_seq * elts, expr_context_ty ctx, int lineno, int col_offset,
|
---|
427 | PyArena *arena);
|
---|
428 | expr_ty Tuple(asdl_seq * elts, expr_context_ty ctx, int lineno, int col_offset,
|
---|
429 | PyArena *arena);
|
---|
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,
|
---|
435 | PyArena *arena);
|
---|
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);
|
---|
442 |
|
---|
443 | PyObject* PyAST_mod2obj(mod_ty t);
|
---|