From: Oleg Broytman Date: Sat, 11 Mar 2017 20:28:24 +0000 (+0300) Subject: Refactor is_comment_or_space X-Git-Tag: 0.0.8~5 X-Git-Url: https://git.phdru.name/?p=sqlconvert.git;a=commitdiff_plain;h=206d77dac80ce387d4714f589916de4842e99cef Refactor is_comment_or_space --- diff --git a/sqlconvert/process_tokens.py b/sqlconvert/process_tokens.py index 790bf53..e55513e 100644 --- a/sqlconvert/process_tokens.py +++ b/sqlconvert/process_tokens.py @@ -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 = []