]> git.phdru.name Git - sqlconvert.git/blobdiff - scripts/print_subtree.py
Find an error in parse tree
[sqlconvert.git] / scripts / print_subtree.py
index 8a37d957f08b69bc2c0a5629a7e20822e06ddcef..76ac675ce9f5086652b785d89d1c8359640c350b 100755 (executable)
@@ -3,8 +3,8 @@ from __future__ import print_function
 
 import sys
 from sqlparse import parse
-from mysql2sql.process_tokens import requote_names
 from mysql2sql.print_tokens import print_tokens
+from mysql2sql.process_tokens import requote_names, find_error
 
 
 def test():
@@ -16,6 +16,8 @@ def test():
     ):
         for parsed in parse(query):
             print("----------")
+            if find_error(parsed):
+                print("ERRORS IN QUERY")
             requote_names(parsed)
             print_tokens(parsed)
             print()
@@ -23,14 +25,17 @@ def test():
     print("----------")
 
 
-def main(query):
-    for parsed in parse(query):
+def main(*queries):
+    for query in queries:
+        for parsed in parse(query):
+            print("----------")
+            if find_error(parsed):
+                print("ERRORS IN QUERY")
+            requote_names(parsed)
+            print_tokens(parsed)
+            print()
+            parsed._pprint_tree()
         print("----------")
-        requote_names(parsed)
-        print_tokens(parsed)
-        print()
-        parsed._pprint_tree()
-    print("----------")
 
 if __name__ == '__main__':
     if len(sys.argv) <= 1:
@@ -39,5 +44,5 @@ if __name__ == '__main__':
     if sys.argv[1] == '-t':
         test()
     else:
-        query = ';'.join(sys.argv[1:])
-        main(query)
+        queries = sys.argv[1:]
+        main(*queries)