aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Lib/asyncio/transports.py
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2015-07-25 02:23:21 +0200
committerVictor Stinner <victor.stinner@gmail.com>2015-07-25 02:23:21 +0200
commit71080fc3518e2d3555f555340c3e93f3b108a5b8 (patch)
tree5125e65a9293873cf5d307dd5de1d093de74ea8a /Lib/asyncio/transports.py
parentf05b79dbd286f6723ee717c31766c97551e4e34d (diff)
downloadcpython-71080fc3518e2d3555f555340c3e93f3b108a5b8.tar.gz
cpython-71080fc3518e2d3555f555340c3e93f3b108a5b8.zip
asyncio: Add asyncio.compat module
Move compatibility helpers for the different Python versions to a new asyncio.compat module.
Diffstat (limited to 'Lib/asyncio/transports.py')
-rw-r--r--Lib/asyncio/transports.py10
1 files changed, 3 insertions, 7 deletions
diff --git a/Lib/asyncio/transports.py b/Lib/asyncio/transports.py
index 22df3c7aede..7a28d908e43 100644
--- a/Lib/asyncio/transports.py
+++ b/Lib/asyncio/transports.py
@@ -2,7 +2,7 @@
import sys
-_PY34 = sys.version_info >= (3, 4)
+from asyncio import compat
__all__ = ['BaseTransport', 'ReadTransport', 'WriteTransport',
'Transport', 'DatagramTransport', 'SubprocessTransport',
@@ -94,12 +94,8 @@ class WriteTransport(BaseTransport):
The default implementation concatenates the arguments and
calls write() on the result.
"""
- if not _PY34:
- # In Python 3.3, bytes.join() doesn't handle memoryview.
- list_of_data = (
- bytes(data) if isinstance(data, memoryview) else data
- for data in list_of_data)
- self.write(b''.join(list_of_data))
+ data = compat.flatten_list_bytes(list_of_data)
+ self.write(data)
def write_eof(self):
"""Close the write end after flushing buffered data.