bundled/jinja2/custom_fixers/fix_alt_unicode.py @ b443b42afe6f issue-90

Convert unicode to ascii for mercurial API.

Mercurial API can't work with python's Unicode objects.
Details http://mercurial.selenic.com/wiki/EncodingStrategy#Unicode_strings
author Alexander Stepanenko <olexander314@gmail.com>
date Mon, 15 Dec 2014 02:06:13 +0300
parents 256716e3a3d7
children (none)
from lib2to3 import fixer_base
from lib2to3.fixer_util import Name, BlankLine


class FixAltUnicode(fixer_base.BaseFix):
    PATTERN = """
    func=funcdef< 'def' name='__unicode__'
                  parameters< '(' NAME ')' > any+ >
    """

    def transform(self, node, results):
        name = results['name']
        name.replace(Name('__str__', prefix=name.prefix))