Ver código fonte

checkIncludes: introduce rules-file caching.

We'll want this so that we can have each file evaluated
independently, rather than a directory at a time.
Nick Mathewson 4 anos atrás
pai
commit
3f35ac772b
1 arquivos alterados com 5 adições e 0 exclusões
  1. 5 0
      scripts/maint/checkIncludes.py

+ 5 - 0
scripts/maint/checkIncludes.py

@@ -123,8 +123,12 @@ class Rules(object):
 
         return allowed
 
+include_rules_cache = {}
+
 def load_include_rules(fname):
     """ Read a rules file from 'fname', and return it as a Rules object. """
+    if fname in include_rules_cache:
+        return include_rules_cache[fname]
     result = Rules(os.path.split(fname)[0])
     with open_file(fname) as f:
         for line in f:
@@ -132,6 +136,7 @@ def load_include_rules(fname):
             if line.startswith("#") or not line:
                 continue
             result.addPattern(line)
+    include_rules_cache[fname] = result
     return result
 
 if __name__ == '__main__':