]> git.phdru.name Git - sqlconvert.git/blobdiff - mysql2sql/process_tokens.py
Find an error in parse tree
[sqlconvert.git] / mysql2sql / process_tokens.py
index e9a62f825a6d5625dcd6dfc2e03b2f150208a12b..2e39a2a7d8a4677de1052fa64639c088beaa579e 100644 (file)
@@ -1,6 +1,6 @@
 
 from sqlparse.sql import TokenList
-from sqlparse.tokens import Name
+from sqlparse.tokens import Name, Error
 
 
 def requote_names(token_list):
@@ -8,12 +8,22 @@ def requote_names(token_list):
     for token in token_list:
         if isinstance(token, TokenList):
             requote_names(token)
-        else:
-            if token.ttype is Name:
-                value = token.value
-                if (value[0] == "`") and (value[-1] == "`"):
-                    value = value[1:-1]
-                if value.islower():
-                    token.normalized = token.value = value
-                else:
-                    token.normalized = token.value = '"%s"' % value
+        elif token.ttype is Name:
+            value = token.value
+            if (value[0] == "`") and (value[-1] == "`"):
+                value = value[1:-1]
+            if value.islower():
+                token.normalized = token.value = value
+            else:
+                token.normalized = token.value = '"%s"' % value
+
+
+def find_error(token_list):
+    """Find an error"""
+    for token in token_list:
+        if isinstance(token, TokenList):
+            if find_error(token):
+                return True
+        elif token.ttype is Error:
+            return True
+    return False