# HG changeset patch # User Paul Boddie # Date 1386526455 -3600 # Node ID 8028f38d70a9d2d6ed8c688a595aed78a014fed8 # Parent f72b2becdfde43baf9d55faca1dfbe2fbbbc57f3 Made operator-using nodes attribute accessors in order to permit optimisations. diff -r f72b2becdfde -r 8028f38d70a9 compiler/ast.py --- a/compiler/ast.py Thu Nov 28 22:27:16 2013 +0100 +++ b/compiler/ast.py Sun Dec 08 19:14:15 2013 +0100 @@ -119,11 +119,12 @@ self._attrs_deduced_from_specific_usage = None self._position_deduced = None -class OperatorUser: +class OperatorUser(AttributeAccessor): "Operator-related node." def __init__(self): + AttributeAccessor.__init__(self) self._module = None class Node(AttributeUser): @@ -1916,10 +1917,9 @@ def visit(self, visitor, *args): return visitor.visitSub(self, *args) -class Subscript(Node, AttributeAccessor, OperatorUser): +class Subscript(Node, OperatorUser): def __init__(self, expr, flags, subs, lineno=None): Node.__init__(self) - AttributeAccessor.__init__(self) OperatorUser.__init__(self) self.expr = expr self.flags = flags