From: Zac Medico Date: Thu, 22 Jan 2009 22:26:49 +0000 (-0000) Subject: Add an ignore_priority parameter to digraph.parent_nodes(). X-Git-Tag: v2.2_rc24~246 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=52daa3dd5b5924952861a4da21c1dc61ee7c7673;p=portage.git Add an ignore_priority parameter to digraph.parent_nodes(). svn path=/main/trunk/; revision=12551 --- 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