diff options
Diffstat (limited to 'sphinx/pycode/pgen2/literals.py')
-rw-r--r-- | sphinx/pycode/pgen2/literals.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/sphinx/pycode/pgen2/literals.py b/sphinx/pycode/pgen2/literals.py index d4893702..25e09b62 100644 --- a/sphinx/pycode/pgen2/literals.py +++ b/sphinx/pycode/pgen2/literals.py @@ -4,9 +4,13 @@ # Extended to handle raw and unicode literals by Georg Brandl. """Safely evaluate Python string literals without using eval().""" +from __future__ import print_function import re +from six import text_type + + simple_escapes = {"a": "\a", "b": "\b", "f": "\f", @@ -66,7 +70,7 @@ uni_escape_re = re.compile(r"\\(\'|\"|\\|[abfnrtv]|x.{0,2}|[0-7]{1,3}|" def evalString(s, encoding=None): regex = escape_re repl = escape - if encoding and not isinstance(s, unicode): + if encoding and not isinstance(s, text_type): s = s.decode(encoding) if s.startswith('u') or s.startswith('U'): regex = uni_escape_re @@ -89,7 +93,7 @@ def test(): s = repr(c) e = evalString(s) if e != c: - print i, c, s, e + print(i, c, s, e) if __name__ == "__main__": |