utilize yield from

This commit is contained in:
Philip Jenvey 2012-10-01 12:53:43 -07:00
parent 075bbb176f
commit 4993cc0a5b
11 changed files with 18 additions and 36 deletions

View File

@ -606,8 +606,7 @@ class HelpFormatter(object):
pass
else:
self._indent()
for subaction in get_subactions():
yield subaction
yield from get_subactions()
self._dedent()
def _split_lines(self, text, width):

View File

@ -430,8 +430,7 @@ class KeysView(MappingView, Set):
return key in self._mapping
def __iter__(self):
for key in self._mapping:
yield key
yield from self._mapping
KeysView.register(dict_keys)

View File

@ -198,8 +198,7 @@ def as_completed(fs, timeout=None):
waiter = _create_and_install_waiters(fs, _AS_COMPLETED)
try:
for future in finished:
yield future
yield from finished
while pending:
if timeout is None:

View File

@ -922,8 +922,7 @@ class Differ:
else:
raise ValueError('unknown tag %r' % (tag,))
for line in g:
yield line
yield from g
def _dump(self, tag, x, lo, hi):
"""Generate comparison results for a same-tagged range."""
@ -942,8 +941,7 @@ class Differ:
second = self._dump('+', b, blo, bhi)
for g in first, second:
for line in g:
yield line
yield from g
def _fancy_replace(self, a, alo, ahi, b, blo, bhi):
r"""
@ -997,8 +995,7 @@ class Differ:
# no non-identical "pretty close" pair
if eqi is None:
# no identical pair either -- treat it as a straight replace
for line in self._plain_replace(a, alo, ahi, b, blo, bhi):
yield line
yield from self._plain_replace(a, alo, ahi, b, blo, bhi)
return
# no close pair, but an identical pair -- synch up on that
best_i, best_j, best_ratio = eqi, eqj, 1.0
@ -1010,8 +1007,7 @@ class Differ:
# identical
# pump out diffs from before the synch point
for line in self._fancy_helper(a, alo, best_i, b, blo, best_j):
yield line
yield from self._fancy_helper(a, alo, best_i, b, blo, best_j)
# do intraline marking on the synch pair
aelt, belt = a[best_i], b[best_j]
@ -1033,15 +1029,13 @@ class Differ:
btags += ' ' * lb
else:
raise ValueError('unknown tag %r' % (tag,))
for line in self._qformat(aelt, belt, atags, btags):
yield line
yield from self._qformat(aelt, belt, atags, btags)
else:
# the synch pair is identical
yield ' ' + aelt
# pump out diffs from after the synch point
for line in self._fancy_helper(a, best_i+1, ahi, b, best_j+1, bhi):
yield line
yield from self._fancy_helper(a, best_i+1, ahi, b, best_j+1, bhi)
def _fancy_helper(self, a, alo, ahi, b, blo, bhi):
g = []
@ -1053,8 +1047,7 @@ class Differ:
elif blo < bhi:
g = self._dump('+', b, blo, bhi)
for line in g:
yield line
yield from g
def _qformat(self, aline, bline, atags, btags):
r"""

View File

@ -367,8 +367,7 @@ class TokenList(list):
yield (indent + ' !! invalid element in token '
'list: {!r}'.format(token))
else:
for line in token._pp(indent+' '):
yield line
yield from token._pp(indent+' ')
if self.defects:
extra = ' Defects: {}'.format(self.defects)
else:

View File

@ -26,8 +26,7 @@ def walk(self):
yield self
if self.is_multipart():
for subpart in self.get_payload():
for subsubpart in subpart.walk():
yield subsubpart
yield from subpart.walk()
@ -40,8 +39,7 @@ def body_line_iterator(msg, decode=False):
for subpart in msg.walk():
payload = subpart.get_payload(decode=decode)
if isinstance(payload, str):
for line in StringIO(payload):
yield line
yield from StringIO(payload)
def typed_subpart_iterator(msg, maintype='text', subtype=None):

View File

@ -26,8 +26,7 @@ def iglob(pathname):
return
dirname, basename = os.path.split(pathname)
if not dirname:
for name in glob1(None, basename):
yield name
yield from glob1(None, basename)
return
if has_magic(dirname):
dirs = iglob(dirname)

View File

@ -631,8 +631,7 @@ class _singlefileMailbox(Mailbox):
def iterkeys(self):
"""Return an iterator over keys."""
self._lookup()
for key in self._toc.keys():
yield key
yield from self._toc.keys()
def __contains__(self, key):
"""Return True if the keyed message exists, False otherwise."""

View File

@ -121,8 +121,7 @@ def walk_packages(path=None, prefix='', onerror=None):
# don't traverse path items we've seen before
path = [p for p in path if not seen(p)]
for item in walk_packages(path, name+'.', onerror):
yield item
yield from walk_packages(path, name+'.', onerror)
def iter_modules(path=None, prefix=''):

View File

@ -132,8 +132,7 @@ def _iter_chain(exc, custom_tb=None, seen=None):
its.append([(exc, custom_tb or exc.__traceback__)])
# itertools.chain is in an extension module and may be unavailable
for it in its:
for x in it:
yield x
yield from it
def print_exception(etype, value, tb, limit=None, file=None, chain=True):

View File

@ -153,8 +153,7 @@ class WeakValueDictionary(collections.MutableMapping):
"""
with _IterationGuard(self):
for wr in self.data.values():
yield wr
yield from self.data.values()
def values(self):
with _IterationGuard(self):