From 52daa3dd5b5924952861a4da21c1dc61ee7c7673 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Thu, 22 Jan 2009 22:26:49 +0000 Subject: Add an ignore_priority parameter to digraph.parent_nodes(). svn path=/main/trunk/; revision=12551 --- pym/portage/__init__.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py index a3acb91d1..5dbb982ab 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 -- cgit v1.2.3-1-g7c22