move nested_lookup into a module

modified:   README.rst
	new file:   nested_lookup/__init__.py
	renamed:    nested_lookup.py -> nested_lookup/nested_lookup.py
	modified:   setup.py
This commit is contained in:
russellballestrini 2015-12-02 17:16:21 -05:00
parent 564f55a507
commit 825f5ff28f
4 changed files with 3 additions and 2 deletions

View file

@ -1,25 +0,0 @@
from six import iteritems
def nested_lookup(key, document):
"""Lookup a key in a nested document, return a list of values"""
return list(_nested_lookup(key, document))
def _nested_lookup(key, document):
"""Lookup a key in a nested document, yield a value"""
if isinstance(document, list):
for d in document:
for result in _nested_lookup(key, d):
yield result
if isinstance(document, dict):
for k, v in iteritems(document):
if k == key:
yield v
elif isinstance(v, dict):
for result in _nested_lookup(key, v):
yield result
elif isinstance(v, list):
for d in v:
for result in _nested_lookup(key, d):
yield result