diff options
author | Stefan Rado <px4@sradonia.net> | 2014-02-18 22:07:42 +0100 |
---|---|---|
committer | Stefan Rado <px4@sradonia.net> | 2014-02-18 22:07:42 +0100 |
commit | 55e66f5ad1fecb02bcb9782265303e20756b5cb9 (patch) | |
tree | 1a23f81eb1acb4f69edb2779d81d5a1ada1cf63a /Tools/px4params/srcscanner.py | |
parent | e9feef8ff6ef1f4dcc7b55a75301e2275e662dae (diff) | |
download | px4-firmware-55e66f5ad1fecb02bcb9782265303e20756b5cb9.tar.gz px4-firmware-55e66f5ad1fecb02bcb9782265303e20756b5cb9.tar.bz2 px4-firmware-55e66f5ad1fecb02bcb9782265303e20756b5cb9.zip |
Rename Scanner and Parser classes to SourceScanner and SourceParser to avoid naming conflicts.
Diffstat (limited to 'Tools/px4params/srcscanner.py')
-rw-r--r-- | Tools/px4params/srcscanner.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/Tools/px4params/srcscanner.py b/Tools/px4params/srcscanner.py new file mode 100644 index 000000000..d7eca72d7 --- /dev/null +++ b/Tools/px4params/srcscanner.py @@ -0,0 +1,30 @@ +import os +import re +import codecs + +class SourceScanner(object): + """ + Traverses directory tree, reads all source files, and passes their contents + to the Parser. + """ + + def ScanDir(self, srcdir, parser): + """ + Scans provided path and passes all found contents to the parser using + parser.Parse method. + """ + extensions = tuple(parser.GetSupportedExtensions()) + for dirname, dirnames, filenames in os.walk(srcdir): + for filename in filenames: + if filename.endswith(extensions): + path = os.path.join(dirname, filename) + self.ScanFile(path, parser) + + def ScanFile(self, path, parser): + """ + Scans provided file and passes its contents to the parser using + parser.Parse method. + """ + with codecs.open(path, 'r', 'utf-8') as f: + contents = f.read() + parser.Parse(contents) |