summaryrefslogtreecommitdiff
path: root/sqlparse/sql.py
diff options
context:
space:
mode:
authorOleg Broytman <phd@phdru.name>2016-08-29 21:36:15 +0300
committerOleg Broytman <phd@phdru.name>2016-08-31 16:09:36 +0300
commitb05bc5ab586cb06d89c38e2eee7f77e1d3fc03c5 (patch)
tree2510e36ffc9f911032ade6de88a62bffa51d37b8 /sqlparse/sql.py
parent791a3312a247670cdeed61e52e8ca449dbb27afa (diff)
downloadsqlparse-b05bc5ab586cb06d89c38e2eee7f77e1d3fc03c5.tar.gz
Convert string literals to unicode for Py27
Working with non-ascii in Python require all-unicode approach, but str literals in Python 2.7 are bytes. The patch makes them unicode. Syntax u'' is supported in Python 2.7 and 3.3+.
Diffstat (limited to 'sqlparse/sql.py')
-rw-r--r--sqlparse/sql.py12
1 files changed, 6 insertions, 6 deletions
diff --git a/sqlparse/sql.py b/sqlparse/sql.py
index f780090..06347a0 100644
--- a/sqlparse/sql.py
+++ b/sqlparse/sql.py
@@ -48,8 +48,8 @@ class Token(object):
cls = self._get_repr_name()
value = self._get_repr_value()
- q = '"' if value.startswith("'") and value.endswith("'") else "'"
- return "<{cls} {q}{value}{q} at 0x{id:2X}>".format(
+ q = u'"' if value.startswith("'") and value.endswith("'") else u"'"
+ return u"<{cls} {q}{value}{q} at 0x{id:2X}>".format(
id=id(self), **locals())
def _get_repr_name(self):
@@ -143,7 +143,7 @@ class TokenList(Token):
self.is_group = True
def __str__(self):
- return ''.join(token.value for token in self.flatten())
+ return u''.join(token.value for token in self.flatten())
# weird bug
# def __len__(self):
@@ -160,13 +160,13 @@ class TokenList(Token):
def _pprint_tree(self, max_depth=None, depth=0, f=None):
"""Pretty-print the object tree."""
- indent = ' | ' * depth
+ indent = u' | ' * depth
for idx, token in enumerate(self.tokens):
cls = token._get_repr_name()
value = token._get_repr_value()
- q = '"' if value.startswith("'") and value.endswith("'") else "'"
- print("{indent}{idx:2d} {cls} {q}{value}{q}"
+ q = u'"' if value.startswith("'") and value.endswith("'") else u"'"
+ print(u"{indent}{idx:2d} {cls} {q}{value}{q}"
.format(**locals()), file=f)
if token.is_group and (max_depth is None or depth < max_depth):