utils/checkpackagelib: CommentsMenusPackagesOrder: separate comment/if/menu cases

The handling of 'comment...', 'if ...' and 'menu ...' lines have almost
nothing in common, and subsequent patches will give them even less in
common. Therefore, completely separate their handling in top-level
conditions. The only code that gets duplicated in the different branches
is the 'self.initialize_level_elements(text)' call.

Signed-off-by: Jerzy Grzegorek <jerzy.m.grzegorek@gmail.com>
Cc: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Reviewed-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
This commit is contained in:
Jerzy Grzegorek 2019-10-05 14:22:16 +02:00 committed by Arnout Vandecappelle (Essensium/Mind)
parent dd251d68e5
commit 0625899e3b

View file

@ -95,22 +95,22 @@ class CommentsMenusPackagesOrder(_CheckFunction):
source_line = re.match(r'^\s*source ".*/([^/]*)/Config.in(.host)?"', text)
if text.startswith("comment ") or text.startswith("if ") or \
text.startswith("menu "):
if text.startswith("comment "):
if not self.state.endswith("-comment"):
self.state += "-comment"
if text.startswith("comment"):
if not self.state.endswith("-comment"):
self.state += "-comment"
self.initialize_level_elements(text)
elif text.startswith("if") or text.startswith("menu"):
if text.startswith("if"):
self.state += "-if"
elif text.startswith("if "):
self.state += "-if"
elif text.startswith("menu"):
if self.state.endswith("-comment"):
self.state = self.state[:-8]
self.initialize_level_elements(text)
self.state += "-menu"
elif text.startswith("menu "):
if self.state.endswith("-comment"):
self.state = self.state[:-8]
self.state += "-menu"
self.initialize_level_elements(text)