summaryrefslogtreecommitdiff
path: root/Lib/json
diff options
context:
space:
mode:
authorPhilip Jenvey <pjenvey@underboss.org>2012-10-01 15:34:31 -0700
committerPhilip Jenvey <pjenvey@underboss.org>2012-10-01 15:34:31 -0700
commit1b1b69e8ae410a99109c76f87f646603445ed2a9 (patch)
tree4635003aba53707de408adb7bcf124b6372813bf /Lib/json
parent3a854f4d1124698c90036893e252e7c24e2eec19 (diff)
downloadcpython-1b1b69e8ae410a99109c76f87f646603445ed2a9.tar.gz
more yield from
patch by Serhiy Storchaka
Diffstat (limited to 'Lib/json')
-rw-r--r--Lib/json/encoder.py15
1 files changed, 5 insertions, 10 deletions
diff --git a/Lib/json/encoder.py b/Lib/json/encoder.py
index 75b7f494b3..ba57c2c25e 100644
--- a/Lib/json/encoder.py
+++ b/Lib/json/encoder.py
@@ -305,8 +305,7 @@ def _make_iterencode(markers, _default, _encoder, _indent, _floatstr,
chunks = _iterencode_dict(value, _current_indent_level)
else:
chunks = _iterencode(value, _current_indent_level)
- for chunk in chunks:
- yield chunk
+ yield from chunks
if newline_indent is not None:
_current_indent_level -= 1
yield '\n' + _indent * _current_indent_level
@@ -381,8 +380,7 @@ def _make_iterencode(markers, _default, _encoder, _indent, _floatstr,
chunks = _iterencode_dict(value, _current_indent_level)
else:
chunks = _iterencode(value, _current_indent_level)
- for chunk in chunks:
- yield chunk
+ yield from chunks
if newline_indent is not None:
_current_indent_level -= 1
yield '\n' + _indent * _current_indent_level
@@ -404,11 +402,9 @@ def _make_iterencode(markers, _default, _encoder, _indent, _floatstr,
elif isinstance(o, float):
yield _floatstr(o)
elif isinstance(o, (list, tuple)):
- for chunk in _iterencode_list(o, _current_indent_level):
- yield chunk
+ yield from _iterencode_list(o, _current_indent_level)
elif isinstance(o, dict):
- for chunk in _iterencode_dict(o, _current_indent_level):
- yield chunk
+ yield from _iterencode_dict(o, _current_indent_level)
else:
if markers is not None:
markerid = id(o)
@@ -416,8 +412,7 @@ def _make_iterencode(markers, _default, _encoder, _indent, _floatstr,
raise ValueError("Circular reference detected")
markers[markerid] = o
o = _default(o)
- for chunk in _iterencode(o, _current_indent_level):
- yield chunk
+ yield from _iterencode(o, _current_indent_level)
if markers is not None:
del markers[markerid]
return _iterencode