asyncio: Add asyncio.compat module

Move compatibility helpers for the different Python versions to a new
asyncio.compat module.
This commit is contained in:
Victor Stinner 2015-07-25 02:23:21 +02:00
parent f05b79dbd2
commit 71080fc351
8 changed files with 35 additions and 30 deletions

17
Lib/asyncio/compat.py Normal file
View file

@ -0,0 +1,17 @@
"""Compatibility helpers for the different Python versions."""
import sys
PY34 = sys.version_info >= (3, 4)
PY35 = sys.version_info >= (3, 5)
def flatten_list_bytes(list_of_data):
"""Concatenate a sequence of bytes-like objects."""
if not PY34:
# On Python 3.3 and older, bytes.join() doesn't handle
# memoryview.
list_of_data = (
bytes(data) if isinstance(data, memoryview) else data
for data in list_of_data)
return b''.join(list_of_data)