# ----------------------------------------------------------------------------- # Copyright (C) 2011-2012 Travis Cline # # This file is part of pyzmq # It is adapted from upstream project zeromq_gevent under the New BSD License # # Distributed under the terms of the New BSD License. The full license is in # the file LICENSE.BSD, distributed as part of this software. # ----------------------------------------------------------------------------- """zmq.green - gevent compatibility with zeromq. Usage ----- Instead of importing zmq directly, do so in the following manner: .. import zmq.green as zmq Any calls that would have blocked the current thread will now only block the current green thread. This compatibility is accomplished by ensuring the nonblocking flag is set before any blocking operation and the ØMQ file descriptor is polled internally to trigger needed events. """ from __future__ import annotations from typing import List import zmq as _zmq from zmq import * from zmq.green.core import _Context, _Socket from zmq.green.poll import _Poller Context = _Context # type: ignore Socket = _Socket # type: ignore Poller = _Poller # type: ignore from zmq.green.device import device # type: ignore __all__: list[str] = [] # adding `__all__` to __init__.pyi gets mypy all confused __all__.extend(_zmq.__all__) # type: ignore