diff options
author | 2016-03-20 16:29:23 +0200 | |
---|---|---|
committer | 2016-03-21 14:49:06 +0200 | |
commit | 7e7cc8a3f9cfa4b0bda18b50ea79145c6bc2a045 (patch) | |
tree | c74b87de7ba812f1d0ace7d834bcefae73528c0c /scripts/external_libs/pyzmq-14.5.0/python3/cel59/32bit/zmq/backend/__init__.py | |
parent | 14b94326315f1fa46187868dac16503b3f454b9e (diff) |
python 3 - rearrange
Diffstat (limited to 'scripts/external_libs/pyzmq-14.5.0/python3/cel59/32bit/zmq/backend/__init__.py')
-rw-r--r-- | scripts/external_libs/pyzmq-14.5.0/python3/cel59/32bit/zmq/backend/__init__.py | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/scripts/external_libs/pyzmq-14.5.0/python3/cel59/32bit/zmq/backend/__init__.py b/scripts/external_libs/pyzmq-14.5.0/python3/cel59/32bit/zmq/backend/__init__.py new file mode 100644 index 00000000..7cac725c --- /dev/null +++ b/scripts/external_libs/pyzmq-14.5.0/python3/cel59/32bit/zmq/backend/__init__.py @@ -0,0 +1,45 @@ +"""Import basic exposure of libzmq C API as a backend""" + +# Copyright (C) PyZMQ Developers +# Distributed under the terms of the Modified BSD License. + + +import os +import platform +import sys + +from zmq.utils.sixcerpt import reraise + +from .select import public_api, select_backend + +if 'PYZMQ_BACKEND' in os.environ: + backend = os.environ['PYZMQ_BACKEND'] + if backend in ('cython', 'cffi'): + backend = 'zmq.backend.%s' % backend + _ns = select_backend(backend) +else: + # default to cython, fallback to cffi + # (reverse on PyPy) + if platform.python_implementation() == 'PyPy': + first, second = ('zmq.backend.cffi', 'zmq.backend.cython') + else: + first, second = ('zmq.backend.cython', 'zmq.backend.cffi') + + try: + _ns = select_backend(first) + except Exception: + exc_info = sys.exc_info() + exc = exc_info[1] + try: + _ns = select_backend(second) + except ImportError: + # prevent 'During handling of the above exception...' on py3 + # can't use `raise ... from` on Python 2 + if hasattr(exc, '__cause__'): + exc.__cause__ = None + # raise the *first* error, not the fallback + reraise(*exc_info) + +globals().update(_ns) + +__all__ = public_api |