diff options
Diffstat (limited to 'sqlparse/lexer.py')
-rw-r--r-- | sqlparse/lexer.py | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/sqlparse/lexer.py b/sqlparse/lexer.py index d2ae8f6..bb7fb48 100644 --- a/sqlparse/lexer.py +++ b/sqlparse/lexer.py @@ -16,7 +16,7 @@ import re from sqlparse import tokens from sqlparse.keywords import SQL_REGEX -from sqlparse.compat import StringIO, string_types, text_type, range +from sqlparse.compat import StringIO, string_types, text_type from sqlparse.utils import consume @@ -67,9 +67,8 @@ class Lexer(object): except UnicodeDecodeError: text = text.decode('unicode-escape') - iterable = iter(range(len(text))) - - for pos in iterable: + iterable = enumerate(text) + for pos, char in iterable: for rexmatch, action, new_state in statetokens: m = rexmatch(text, pos) @@ -93,7 +92,7 @@ class Lexer(object): consume(iterable, m.end() - pos - 1) break else: - yield tokens.Error, text[pos] + yield tokens.Error, char def tokenize(sql, encoding=None): |