]> git.phdru.name Git - sqlconvert.git/commitdiff
Refactor is_comment_or_space
authorOleg Broytman <phd@phdru.name>
Sat, 11 Mar 2017 20:28:24 +0000 (23:28 +0300)
committerOleg Broytman <phd@phdru.name>
Sat, 11 Mar 2017 20:28:24 +0000 (23:28 +0300)
sqlconvert/process_tokens.py

index 790bf53f8750bb27b5add60f8672989189169155..e55513e19afb2de13591a113c4f3000721c4322d 100644 (file)
@@ -13,6 +13,11 @@ def find_error(token_list):
     return False
 
 
+def is_comment_or_space(token):
+    return token.ttype in (T.Comment.Single, T.Comment.Multiline,
+                           T.Newline, T.Whitespace)
+
+
 def is_newline_statement(statement):
     for token in statement.tokens[:]:
         if token.ttype is not T.Newline:
@@ -50,8 +55,7 @@ class StatementGrouper(object):
         last_stmt = statements[-1]
         for i in xrange(len(last_stmt.tokens) - 1, 0, -1):
             token = last_stmt.tokens[i]
-            if token.ttype in (T.Comment.Single, T.Comment.Multiline,
-                               T.Newline, T.Whitespace):
+            if is_comment_or_space(token):
                 continue
             if token.ttype is T.Punctuation and token.value == ';':
                 break  # The last statement is complete
@@ -71,8 +75,7 @@ class StatementGrouper(object):
             return
         tokens = parse(''.join(self.lines), encoding=self.encoding)
         for token in tokens:
-            if (token.ttype not in (T.Comment.Single, T.Comment.Multiline,
-                                    T.Newline, T.Whitespace)):
+            if not is_comment_or_space(token):
                 raise ValueError("Incomplete SQL statement: %s" %
                                  tokens)
         self.lines = []