summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2009-03-11 03:24:21 +0000
committerZac Medico <zmedico@gentoo.org>2009-03-11 03:24:21 +0000
commitf606de67b0d84051176dbc5051076102a35327d6 (patch)
treea2c5906d7dad3ba18daa3fa3f1aca74a0c8cdd1e
parent64bcaf117b3a5cfa8d3f8d9e8cbd55c0d8b271ed (diff)
downloadportage-f606de67b0d84051176dbc5051076102a35327d6.tar.gz
portage-f606de67b0d84051176dbc5051076102a35327d6.tar.bz2
portage-f606de67b0d84051176dbc5051076102a35327d6.zip
Add an ignore_priority parameter to digraph.parent_nodes(). (trunk r12551)
svn path=/main/branches/2.1.6/; revision=12837
-rw-r--r--pym/portage/__init__.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py
index 406f15d27..27ba5efbd 100644
--- a/pym/portage/__init__.py
+++ b/pym/portage/__init__.py
@@ -459,16 +459,22 @@ class digraph(object):
def child_nodes(self, node, ignore_priority=None):
"""Return all children of the specified node"""
if ignore_priority is None:
- return self.nodes[node][0].keys()
+ return list(self.nodes[node][0])
children = []
for child, priority in self.nodes[node][0].iteritems():
if priority > ignore_priority:
children.append(child)
return children
- def parent_nodes(self, node):
+ def parent_nodes(self, node, ignore_priority=None):
"""Return all parents of the specified node"""
- return self.nodes[node][1].keys()
+ if ignore_priority is None:
+ return list(self.nodes[node][1])
+ parents = []
+ for parent, priority in self.nodes[node][1].iteritems():
+ if priority > ignore_priority:
+ parents.append(parent)
+ return parents
def leaf_nodes(self, ignore_priority=None):
"""Return all nodes that have no children