mirror of
https://github.com/python/cpython
synced 2024-09-22 13:23:43 +00:00
body_line_iterator(): Accept optional decode argument, pass through to
Message.get_payload().
This commit is contained in:
parent
52b39f5b47
commit
12dc230c00
|
@ -37,11 +37,14 @@ def _isstring(obj):
|
|||
|
||||
# These two functions are imported into the Iterators.py interface module.
|
||||
# The Python 2.2 version uses generators for efficiency.
|
||||
def body_line_iterator(msg):
|
||||
"""Iterate over the parts, returning string payloads line-by-line."""
|
||||
def body_line_iterator(msg, decode=False):
|
||||
"""Iterate over the parts, returning string payloads line-by-line.
|
||||
|
||||
Optional decode (default False) is passed through to .get_payload().
|
||||
"""
|
||||
lines = []
|
||||
for subpart in msg.walk():
|
||||
payload = subpart.get_payload()
|
||||
payload = subpart.get_payload(decode=decode)
|
||||
if _isstring(payload):
|
||||
for line in StringIO(payload).readlines():
|
||||
lines.append(line)
|
||||
|
|
|
@ -38,10 +38,13 @@ def _isstring(obj):
|
|||
|
||||
# These two functions are imported into the Iterators.py interface module.
|
||||
# The Python 2.2 version uses generators for efficiency.
|
||||
def body_line_iterator(msg):
|
||||
"""Iterate over the parts, returning string payloads line-by-line."""
|
||||
def body_line_iterator(msg, decode=False):
|
||||
"""Iterate over the parts, returning string payloads line-by-line.
|
||||
|
||||
Optional decode (default False) is passed through to .get_payload().
|
||||
"""
|
||||
for subpart in msg.walk():
|
||||
payload = subpart.get_payload()
|
||||
payload = subpart.get_payload(decode=decode)
|
||||
if _isstring(payload):
|
||||
for line in StringIO(payload):
|
||||
yield line
|
||||
|
|
Loading…
Reference in a new issue