diff --git a/scripts/TouchinBuild/parsers/InsideParser/InsideCsprojSetParser.py b/scripts/TouchinBuild/parsers/InsideParser/InsideCsprojSetParser.py index 095e557..08c2b47 100644 --- a/scripts/TouchinBuild/parsers/InsideParser/InsideCsprojSetParser.py +++ b/scripts/TouchinBuild/parsers/InsideParser/InsideCsprojSetParser.py @@ -1,5 +1,6 @@ import re from parsers.InsideParser.InsideParserBase import InsideParserBase +from parsers.RegexpBuilder import RegexpBuilder class InsideCsprojSetParser(InsideParserBase): @@ -23,8 +24,9 @@ class InsideCsprojSetParser(InsideParserBase): valueRegexp = r"'(?P[^']+)'" slnConfigRegexp = r"'(?P[a-zA-Z|]*)'$" - regexpSource = self.startsWith('inside') + self.filePathRegexp + self.keywordToken('set') + keyRegexp + \ - self.keywordToken('to') + valueRegexp + self.keywordToken('for') + slnConfigRegexp + rb = RegexpBuilder() + regexpSource = rb.startsWith('inside') + self.filePathRegexp + rb.keywordToken('set') + keyRegexp + \ + rb.keywordToken('to') + valueRegexp + rb.keywordToken('for') + slnConfigRegexp regexp = re.compile(regexpSource, re.UNICODE) match = regexp.match(line) diff --git a/scripts/TouchinBuild/parsers/InsideParser/InsideParserBase.py b/scripts/TouchinBuild/parsers/InsideParser/InsideParserBase.py index 9515110..fe138ea 100644 --- a/scripts/TouchinBuild/parsers/InsideParser/InsideParserBase.py +++ b/scripts/TouchinBuild/parsers/InsideParser/InsideParserBase.py @@ -2,9 +2,7 @@ import abc from parsers.LineParser import LineParser -class InsideParserBase(object, LineParser): - __metaclass__ = abc.ABCMeta - +class InsideParserBase(LineParser): def __init__(self, fileExt): LineParser.__init__(self) diff --git a/scripts/TouchinBuild/parsers/InsideParser/InsideSetArrayParser.py b/scripts/TouchinBuild/parsers/InsideParser/InsideSetArrayParser.py index d0de972..e133719 100644 --- a/scripts/TouchinBuild/parsers/InsideParser/InsideSetArrayParser.py +++ b/scripts/TouchinBuild/parsers/InsideParser/InsideSetArrayParser.py @@ -1,5 +1,6 @@ import re from parsers.InsideParser.InsideParserBase import InsideParserBase +from parsers.RegexpBuilder import RegexpBuilder class InsideSetArrayParser(InsideParserBase): @@ -25,8 +26,9 @@ class InsideSetArrayParser(InsideParserBase): keyRegexp = r'(?P[a-zA-Z]+)' valueRegexp = r"'(?P[^']+)'$" - regexpSource = self.startsWith('inside') + self.filePathRegexp + self.keywordToken('set') + keyRegexp + \ - self.keywordToken('with') + self.than('values') + valueRegexp + rb = RegexpBuilder() + regexpSource = rb.startsWith('inside') + self.filePathRegexp + rb.keywordToken('set') + keyRegexp + \ + rb.keywordToken('with') + rb.than('values') + valueRegexp regexp = re.compile(regexpSource, re.UNICODE) match = regexp.match(line) diff --git a/scripts/TouchinBuild/parsers/InstallProfileParser.py b/scripts/TouchinBuild/parsers/InstallProfileParser.py index c7e227c..85c8b89 100644 --- a/scripts/TouchinBuild/parsers/InstallProfileParser.py +++ b/scripts/TouchinBuild/parsers/InstallProfileParser.py @@ -1,5 +1,6 @@ import re from parsers.LineParser import LineParser +from parsers.RegexpBuilder import RegexpBuilder class InstallProfileParser(LineParser): @@ -9,8 +10,9 @@ class InstallProfileParser(LineParser): def parseLine(self, line): assert line is not None + rb = RegexpBuilder() profilePathRegexp = r"'(?P[^']+)'$" - regexpSource = self.startsWith('install') + self.than('profile') + profilePathRegexp + regexpSource = rb.startsWith('install') + rb.than('profile') + profilePathRegexp regexp = re.compile(regexpSource, re.UNICODE) @@ -18,4 +20,13 @@ class InstallProfileParser(LineParser): self._guardMatch(match, line, regexpSource) srcPath = match.group('path') - return srcPath \ No newline at end of file + return srcPath + + def isValidLine(self, line): + rb = RegexpBuilder() + + regexpSource = rb.startsWith('install') + rb.than('profile') + regexp = re.compile(regexpSource, re.UNICODE) + + match = regexp.match(line) + return match is not None diff --git a/scripts/TouchinBuild/utils/IncludeProcessor.py b/scripts/TouchinBuild/utils/IncludeProcessor.py index 4f16fc9..8357997 100644 --- a/scripts/TouchinBuild/utils/IncludeProcessor.py +++ b/scripts/TouchinBuild/utils/IncludeProcessor.py @@ -3,9 +3,9 @@ from parsers.LineParser import LineParser from parsers.RegexpBuilder import RegexpBuilder -class IncludeProcessor(LineParser): +class IncludeProcessor: def __init__(self): - LineParser.__init__(self) + pass def getIncludesInfo(self, text): assert text is not None