symbian-qemu-0.9.1-12/python-2.6.1/Lib/lib2to3/fixes/fix_repr.py
author Chetan Kapoor<chetank@symbian.org>
Wed, 13 Oct 2010 14:38:32 +0100
changeset 120 1dadaac0175a
parent 1 2fb8b9db1c86
permissions -rw-r--r--
Bug 3744 - Syborg baseport build fails unless source is located in specific directory

# Copyright 2006 Google, Inc. All Rights Reserved.
# Licensed to PSF under a Contributor Agreement.

"""Fixer that transforms `xyzzy` into repr(xyzzy)."""

# Local imports
from .. import fixer_base
from ..fixer_util import Call, Name


class FixRepr(fixer_base.BaseFix):

    PATTERN = """
              atom < '`' expr=any '`' >
              """

    def transform(self, node, results):
        expr = results["expr"].clone()

        if expr.type == self.syms.testlist1:
            expr = self.parenthesize(expr)
        return Call(Name("repr"), [expr], prefix=node.get_prefix())