1 |
commit: 5a5de449586726eaa99a807781552753659d32c1 |
2 |
Author: André Erdmann <dywi <AT> mailerd <DOT> de> |
3 |
AuthorDate: Wed Jan 30 20:02:30 2013 +0000 |
4 |
Commit: André Erdmann <dywi <AT> mailerd <DOT> de> |
5 |
CommitDate: Wed Jan 30 20:02:30 2013 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/R_overlay.git;a=commit;h=5a5de449 |
7 |
|
8 |
ebuild/ebuilder: has(<name>), get_names() |
9 |
|
10 |
Added helper functions that can be used to add an evar only if it does not |
11 |
already exist (etc.). |
12 |
|
13 |
--- |
14 |
roverlay/ebuild/ebuilder.py | 20 ++++++++++++++++++++ |
15 |
1 files changed, 20 insertions(+), 0 deletions(-) |
16 |
|
17 |
diff --git a/roverlay/ebuild/ebuilder.py b/roverlay/ebuild/ebuilder.py |
18 |
index 2032d25..fb15e18 100644 |
19 |
--- a/roverlay/ebuild/ebuilder.py |
20 |
+++ b/roverlay/ebuild/ebuilder.py |
21 |
@@ -16,6 +16,7 @@ class Ebuilder ( object ): |
22 |
"""Used to create ebuilds.""" |
23 |
|
24 |
def __init__ ( self ): |
25 |
+ # or use dict() to speed up has(<>) calls |
26 |
self._evars = list() |
27 |
# newlines \n will be inserted after an evar if the priority |
28 |
# delta (current evar, next evar) is >= this value. |
29 |
@@ -60,3 +61,22 @@ class Ebuilder ( object ): |
30 |
""" |
31 |
for e in evar_list: |
32 |
if e is not None: self._evars.append ( e ) |
33 |
+ # --- end of use (...) --- |
34 |
+ |
35 |
+ def has ( self, evar_name ): |
36 |
+ """Returns True if an evar with name evar_name exists. |
37 |
+ |
38 |
+ arguments: |
39 |
+ * evar_name -- |
40 |
+ """ |
41 |
+ for e in self._evars: |
42 |
+ if e.name == evar_name: |
43 |
+ return True |
44 |
+ return False |
45 |
+ # --- end of has (...) --- |
46 |
+ |
47 |
+ def get_names ( self ): |
48 |
+ """Yields all evar names.""" |
49 |
+ for e in self._evars: |
50 |
+ yield e.name |
51 |
+ # --- end of get_names (...) --- |