~ubuntu-branches/ubuntu/karmic/python3.0/karmic

« back to all changes in this revision

Viewing changes to Lib/lib2to3/fixes/fix_has_key.py

  • Committer: Bazaar Package Importer
  • Author(s): Matthias Klose
  • Date: 2009-02-16 17:18:23 UTC
  • mfrom: (1.1.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20090216171823-1d5cm5qnnjvmnzzm
Tags: 3.0.1-0ubuntu1
New upstream version.

Show diffs side-by-side

added added

removed removed

Lines of Context:
33
33
from .. import pytree
34
34
from ..pgen2 import token
35
35
from .. import fixer_base
36
 
from ..fixer_util import Name
 
36
from ..fixer_util import Name, parenthesize
37
37
 
38
38
 
39
39
class FixHasKey(fixer_base.BaseFix):
86
86
            after = [n.clone() for n in after]
87
87
        if arg.type in (syms.comparison, syms.not_test, syms.and_test,
88
88
                        syms.or_test, syms.test, syms.lambdef, syms.argument):
89
 
            arg = self.parenthesize(arg)
 
89
            arg = parenthesize(arg)
90
90
        if len(before) == 1:
91
91
            before = before[0]
92
92
        else:
98
98
            n_op = pytree.Node(syms.comp_op, (n_not, n_op))
99
99
        new = pytree.Node(syms.comparison, (arg, n_op, before))
100
100
        if after:
101
 
            new = self.parenthesize(new)
 
101
            new = parenthesize(new)
102
102
            new = pytree.Node(syms.power, (new,) + tuple(after))
103
103
        if node.parent.type in (syms.comparison, syms.expr, syms.xor_expr,
104
104
                                syms.and_expr, syms.shift_expr,
105
105
                                syms.arith_expr, syms.term,
106
106
                                syms.factor, syms.power):
107
 
            new = self.parenthesize(new)
 
107
            new = parenthesize(new)
108
108
        new.set_prefix(prefix)
109
109
        return new