]> git.phdru.name Git - sqlconvert.git/blobdiff - sqlconvert/process_tokens.py
CI(GHActions): Use `actions/setup-python@v4`, `actions/cache@v3`
[sqlconvert.git] / sqlconvert / process_tokens.py
index e55513e19afb2de13591a113c4f3000721c4322d..414c5ca5a024bd783205655526897e87aa872ddf 100644 (file)
@@ -1,4 +1,5 @@
 
+from sqlparse.sql import Comment
 from sqlobject.converters import sqlrepr
 from sqlparse import parse
 from sqlparse.compat import PY3
@@ -14,8 +15,9 @@ def find_error(token_list):
 
 
 def is_comment_or_space(token):
-    return token.ttype in (T.Comment.Single, T.Comment.Multiline,
-                           T.Newline, T.Whitespace)
+    return isinstance(token, Comment) or \
+        token.ttype in (T.Comment, T.Comment.Single, T.Comment.Multiline,
+                        T.Newline, T.Whitespace)
 
 
 def is_newline_statement(statement):
@@ -52,6 +54,8 @@ class StatementGrouper(object):
 
     def process_lines(self):
         statements = parse(''.join(self.lines), encoding=self.encoding)
+        if not statements:
+            return
         last_stmt = statements[-1]
         for i in xrange(len(last_stmt.tokens) - 1, 0, -1):
             token = last_stmt.tokens[i]