Gentoo Archives: gentoo-commits

From: "André Erdmann" <dywi@×××××××.de>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/R_overlay:master commit in: roverlay/depres/simpledeprule/
Date: Tue, 27 Aug 2013 15:40:08
Message-Id: 1377617385.18ea92d1aeffa20e0f333fb0d187017a98cbfd67.dywi@gentoo
1 commit: 18ea92d1aeffa20e0f333fb0d187017a98cbfd67
2 Author: André Erdmann <dywi <AT> mailerd <DOT> de>
3 AuthorDate: Tue Aug 27 15:29:45 2013 +0000
4 Commit: André Erdmann <dywi <AT> mailerd <DOT> de>
5 CommitDate: Tue Aug 27 15:29:45 2013 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/R_overlay.git;a=commit;h=18ea92d1
7
8 dep rule parser: '#! ERROR' statement
9
10 lets the dep parser raise an exception, which causes roverlay to exit.
11
12 ---
13 roverlay/depres/simpledeprule/rulemaker.py | 8 +++++++-
14 1 file changed, 7 insertions(+), 1 deletion(-)
15
16 diff --git a/roverlay/depres/simpledeprule/rulemaker.py b/roverlay/depres/simpledeprule/rulemaker.py
17 index 1edbdb9..f58f96b 100644
18 --- a/roverlay/depres/simpledeprule/rulemaker.py
19 +++ b/roverlay/depres/simpledeprule/rulemaker.py
20 @@ -25,7 +25,8 @@ from roverlay.depres.simpledeprule.pool import SimpleDependencyRulePool
21
22 class SimpleRuleMaker ( roverlay.util.mapreader.MapFileParser ):
23
24 - breakparse = set (( '! NOPARSE', '! BREAK' ))
25 + breakparse = frozenset ({ '! NOPARSE', '! BREAK' })
26 + kw_error = frozenset ({ '! ERROR', })
27
28 def __init__ ( self, rule_separator=None ):
29 super ( SimpleRuleMaker, self ).__init__()
30 @@ -181,6 +182,11 @@ class SimpleRuleMaker ( roverlay.util.mapreader.MapFileParser ):
31 elif line in self.breakparse:
32 self.stop_reading = True
33
34 + elif line in self.kw_error:
35 + self.stop_reading = True
36 + raise Exception ( "#! ERROR" )
37 + return False
38 +
39 # else is a "real" comment
40 return True
41 # --- end of handle_comment_line (...) ---