ยปCore Development>Code coverage>Lib/compiler/ast.py

Python code coverage for Lib/compiler/ast.py

#countcontent
1n/a"""Python abstract syntax node definitions
2n/a
3n/aThis file is automatically generated by Tools/compiler/astgen.py
42"""
52from compiler.consts import CO_VARARGS, CO_VARKEYWORDS
6n/a
72def flatten(seq):
840940 l = []
9112138 for elt in seq:
1071198 t = type(elt)
1171198 if t is tuple or t is list:
129066 for elt2 in flatten(elt):
136268 l.append(elt2)
14n/a else:
1568400 l.append(elt)
1640940 return l
17n/a
182def flatten_nodes(seq):
19106536 return [n for n in flatten(seq) if isinstance(n, Node)]
20n/a
212nodes = {}
22n/a
234class Node:
242 """Abstract base class for ast nodes."""
252 def getChildren(self):
260 pass # implemented by subclasses
272 def __iter__(self):
280 for n in self.getChildren():
290 yield n
302 def asList(self): # for backwards compatibility
310 return self.getChildren()
322 def getChildNodes(self):
330 pass # implemented by subclasses
34n/a
354class EmptyNode(Node):
362 pass
37n/a
384class Expression(Node):
39n/a # Expression is an artificial node class to support "eval"
402 nodes["expression"] = "Expression"
412 def __init__(self, node):
429 self.node = node
43n/a
442 def getChildren(self):
450 return self.node,
46n/a
472 def getChildNodes(self):
4818 return self.node,
49n/a
502 def __repr__(self):
510 return "Expression(%s)" % (repr(self.node))
52n/a
534class Add(Node):
542 def __init__(self, leftright, lineno=None):
5597 self.left = leftright[0]
5697 self.right = leftright[1]
5797 self.lineno = lineno
58n/a
592 def getChildren(self):
600 return self.left, self.right
61n/a
622 def getChildNodes(self):
63447 return self.left, self.right
64n/a
652 def __repr__(self):
660 return "Add((%s, %s))" % (repr(self.left), repr(self.right))
67n/a
684class And(Node):
692 def __init__(self, nodes, lineno=None):
7010 self.nodes = nodes
7110 self.lineno = lineno
72n/a
732 def getChildren(self):
740 return tuple(flatten(self.nodes))
75n/a
762 def getChildNodes(self):
7746 nodelist = []
7846 nodelist.extend(flatten_nodes(self.nodes))
7946 return tuple(nodelist)
80n/a
812 def __repr__(self):
820 return "And(%s)" % (repr(self.nodes),)
83n/a
844class AssAttr(Node):
852 def __init__(self, expr, attrname, flags, lineno=None):
86339 self.expr = expr
87339 self.attrname = attrname
88339 self.flags = flags
89339 self.lineno = lineno
90n/a
912 def getChildren(self):
920 return self.expr, self.attrname, self.flags
93n/a
942 def getChildNodes(self):
951044 return self.expr,
96n/a
972 def __repr__(self):
980 return "AssAttr(%s, %s, %s)" % (repr(self.expr), repr(self.attrname), repr(self.flags))
99n/a
1004class AssList(Node):
1012 def __init__(self, nodes, lineno=None):
1021 self.nodes = nodes
1031 self.lineno = lineno
104n/a
1052 def getChildren(self):
1060 return tuple(flatten(self.nodes))
107n/a
1082 def getChildNodes(self):
1091 nodelist = []
1101 nodelist.extend(flatten_nodes(self.nodes))
1111 return tuple(nodelist)
112n/a
1132 def __repr__(self):
1140 return "AssList(%s)" % (repr(self.nodes),)
115n/a
1164class AssName(Node):
1172 def __init__(self, name, flags, lineno=None):
118911 self.name = name
119911 self.flags = flags
120911 self.lineno = lineno
121n/a
1222 def getChildren(self):
1230 return self.name, self.flags
124n/a
1252 def getChildNodes(self):
1261887 return ()
127n/a
1282 def __repr__(self):
1290 return "AssName(%s, %s)" % (repr(self.name), repr(self.flags))
130n/a
1314class AssTuple(Node):
1322 def __init__(self, nodes, lineno=None):
13343 self.nodes = nodes
13443 self.lineno = lineno
135n/a
1362 def getChildren(self):
1370 return tuple(flatten(self.nodes))
138n/a
1392 def getChildNodes(self):
140196 nodelist = []
141196 nodelist.extend(flatten_nodes(self.nodes))
142196 return tuple(nodelist)
143n/a
1442 def __repr__(self):
1450 return "AssTuple(%s)" % (repr(self.nodes),)
146n/a
1474class Assert(Node):
1482 def __init__(self, test, fail, lineno=None):
1493 self.test = test
1503 self.fail = fail
1513 self.lineno = lineno
152n/a
1532 def getChildren(self):
1540 children = []
1550 children.append(self.test)
1560 children.append(self.fail)
1570 return tuple(children)
158n/a
1592 def getChildNodes(self):
16015 nodelist = []
16115 nodelist.append(self.test)
16215 if self.fail is not None:
1635 nodelist.append(self.fail)
16415 return tuple(nodelist)
165n/a
1662 def __repr__(self):
1670 return "Assert(%s, %s)" % (repr(self.test), repr(self.fail))
168n/a
1694class Assign(Node):
1702 def __init__(self, nodes, expr, lineno=None):
1711038 self.nodes = nodes
1721038 self.expr = expr
1731038 self.lineno = lineno
174n/a
1752 def getChildren(self):
1760 children = []
1770 children.extend(flatten(self.nodes))
1780 children.append(self.expr)
1790 return tuple(children)
180n/a
1812 def getChildNodes(self):
1822974 nodelist = []
1832974 nodelist.extend(flatten_nodes(self.nodes))
1842974 nodelist.append(self.expr)
1852974 return tuple(nodelist)
186n/a
1872 def __repr__(self):
1880 return "Assign(%s, %s)" % (repr(self.nodes), repr(self.expr))
189n/a
1904class AugAssign(Node):
1912 def __init__(self, node, op, expr, lineno=None):
19219 self.node = node
19319 self.op = op
19419 self.expr = expr
19519 self.lineno = lineno
196n/a
1972 def getChildren(self):
1980 return self.node, self.op, self.expr
199n/a
2002 def getChildNodes(self):
20170 return self.node, self.expr
202n/a
2032 def __repr__(self):
2040 return "AugAssign(%s, %s, %s)" % (repr(self.node), repr(self.op), repr(self.expr))
205n/a
2064class Backquote(Node):
2072 def __init__(self, expr, lineno=None):
2080 self.expr = expr
2090 self.lineno = lineno
210n/a
2112 def getChildren(self):
2120 return self.expr,
213n/a
2142 def getChildNodes(self):
2150 return self.expr,
216n/a
2172 def __repr__(self):
2180 return "Backquote(%s)" % (repr(self.expr),)
219n/a
2204class Bitand(Node):
2212 def __init__(self, nodes, lineno=None):
2221 self.nodes = nodes
2231 self.lineno = lineno
224n/a
2252 def getChildren(self):
2260 return tuple(flatten(self.nodes))
227n/a
2282 def getChildNodes(self):
2295 nodelist = []
2305 nodelist.extend(flatten_nodes(self.nodes))
2315 return tuple(nodelist)
232n/a
2332 def __repr__(self):
2340 return "Bitand(%s)" % (repr(self.nodes),)
235n/a
2364class Bitor(Node):
2372 def __init__(self, nodes, lineno=None):
2381 self.nodes = nodes
2391 self.lineno = lineno
240n/a
2412 def getChildren(self):
2420 return tuple(flatten(self.nodes))
243n/a
2442 def getChildNodes(self):
2455 nodelist = []
2465 nodelist.extend(flatten_nodes(self.nodes))
2475 return tuple(nodelist)
248n/a
2492 def __repr__(self):
2500 return "Bitor(%s)" % (repr(self.nodes),)
251n/a
2524class Bitxor(Node):
2532 def __init__(self, nodes, lineno=None):
2541 self.nodes = nodes
2551 self.lineno = lineno
256n/a
2572 def getChildren(self):
2580 return tuple(flatten(self.nodes))
259n/a
2602 def getChildNodes(self):
2615 nodelist = []
2625 nodelist.extend(flatten_nodes(self.nodes))
2635 return tuple(nodelist)
264n/a
2652 def __repr__(self):
2660 return "Bitxor(%s)" % (repr(self.nodes),)
267n/a
2684class Break(Node):
2692 def __init__(self, lineno=None):
2700 self.lineno = lineno
271n/a
2722 def getChildren(self):
2730 return ()
274n/a
2752 def getChildNodes(self):
2760 return ()
277n/a
2782 def __repr__(self):
2790 return "Break()"
280n/a
2814class CallFunc(Node):
2822 def __init__(self, node, args, star_args = None, dstar_args = None, lineno=None):
2833067 self.node = node
2843067 self.args = args
2853067 self.star_args = star_args
2863067 self.dstar_args = dstar_args
2873067 self.lineno = lineno
288n/a
2892 def getChildren(self):
2900 children = []
2910 children.append(self.node)
2920 children.extend(flatten(self.args))
2930 children.append(self.star_args)
2940 children.append(self.dstar_args)
2950 return tuple(children)
296n/a
2972 def getChildNodes(self):
29814398 nodelist = []
29914398 nodelist.append(self.node)
30014398 nodelist.extend(flatten_nodes(self.args))
30114398 if self.star_args is not None:
30254 nodelist.append(self.star_args)
30314398 if self.dstar_args is not None:
30445 nodelist.append(self.dstar_args)
30514398 return tuple(nodelist)
306n/a
3072 def __repr__(self):
3080 return "CallFunc(%s, %s, %s, %s)" % (repr(self.node), repr(self.args), repr(self.star_args), repr(self.dstar_args))
309n/a
3104class Class(Node):
3112 def __init__(self, name, bases, doc, code, decorators = None, lineno=None):
312395 self.name = name
313395 self.bases = bases
314395 self.doc = doc
315395 self.code = code
316395 self.decorators = decorators
317395 self.lineno = lineno
318n/a
3192 def getChildren(self):
3200 children = []
3210 children.append(self.name)
3220 children.extend(flatten(self.bases))
3230 children.append(self.doc)
3240 children.append(self.code)
3250 children.append(self.decorators)
3260 return tuple(children)
327n/a
3282 def getChildNodes(self):
3291177 nodelist = []
3301177 nodelist.extend(flatten_nodes(self.bases))
3311177 nodelist.append(self.code)
3321177 if self.decorators is not None:
3330 nodelist.append(self.decorators)
3341177 return tuple(nodelist)
335n/a
3362 def __repr__(self):
3370 return "Class(%s, %s, %s, %s, %s)" % (repr(self.name), repr(self.bases), repr(self.doc), repr(self.code), repr(self.decorators))
338n/a
3394class Compare(Node):
3402 def __init__(self, expr, ops, lineno=None):
341239 self.expr = expr
342239 self.ops = ops
343239 self.lineno = lineno
344n/a
3452 def getChildren(self):
3460 children = []
3470 children.append(self.expr)
3480 children.extend(flatten(self.ops))
3490 return tuple(children)
350n/a
3512 def getChildNodes(self):
3521155 nodelist = []
3531155 nodelist.append(self.expr)
3541155 nodelist.extend(flatten_nodes(self.ops))
3551155 return tuple(nodelist)
356n/a
3572 def __repr__(self):
3580 return "Compare(%s, %s)" % (repr(self.expr), repr(self.ops))
359n/a
3604class Const(Node):
3612 def __init__(self, value, lineno=None):
3623503 self.value = value
3633503 self.lineno = lineno
364n/a
3652 def getChildren(self):
3660 return self.value,
367n/a
3682 def getChildNodes(self):
36915252 return ()
370n/a
3712 def __repr__(self):
3720 return "Const(%s)" % (repr(self.value),)
373n/a
3744class Continue(Node):
3752 def __init__(self, lineno=None):
3765 self.lineno = lineno
377n/a
3782 def getChildren(self):
3790 return ()
380n/a
3812 def getChildNodes(self):
38217 return ()
383n/a
3842 def __repr__(self):
3850 return "Continue()"
386n/a
3874class Decorators(Node):
3882 def __init__(self, nodes, lineno=None):
38919 self.nodes = nodes
39019 self.lineno = lineno
391n/a
3922 def getChildren(self):
3930 return tuple(flatten(self.nodes))
394n/a
3952 def getChildNodes(self):
39676 nodelist = []
39776 nodelist.extend(flatten_nodes(self.nodes))
39876 return tuple(nodelist)
399n/a
4002 def __repr__(self):
4010 return "Decorators(%s)" % (repr(self.nodes),)
402n/a
4034class Dict(Node):
4042 def __init__(self, items, lineno=None):
405119 self.items = items
406119 self.lineno = lineno
407n/a
4082 def getChildren(self):
4090 return tuple(flatten(self.items))
410n/a
4112 def getChildNodes(self):
412375 nodelist = []
413375 nodelist.extend(flatten_nodes(self.items))
414375 return tuple(nodelist)
415n/a
4162 def __repr__(self):
4170 return "Dict(%s)" % (repr(self.items),)
418n/a
4194class Discard(Node):
4202 def __init__(self, expr, lineno=None):
4211594 self.expr = expr
4221594 self.lineno = lineno
423n/a
4242 def getChildren(self):
4250 return self.expr,
426n/a
4272 def getChildNodes(self):
4287625 return self.expr,
429n/a
4302 def __repr__(self):
4310 return "Discard(%s)" % (repr(self.expr),)
432n/a
4334class Div(Node):
4342 def __init__(self, leftright, lineno=None):
4354 self.left = leftright[0]
4364 self.right = leftright[1]
4374 self.lineno = lineno
438n/a
4392 def getChildren(self):
4400 return self.left, self.right
441n/a
4422 def getChildNodes(self):
44319 return self.left, self.right
444n/a
4452 def __repr__(self):
4460 return "Div((%s, %s))" % (repr(self.left), repr(self.right))
447n/a
4484class Ellipsis(Node):
4492 def __init__(self, lineno=None):
4500 self.lineno = lineno
451n/a
4522 def getChildren(self):
4530 return ()
454n/a
4552 def getChildNodes(self):
4560 return ()
457n/a
4582 def __repr__(self):
4590 return "Ellipsis()"
460n/a
4614class Exec(Node):
4622 def __init__(self, expr, locals, globals, lineno=None):
46318 self.expr = expr
46418 self.locals = locals
46518 self.globals = globals
46618 self.lineno = lineno
467n/a
4682 def getChildren(self):
4690 children = []
4700 children.append(self.expr)
4710 children.append(self.locals)
4720 children.append(self.globals)
4730 return tuple(children)
474n/a
4752 def getChildNodes(self):
47654 nodelist = []
47754 nodelist.append(self.expr)
47854 if self.locals is not None:
47939 nodelist.append(self.locals)
48054 if self.globals is not None:
4811 nodelist.append(self.globals)
48254 return tuple(nodelist)
483n/a
4842 def __repr__(self):
4850 return "Exec(%s, %s, %s)" % (repr(self.expr), repr(self.locals), repr(self.globals))
486n/a
4874class FloorDiv(Node):
4882 def __init__(self, leftright, lineno=None):
48913 self.left = leftright[0]
49013 self.right = leftright[1]
49113 self.lineno = lineno
492n/a
4932 def getChildren(self):
4940 return self.left, self.right
495n/a
4962 def getChildNodes(self):
49764 return self.left, self.right
498n/a
4992 def __repr__(self):
5000 return "FloorDiv((%s, %s))" % (repr(self.left), repr(self.right))
501n/a
5024class For(Node):
5032 def __init__(self, assign, list, body, else_, lineno=None):
50493 self.assign = assign
50593 self.list = list
50693 self.body = body
50793 self.else_ = else_
50893 self.lineno = lineno
509n/a
5102 def getChildren(self):
5110 children = []
5120 children.append(self.assign)
5130 children.append(self.list)
5140 children.append(self.body)
5150 children.append(self.else_)
5160 return tuple(children)
517n/a
5182 def getChildNodes(self):
519363 nodelist = []
520363 nodelist.append(self.assign)
521363 nodelist.append(self.list)
522363 nodelist.append(self.body)
523363 if self.else_ is not None:
5240 nodelist.append(self.else_)
525363 return tuple(nodelist)
526n/a
5272 def __repr__(self):
5280 return "For(%s, %s, %s, %s)" % (repr(self.assign), repr(self.list), repr(self.body), repr(self.else_))
529n/a
5304class From(Node):
5312 def __init__(self, modname, names, level, lineno=None):
53219 self.modname = modname
53319 self.names = names
53419 self.level = level
53519 self.lineno = lineno
536n/a
5372 def getChildren(self):
5380 return self.modname, self.names, self.level
539n/a
5402 def getChildNodes(self):
54134 return ()
542n/a
5432 def __repr__(self):
5440 return "From(%s, %s, %s)" % (repr(self.modname), repr(self.names), repr(self.level))
545n/a
5464class Function(Node):
5472 def __init__(self, decorators, name, argnames, defaults, flags, doc, code, lineno=None):
548648 self.decorators = decorators
549648 self.name = name
550648 self.argnames = argnames
551648 self.defaults = defaults
552648 self.flags = flags
553648 self.doc = doc
554648 self.code = code
555648 self.lineno = lineno
556648 self.varargs = self.kwargs = None
557648 if flags & CO_VARARGS:
55826 self.varargs = 1
559648 if flags & CO_VARKEYWORDS:
5605 self.kwargs = 1
561n/a
562n/a
5632 def getChildren(self):
5640 children = []
5650 children.append(self.decorators)
5660 children.append(self.name)
5670 children.append(self.argnames)
5680 children.extend(flatten(self.defaults))
5690 children.append(self.flags)
5700 children.append(self.doc)
5710 children.append(self.code)
5720 return tuple(children)
573n/a
5742 def getChildNodes(self):
5751882 nodelist = []
5761882 if self.decorators is not None:
57757 nodelist.append(self.decorators)
5781882 nodelist.extend(flatten_nodes(self.defaults))
5791882 nodelist.append(self.code)
5801882 return tuple(nodelist)
581n/a
5822 def __repr__(self):
5830 return "Function(%s, %s, %s, %s, %s, %s, %s)" % (repr(self.decorators), repr(self.name), repr(self.argnames), repr(self.defaults), repr(self.flags), repr(self.doc), repr(self.code))
584n/a
5854class GenExpr(Node):
5862 def __init__(self, code, lineno=None):
5872 self.code = code
5882 self.lineno = lineno
5892 self.argnames = ['.0']
5902 self.varargs = self.kwargs = None
591n/a
592n/a
5932 def getChildren(self):
5940 return self.code,
595n/a
5962 def getChildNodes(self):
5976 return self.code,
598n/a
5992 def __repr__(self):
6000 return "GenExpr(%s)" % (repr(self.code),)
601n/a
6024class GenExprFor(Node):
6032 def __init__(self, assign, iter, ifs, lineno=None):
6043 self.assign = assign
6053 self.iter = iter
6063 self.ifs = ifs
6073 self.lineno = lineno
6083 self.is_outmost = False
609n/a
6102 def getChildren(self):
6110 children = []
6120 children.append(self.assign)
6130 children.append(self.iter)
6140 children.extend(flatten(self.ifs))
6150 return tuple(children)
616n/a
6172 def getChildNodes(self):
61811 nodelist = []
61911 nodelist.append(self.assign)
62011 nodelist.append(self.iter)
62111 nodelist.extend(flatten_nodes(self.ifs))
62211 return tuple(nodelist)
623n/a
6242 def __repr__(self):
6250 return "GenExprFor(%s, %s, %s)" % (repr(self.assign), repr(self.iter), repr(self.ifs))
626n/a
6274class GenExprIf(Node):
6282 def __init__(self, test, lineno=None):
6292 self.test = test
6302 self.lineno = lineno
631n/a
6322 def getChildren(self):
6330 return self.test,
634n/a
6352 def getChildNodes(self):
6366 return self.test,
637n/a
6382 def __repr__(self):
6390 return "GenExprIf(%s)" % (repr(self.test),)
640n/a
6414class GenExprInner(Node):
6422 def __init__(self, expr, quals, lineno=None):
6432 self.expr = expr
6442 self.quals = quals
6452 self.lineno = lineno
646n/a
6472 def getChildren(self):
6480 children = []
6490 children.append(self.expr)
6500 children.extend(flatten(self.quals))
6510 return tuple(children)
652n/a
6532 def getChildNodes(self):
6548 nodelist = []
6558 nodelist.append(self.expr)
6568 nodelist.extend(flatten_nodes(self.quals))
6578 return tuple(nodelist)
658n/a
6592 def __repr__(self):
6600 return "GenExprInner(%s, %s)" % (repr(self.expr), repr(self.quals))
661n/a
6624class Getattr(Node):
6632 def __init__(self, expr, attrname, lineno=None):
6642658 self.expr = expr
6652658 self.attrname = attrname
6662658 self.lineno = lineno
667n/a
6682 def getChildren(self):
6690 return self.expr, self.attrname
670n/a
6712 def getChildNodes(self):
67212507 return self.expr,
673n/a
6742 def __repr__(self):
6750 return "Getattr(%s, %s)" % (repr(self.expr), repr(self.attrname))
676n/a
6774class Global(Node):
6782 def __init__(self, names, lineno=None):
6798 self.names = names
6808 self.lineno = lineno
681n/a
6822 def getChildren(self):
6830 return self.names,
684n/a
6852 def getChildNodes(self):
68622 return ()
687n/a
6882 def __repr__(self):
6890 return "Global(%s)" % (repr(self.names),)
690n/a
6914class If(Node):
6922 def __init__(self, tests, else_, lineno=None):
693125 self.tests = tests
694125 self.else_ = else_
695125 self.lineno = lineno
696n/a
6972 def getChildren(self):
6980 children = []
6990 children.extend(flatten(self.tests))
7000 children.append(self.else_)
7010 return tuple(children)
702n/a
7032 def getChildNodes(self):
704473 nodelist = []
705473 nodelist.extend(flatten_nodes(self.tests))
706473 if self.else_ is not None:
707106 nodelist.append(self.else_)
708473 return tuple(nodelist)
709n/a
7102 def __repr__(self):
7110 return "If(%s, %s)" % (repr(self.tests), repr(self.else_))
712n/a
7134class IfExp(Node):
7142 def __init__(self, test, then, else_, lineno=None):
7150 self.test = test
7160 self.then = then
7170 self.else_ = else_
7180 self.lineno = lineno
719n/a
7202 def getChildren(self):
7210 return self.test, self.then, self.else_
722n/a
7232 def getChildNodes(self):
7240 return self.test, self.then, self.else_
725n/a
7262 def __repr__(self):
7270 return "IfExp(%s, %s, %s)" % (repr(self.test), repr(self.then), repr(self.else_))
728n/a
7294class Import(Node):
7302 def __init__(self, names, lineno=None):
73150 self.names = names
73250 self.lineno = lineno
733n/a
7342 def getChildren(self):
7350 return self.names,
736n/a
7372 def getChildNodes(self):
738146 return ()
739n/a
7402 def __repr__(self):
7410 return "Import(%s)" % (repr(self.names),)
742n/a
7434class Invert(Node):
7442 def __init__(self, expr, lineno=None):
7450 self.expr = expr
7460 self.lineno = lineno
747n/a
7482 def getChildren(self):
7490 return self.expr,
750n/a
7512 def getChildNodes(self):
7520 return self.expr,
753n/a
7542 def __repr__(self):
7550 return "Invert(%s)" % (repr(self.expr),)
756n/a
7574class Keyword(Node):
7582 def __init__(self, name, expr, lineno=None):
75941 self.name = name
76041 self.expr = expr
76141 self.lineno = lineno
762n/a
7632 def getChildren(self):
7640 return self.name, self.expr
765n/a
7662 def getChildNodes(self):
767186 return self.expr,
768n/a
7692 def __repr__(self):
7700 return "Keyword(%s, %s)" % (repr(self.name), repr(self.expr))
771n/a
7724class Lambda(Node):
7732 def __init__(self, argnames, defaults, flags, code, lineno=None):
77418 self.argnames = argnames
77518 self.defaults = defaults
77618 self.flags = flags
77718 self.code = code
77818 self.lineno = lineno
77918 self.varargs = self.kwargs = None
78018 if flags & CO_VARARGS:
7811 self.varargs = 1
78218 if flags & CO_VARKEYWORDS:
7830 self.kwargs = 1
784n/a
785n/a
7862 def getChildren(self):
7870 children = []
7880 children.append(self.argnames)
7890 children.extend(flatten(self.defaults))
7900 children.append(self.flags)
7910 children.append(self.code)
7920 return tuple(children)
793n/a
7942 def getChildNodes(self):
79536 nodelist = []
79636 nodelist.extend(flatten_nodes(self.defaults))
79736 nodelist.append(self.code)
79836 return tuple(nodelist)
799n/a
8002 def __repr__(self):
8010 return "Lambda(%s, %s, %s, %s)" % (repr(self.argnames), repr(self.defaults), repr(self.flags), repr(self.code))
802n/a
8034class LeftShift(Node):
8042 def __init__(self, leftright, lineno=None):
8056 self.left = leftright[0]
8066 self.right = leftright[1]
8076 self.lineno = lineno
808n/a
8092 def getChildren(self):
8100 return self.left, self.right
811n/a
8122 def getChildNodes(self):
81330 return self.left, self.right
814n/a
8152 def __repr__(self):
8160 return "LeftShift((%s, %s))" % (repr(self.left), repr(self.right))
817n/a
8184class List(Node):
8192 def __init__(self, nodes, lineno=None):
820323 self.nodes = nodes
821323 self.lineno = lineno
822n/a
8232 def getChildren(self):
8240 return tuple(flatten(self.nodes))
825n/a
8262 def getChildNodes(self):
8271452 nodelist = []
8281452 nodelist.extend(flatten_nodes(self.nodes))
8291452 return tuple(nodelist)
830n/a
8312 def __repr__(self):
8320 return "List(%s)" % (repr(self.nodes),)
833n/a
8344class ListComp(Node):
8352 def __init__(self, expr, quals, lineno=None):
83614 self.expr = expr
83714 self.quals = quals
83814 self.lineno = lineno
839n/a
8402 def getChildren(self):
8410 children = []
8420 children.append(self.expr)
8430 children.extend(flatten(self.quals))
8440 return tuple(children)
845n/a
8462 def getChildNodes(self):
84758 nodelist = []
84858 nodelist.append(self.expr)
84958 nodelist.extend(flatten_nodes(self.quals))
85058 return tuple(nodelist)
851n/a
8522 def __repr__(self):
8530 return "ListComp(%s, %s)" % (repr(self.expr), repr(self.quals))
854n/a
8554class ListCompFor(Node):
8562 def __init__(self, assign, list, ifs, lineno=None):
85722 self.assign = assign
85822 self.list = list
85922 self.ifs = ifs
86022 self.lineno = lineno
861n/a
8622 def getChildren(self):
8630 children = []
8640 children.append(self.assign)
8650 children.append(self.list)
8660 children.extend(flatten(self.ifs))
8670 return tuple(children)
868n/a
8692 def getChildNodes(self):
87078 nodelist = []
87178 nodelist.append(self.assign)
87278 nodelist.append(self.list)
87378 nodelist.extend(flatten_nodes(self.ifs))
87478 return tuple(nodelist)
875n/a
8762 def __repr__(self):
8770 return "ListCompFor(%s, %s, %s)" % (repr(self.assign), repr(self.list), repr(self.ifs))
878n/a
8794class ListCompIf(Node):
8802 def __init__(self, test, lineno=None):
8818 self.test = test
8828 self.lineno = lineno
883n/a
8842 def getChildren(self):
8850 return self.test,
886n/a
8872 def getChildNodes(self):
88830 return self.test,
889n/a
8902 def __repr__(self):
8910 return "ListCompIf(%s)" % (repr(self.test),)
892n/a
8934class SetComp(Node):
8942 def __init__(self, expr, quals, lineno=None):
8953 self.expr = expr
8963 self.quals = quals
8973 self.lineno = lineno
898n/a
8992 def getChildren(self):
9000 children = []
9010 children.append(self.expr)
9020 children.extend(flatten(self.quals))
9030 return tuple(children)
904n/a
9052 def getChildNodes(self):
9067 nodelist = []
9077 nodelist.append(self.expr)
9087 nodelist.extend(flatten_nodes(self.quals))
9097 return tuple(nodelist)
910n/a
9112 def __repr__(self):
9120 return "SetComp(%s, %s)" % (repr(self.expr), repr(self.quals))
913n/a
9144class DictComp(Node):
9152 def __init__(self, key, value, quals, lineno=None):
9163 self.key = key
9173 self.value = value
9183 self.quals = quals
9193 self.lineno = lineno
920n/a
9212 def getChildren(self):
9220 children = []
9230 children.append(self.key)
9240 children.append(self.value)
9250 children.extend(flatten(self.quals))
9260 return tuple(children)
927n/a
9282 def getChildNodes(self):
9297 nodelist = []
9307 nodelist.append(self.key)
9317 nodelist.append(self.value)
9327 nodelist.extend(flatten_nodes(self.quals))
9337 return tuple(nodelist)
934n/a
9352 def __repr__(self):
9360 return "DictComp(%s, %s, %s)" % (repr(self.key), repr(self.value), repr(self.quals))
937n/a
9384class Mod(Node):
9392 def __init__(self, leftright, lineno=None):
94081 self.left = leftright[0]
94181 self.right = leftright[1]
94281 self.lineno = lineno
943n/a
9442 def getChildren(self):
9450 return self.left, self.right
946n/a
9472 def getChildNodes(self):
948388 return self.left, self.right
949n/a
9502 def __repr__(self):
9510 return "Mod((%s, %s))" % (repr(self.left), repr(self.right))
952n/a
9534class Module(Node):
9542 def __init__(self, doc, node, lineno=None):
95526 self.doc = doc
95626 self.node = node
95726 self.lineno = lineno
958n/a
9592 def getChildren(self):
9600 return self.doc, self.node
961n/a
9622 def getChildNodes(self):
96367 return self.node,
964n/a
9652 def __repr__(self):
9660 return "Module(%s, %s)" % (repr(self.doc), repr(self.node))
967n/a
9684class Mul(Node):
9692 def __init__(self, leftright, lineno=None):
97047 self.left = leftright[0]
97147 self.right = leftright[1]
97247 self.lineno = lineno
973n/a
9742 def getChildren(self):
9750 return self.left, self.right
976n/a
9772 def getChildNodes(self):
978224 return self.left, self.right
979n/a
9802 def __repr__(self):
9810 return "Mul((%s, %s))" % (repr(self.left), repr(self.right))
982n/a
9834class Name(Node):
9842 def __init__(self, name, lineno=None):
9857060 self.name = name
9867060 self.lineno = lineno
987n/a
9882 def getChildren(self):
9890 return self.name,
990n/a
9912 def getChildNodes(self):
99225562 return ()
993n/a
9942 def __repr__(self):
9950 return "Name(%s)" % (repr(self.name),)
996n/a
9974class Not(Node):
9982 def __init__(self, expr, lineno=None):
99934 self.expr = expr
100034 self.lineno = lineno
1001n/a
10022 def getChildren(self):
10030 return self.expr,
1004n/a
10052 def getChildNodes(self):
1006158 return self.expr,
1007n/a
10082 def __repr__(self):
10090 return "Not(%s)" % (repr(self.expr),)
1010n/a
10114class Or(Node):
10122 def __init__(self, nodes, lineno=None):
10139 self.nodes = nodes
10149 self.lineno = lineno
1015n/a
10162 def getChildren(self):
10170 return tuple(flatten(self.nodes))
1018n/a
10192 def getChildNodes(self):
102040 nodelist = []
102140 nodelist.extend(flatten_nodes(self.nodes))
102240 return tuple(nodelist)
1023n/a
10242 def __repr__(self):
10250 return "Or(%s)" % (repr(self.nodes),)
1026n/a
10274class Pass(Node):
10282 def __init__(self, lineno=None):
1029266 self.lineno = lineno
1030n/a
10312 def getChildren(self):
10320 return ()
1033n/a
10342 def getChildNodes(self):
10351314 return ()
1036n/a
10372 def __repr__(self):
10380 return "Pass()"
1039n/a
10404class Power(Node):
10412 def __init__(self, leftright, lineno=None):
10424 self.left = leftright[0]
10434 self.right = leftright[1]
10444 self.lineno = lineno
1045n/a
10462 def getChildren(self):
10470 return self.left, self.right
1048n/a
10492 def getChildNodes(self):
105020 return self.left, self.right
1051n/a
10522 def __repr__(self):
10530 return "Power((%s, %s))" % (repr(self.left), repr(self.right))
1054n/a
10554class Print(Node):
10562 def __init__(self, nodes, dest, lineno=None):
10570 self.nodes = nodes
10580 self.dest = dest
10590 self.lineno = lineno
1060n/a
10612 def getChildren(self):
10620 children = []
10630 children.extend(flatten(self.nodes))
10640 children.append(self.dest)
10650 return tuple(children)
1066n/a
10672 def getChildNodes(self):
10680 nodelist = []
10690 nodelist.extend(flatten_nodes(self.nodes))
10700 if self.dest is not None:
10710 nodelist.append(self.dest)
10720 return tuple(nodelist)
1073n/a
10742 def __repr__(self):
10750 return "Print(%s, %s)" % (repr(self.nodes), repr(self.dest))
1076n/a
10774class Printnl(Node):
10782 def __init__(self, nodes, dest, lineno=None):
107912 self.nodes = nodes
108012 self.dest = dest
108112 self.lineno = lineno
1082n/a
10832 def getChildren(self):
10840 children = []
10850 children.extend(flatten(self.nodes))
10860 children.append(self.dest)
10870 return tuple(children)
1088n/a
10892 def getChildNodes(self):
109044 nodelist = []
109144 nodelist.extend(flatten_nodes(self.nodes))
109244 if self.dest is not None:
109321 nodelist.append(self.dest)
109444 return tuple(nodelist)
1095n/a
10962 def __repr__(self):
10970 return "Printnl(%s, %s)" % (repr(self.nodes), repr(self.dest))
1098n/a
10994class Raise(Node):
11002 def __init__(self, expr1, expr2, expr3, lineno=None):
110130 self.expr1 = expr1
110230 self.expr2 = expr2
110330 self.expr3 = expr3
110430 self.lineno = lineno
1105n/a
11062 def getChildren(self):
11070 children = []
11080 children.append(self.expr1)
11090 children.append(self.expr2)
11100 children.append(self.expr3)
11110 return tuple(children)
1112n/a
11132 def getChildNodes(self):
1114142 nodelist = []
1115142 if self.expr1 is not None:
1116135 nodelist.append(self.expr1)
1117142 if self.expr2 is not None:
111860 nodelist.append(self.expr2)
1119142 if self.expr3 is not None:
11200 nodelist.append(self.expr3)
1121142 return tuple(nodelist)
1122n/a
11232 def __repr__(self):
11240 return "Raise(%s, %s, %s)" % (repr(self.expr1), repr(self.expr2), repr(self.expr3))
1125n/a
11264class Return(Node):
11272 def __init__(self, value, lineno=None):
1128281 self.value = value
1129281 self.lineno = lineno
1130n/a
11312 def getChildren(self):
11320 return self.value,
1133n/a
11342 def getChildNodes(self):
11351401 return self.value,
1136n/a
11372 def __repr__(self):
11380 return "Return(%s)" % (repr(self.value),)
1139n/a
11404class RightShift(Node):
11412 def __init__(self, leftright, lineno=None):
11424 self.left = leftright[0]
11434 self.right = leftright[1]
11444 self.lineno = lineno
1145n/a
11462 def getChildren(self):
11470 return self.left, self.right
1148n/a
11492 def getChildNodes(self):
115020 return self.left, self.right
1151n/a
11522 def __repr__(self):
11530 return "RightShift((%s, %s))" % (repr(self.left), repr(self.right))
1154n/a
11554class Set(Node):
11562 def __init__(self, nodes, lineno=None):
11577 self.nodes = nodes
11587 self.lineno = lineno
1159n/a
11602 def getChildren(self):
11610 return tuple(flatten(self.nodes))
1162n/a
11632 def getChildNodes(self):
116411 nodelist = []
116511 nodelist.extend(flatten_nodes(self.nodes))
116611 return tuple(nodelist)
1167n/a
11682 def __repr__(self):
11690 return "Set(%s)" % (repr(self.nodes),)
1170n/a
11714class Slice(Node):
11722 def __init__(self, expr, flags, lower, upper, lineno=None):
117336 self.expr = expr
117436 self.flags = flags
117536 self.lower = lower
117636 self.upper = upper
117736 self.lineno = lineno
1178n/a
11792 def getChildren(self):
11800 children = []
11810 children.append(self.expr)
11820 children.append(self.flags)
11830 children.append(self.lower)
11840 children.append(self.upper)
11850 return tuple(children)
1186n/a
11872 def getChildNodes(self):
1188126 nodelist = []
1189126 nodelist.append(self.expr)
1190126 if self.lower is not None:
119163 nodelist.append(self.lower)
1192126 if self.upper is not None:
119378 nodelist.append(self.upper)
1194126 return tuple(nodelist)
1195n/a
11962 def __repr__(self):
11970 return "Slice(%s, %s, %s, %s)" % (repr(self.expr), repr(self.flags), repr(self.lower), repr(self.upper))
1198n/a
11994class Sliceobj(Node):
12002 def __init__(self, nodes, lineno=None):
12010 self.nodes = nodes
12020 self.lineno = lineno
1203n/a
12042 def getChildren(self):
12050 return tuple(flatten(self.nodes))
1206n/a
12072 def getChildNodes(self):
12080 nodelist = []
12090 nodelist.extend(flatten_nodes(self.nodes))
12100 return tuple(nodelist)
1211n/a
12122 def __repr__(self):
12130 return "Sliceobj(%s)" % (repr(self.nodes),)
1214n/a
12154class Stmt(Node):
12162 def __init__(self, nodes, lineno=None):
12179833 self.nodes = nodes
12189833 self.lineno = lineno
1219n/a
12202 def getChildren(self):
12210 return tuple(flatten(self.nodes))
1222n/a
12232 def getChildNodes(self):
122410069 nodelist = []
122510069 nodelist.extend(flatten_nodes(self.nodes))
122610069 return tuple(nodelist)
1227n/a
12282 def __repr__(self):
12290 return "Stmt(%s)" % (repr(self.nodes),)
1230n/a
12314class Sub(Node):
12322 def __init__(self, leftright, lineno=None):
12335 self.left = leftright[0]
12345 self.right = leftright[1]
12355 self.lineno = lineno
1236n/a
12372 def getChildren(self):
12380 return self.left, self.right
1239n/a
12402 def getChildNodes(self):
124124 return self.left, self.right
1242n/a
12432 def __repr__(self):
12440 return "Sub((%s, %s))" % (repr(self.left), repr(self.right))
1245n/a
12464class Subscript(Node):
12472 def __init__(self, expr, flags, subs, lineno=None):
1248151 self.expr = expr
1249151 self.flags = flags
1250151 self.subs = subs
1251151 self.lineno = lineno
1252n/a
12532 def getChildren(self):
12540 children = []
12550 children.append(self.expr)
12560 children.append(self.flags)
12570 children.extend(flatten(self.subs))
12580 return tuple(children)
1259n/a
12602 def getChildNodes(self):
1261522 nodelist = []
1262522 nodelist.append(self.expr)
1263522 nodelist.extend(flatten_nodes(self.subs))
1264522 return tuple(nodelist)
1265n/a
12662 def __repr__(self):
12670 return "Subscript(%s, %s, %s)" % (repr(self.expr), repr(self.flags), repr(self.subs))
1268n/a
12694class TryExcept(Node):
12702 def __init__(self, body, handlers, else_, lineno=None):
1271136 self.body = body
1272136 self.handlers = handlers
1273136 self.else_ = else_
1274136 self.lineno = lineno
1275n/a
12762 def getChildren(self):
12770 children = []
12780 children.append(self.body)
12790 children.extend(flatten(self.handlers))
12800 children.append(self.else_)
12810 return tuple(children)
1282n/a
12832 def getChildNodes(self):
1284664 nodelist = []
1285664 nodelist.append(self.body)
1286664 nodelist.extend(flatten_nodes(self.handlers))
1287664 if self.else_ is not None:
1288491 nodelist.append(self.else_)
1289664 return tuple(nodelist)
1290n/a
12912 def __repr__(self):
12920 return "TryExcept(%s, %s, %s)" % (repr(self.body), repr(self.handlers), repr(self.else_))
1293n/a
12944class TryFinally(Node):
12952 def __init__(self, body, final, lineno=None):
129613 self.body = body
129713 self.final = final
129813 self.lineno = lineno
1299n/a
13002 def getChildren(self):
13010 return self.body, self.final
1302n/a
13032 def getChildNodes(self):
130461 return self.body, self.final
1305n/a
13062 def __repr__(self):
13070 return "TryFinally(%s, %s)" % (repr(self.body), repr(self.final))
1308n/a
13094class Tuple(Node):
13102 def __init__(self, nodes, lineno=None):
1311532 self.nodes = nodes
1312532 self.lineno = lineno
1313n/a
13142 def getChildren(self):
13150 return tuple(flatten(self.nodes))
1316n/a
13172 def getChildNodes(self):
13182365 nodelist = []
13192365 nodelist.extend(flatten_nodes(self.nodes))
13202365 return tuple(nodelist)
1321n/a
13222 def __repr__(self):
13230 return "Tuple(%s)" % (repr(self.nodes),)
1324n/a
13254class UnaryAdd(Node):
13262 def __init__(self, expr, lineno=None):
13274 self.expr = expr
13284 self.lineno = lineno
1329n/a
13302 def getChildren(self):
13310 return self.expr,
1332n/a
13332 def getChildNodes(self):
133420 return self.expr,
1335n/a
13362 def __repr__(self):
13370 return "UnaryAdd(%s)" % (repr(self.expr),)
1338n/a
13394class UnarySub(Node):
13402 def __init__(self, expr, lineno=None):
134157 self.expr = expr
134257 self.lineno = lineno
1343n/a
13442 def getChildren(self):
13450 return self.expr,
1346n/a
13472 def getChildNodes(self):
1348248 return self.expr,
1349n/a
13502 def __repr__(self):
13510 return "UnarySub(%s)" % (repr(self.expr),)
1352n/a
13534class While(Node):
13542 def __init__(self, test, body, else_, lineno=None):
135512 self.test = test
135612 self.body = body
135712 self.else_ = else_
135812 self.lineno = lineno
1359n/a
13602 def getChildren(self):
13610 children = []
13620 children.append(self.test)
13630 children.append(self.body)
13640 children.append(self.else_)
13650 return tuple(children)
1366n/a
13672 def getChildNodes(self):
136860 nodelist = []
136960 nodelist.append(self.test)
137060 nodelist.append(self.body)
137160 if self.else_ is not None:
13720 nodelist.append(self.else_)
137360 return tuple(nodelist)
1374n/a
13752 def __repr__(self):
13760 return "While(%s, %s, %s)" % (repr(self.test), repr(self.body), repr(self.else_))
1377n/a
13784class With(Node):
13792 def __init__(self, expr, vars, body, lineno=None):
13808 self.expr = expr
13818 self.vars = vars
13828 self.body = body
13838 self.lineno = lineno
1384n/a
13852 def getChildren(self):
13860 children = []
13870 children.append(self.expr)
13880 children.append(self.vars)
13890 children.append(self.body)
13900 return tuple(children)
1391n/a
13922 def getChildNodes(self):
139340 nodelist = []
139440 nodelist.append(self.expr)
139540 if self.vars is not None:
139620 nodelist.append(self.vars)
139740 nodelist.append(self.body)
139840 return tuple(nodelist)
1399n/a
14002 def __repr__(self):
14010 return "With(%s, %s, %s)" % (repr(self.expr), repr(self.vars), repr(self.body))
1402n/a
14034class Yield(Node):
14042 def __init__(self, value, lineno=None):
14052 self.value = value
14062 self.lineno = lineno
1407n/a
14082 def getChildren(self):
14090 return self.value,
1410n/a
14112 def getChildNodes(self):
14128 return self.value,
1413n/a
14142 def __repr__(self):
14150 return "Yield(%s)" % (repr(self.value),)
1416n/a
1417178for name, obj in globals().items():
1418176 if isinstance(obj, type) and issubclass(obj, Node):
14190 nodes[name.lower()] = obj