17db96d56Sopenharmony_ci# Copyright 2006 Google, Inc. All Rights Reserved. 27db96d56Sopenharmony_ci# Licensed to PSF under a Contributor Agreement. 37db96d56Sopenharmony_ci 47db96d56Sopenharmony_ci"""Fixer that transforms `xyzzy` into repr(xyzzy).""" 57db96d56Sopenharmony_ci 67db96d56Sopenharmony_ci# Local imports 77db96d56Sopenharmony_cifrom .. import fixer_base 87db96d56Sopenharmony_cifrom ..fixer_util import Call, Name, parenthesize 97db96d56Sopenharmony_ci 107db96d56Sopenharmony_ci 117db96d56Sopenharmony_ciclass FixRepr(fixer_base.BaseFix): 127db96d56Sopenharmony_ci 137db96d56Sopenharmony_ci BM_compatible = True 147db96d56Sopenharmony_ci PATTERN = """ 157db96d56Sopenharmony_ci atom < '`' expr=any '`' > 167db96d56Sopenharmony_ci """ 177db96d56Sopenharmony_ci 187db96d56Sopenharmony_ci def transform(self, node, results): 197db96d56Sopenharmony_ci expr = results["expr"].clone() 207db96d56Sopenharmony_ci 217db96d56Sopenharmony_ci if expr.type == self.syms.testlist1: 227db96d56Sopenharmony_ci expr = parenthesize(expr) 237db96d56Sopenharmony_ci return Call(Name("repr"), [expr], prefix=node.prefix) 24