src/eric7/Plugins/CheckerPlugins/SyntaxChecker/SyntaxCheckService.py

branch
eric7
changeset 9925
a267ac36dd69
parent 9653
e67609152c5e
child 9926
6222ddc7e1bd
--- a/src/eric7/Plugins/CheckerPlugins/SyntaxChecker/SyntaxCheckService.py	Mon Mar 20 10:43:29 2023 +0100
+++ b/src/eric7/Plugins/CheckerPlugins/SyntaxChecker/SyntaxCheckService.py	Mon Mar 20 16:08:35 2023 +0100
@@ -120,14 +120,19 @@
                 extensions.add(ext)
         return extensions
 
-    def syntaxCheck(self, lang, filename, source):
+    def syntaxCheck(self, lang, filename, source, *args):
         """
         Public method to prepare a syntax check of one source file.
 
         @param lang language of the file or None to determine by internal
-            algorithm (str or None)
-        @param filename source filename (string)
-        @param source string containing the code to check (string)
+            algorithm
+        @type str or None
+        @param filename source filename
+        @type str
+        @param source string containing the code to check
+        @type str
+        @param args tuple containing additional positional arguments
+        @type tuple
         """
         if not lang:
             lang = self.__determineLanguage(filename, source)
@@ -138,8 +143,9 @@
 
         data = [source]
         # Call the getArgs function to get the required arguments
-        env, args, getExt = self.__supportedLanguages[lang]
-        data.extend(args())
+        env, getArgs, getExt = self.__supportedLanguages[lang]
+        data.extend(getArgs())
+        data.extend(args)
         self.backgroundService.enqueueRequest(
             "{0}Syntax".format(lang), env, filename, data
         )
@@ -155,16 +161,20 @@
         for lang in self.getLanguages():
             data[lang] = []
 
-        for filename, source in argumentsList:
-            lang = self.__determineLanguage(filename, source)
+        for arguments in argumentsList:
+            # arguments[0]: file name
+            # arguments[1]: source
+            # arguments[2:]: additional arguments
+            lang = self.__determineLanguage(arguments[0], arguments[1])
             if lang not in self.getLanguages():
                 continue
             else:
-                jobData = [source]
+                jobData = [arguments[1]]
                 # Call the getArgs function to get the required arguments
-                args = self.__supportedLanguages[lang][1]
-                jobData.extend(args())
-                data[lang].append((filename, jobData))
+                getArgs = self.__supportedLanguages[lang][1]
+                jobData.extend(getArgs())
+                jobData.extend(arguments[2:])
+                data[lang].append((arguments[0], jobData))
 
         self.queuedBatches = []
         for lang in self.getLanguages():

eric ide

mercurial