@classmethod
	def iterate_pruned_item_dependencies(cls, requirements, item, seen=None):
		if seen is None: seen = set()
		if item in seen: raise StopIteration
		seen.add(item)
		filtereddeps = ifilter(lambda i: unbound(i.predicate)(requirements), item.depends)
		for dep in filtereddeps:
			for cdep in cls.iterate_pruned_item_dependencies(requirements,dep,seen):
				yield cdep
		yield item
return an ordered list of dependencies for an item such that an items dependencies are before it in the list
dataset/ETHPy150Open anchor/make-magic/core/deptools.py/SimpleDependencyStrategy.iterate_pruned_item_dependencies