summaryrefslogtreecommitdiffstats
path: root/AppPkg/Applications/Python/Python-2.7.2/Lib/lib2to3/fixes/fix_unicode.py
diff options
context:
space:
mode:
Diffstat (limited to 'AppPkg/Applications/Python/Python-2.7.2/Lib/lib2to3/fixes/fix_unicode.py')
-rw-r--r--AppPkg/Applications/Python/Python-2.7.2/Lib/lib2to3/fixes/fix_unicode.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/AppPkg/Applications/Python/Python-2.7.2/Lib/lib2to3/fixes/fix_unicode.py b/AppPkg/Applications/Python/Python-2.7.2/Lib/lib2to3/fixes/fix_unicode.py
new file mode 100644
index 0000000000..4919ff5233
--- /dev/null
+++ b/AppPkg/Applications/Python/Python-2.7.2/Lib/lib2to3/fixes/fix_unicode.py
@@ -0,0 +1,25 @@
+"""Fixer that changes unicode to str, unichr to chr, and u"..." into "...".
+
+"""
+
+import re
+from ..pgen2 import token
+from .. import fixer_base
+
+_mapping = {u"unichr" : u"chr", u"unicode" : u"str"}
+_literal_re = re.compile(ur"[uU][rR]?[\'\"]")
+
+class FixUnicode(fixer_base.BaseFix):
+ BM_compatible = True
+ PATTERN = "STRING | 'unicode' | 'unichr'"
+
+ def transform(self, node, results):
+ if node.type == token.NAME:
+ new = node.clone()
+ new.value = _mapping[node.value]
+ return new
+ elif node.type == token.STRING:
+ if _literal_re.match(node.value):
+ new = node.clone()
+ new.value = new.value[1:]
+ return new