diff options
Diffstat (limited to 'pym/gentoolkit/sets.py')
-rw-r--r-- | pym/gentoolkit/sets.py | 73 |
1 files changed, 40 insertions, 33 deletions
diff --git a/pym/gentoolkit/sets.py b/pym/gentoolkit/sets.py index d130603..4fd5ff4 100644 --- a/pym/gentoolkit/sets.py +++ b/pym/gentoolkit/sets.py @@ -4,54 +4,61 @@ """Provides access to Portage sets api""" -__docformat__ = 'epytext' +__docformat__ = "epytext" import portage + try: - # Per commit 25d8427b3b29cbcee97279186983dae818495f8f in portage, - # portage.sets is renamed to portage._sets. - import portage._sets - _sets_available = True - SETPREFIX = portage._sets.SETPREFIX + # Per commit 25d8427b3b29cbcee97279186983dae818495f8f in portage, + # portage.sets is renamed to portage._sets. + import portage._sets + + _sets_available = True + SETPREFIX = portage._sets.SETPREFIX except ImportError: - _sets_available = False - SETPREFIX = "@" + _sets_available = False + SETPREFIX = "@" from gentoolkit import errors from gentoolkit.atom import Atom _set_config = None + + def _init_set_config(): - global _set_config - if _set_config is None: - _set_config = portage._sets.load_default_config( - portage.settings, portage.db[portage.root]) + global _set_config + if _set_config is None: + _set_config = portage._sets.load_default_config( + portage.settings, portage.db[portage.root] + ) + def get_available_sets(): - """Returns all available sets.""" + """Returns all available sets.""" + + if _sets_available: + _init_set_config() + return _set_config.getSets() + return {} - if _sets_available: - _init_set_config() - return _set_config.getSets() - return {} def get_set_atoms(setname): - """Return atoms belonging to the given set - - @type setname: string - @param setname: Name of the set - @rtype list - @return: List of atoms in the given set - """ - - if _sets_available: - _init_set_config() - try: - return set([Atom(str(x)) - for x in _set_config.getSetAtoms(setname)]) - except portage._sets.PackageSetNotFound: - raise errors.GentoolkitSetNotFound(setname) - raise errors.GentoolkitSetNotFound(setname) + """Return atoms belonging to the given set + + @type setname: string + @param setname: Name of the set + @rtype list + @return: List of atoms in the given set + """ + + if _sets_available: + _init_set_config() + try: + return set([Atom(str(x)) for x in _set_config.getSetAtoms(setname)]) + except portage._sets.PackageSetNotFound: + raise errors.GentoolkitSetNotFound(setname) + raise errors.GentoolkitSetNotFound(setname) + # vim: set ts=4 sw=4 tw=79: |