reader.py 1.0 KB

12345678910111213141516171819202122232425262728293031
  1. """Reader for WebSocket protocol versions 13 and 8."""
  2. from typing import TYPE_CHECKING
  3. from ..helpers import NO_EXTENSIONS
  4. if TYPE_CHECKING or NO_EXTENSIONS: # pragma: no cover
  5. from .reader_py import (
  6. WebSocketDataQueue as WebSocketDataQueuePython,
  7. WebSocketReader as WebSocketReaderPython,
  8. )
  9. WebSocketReader = WebSocketReaderPython
  10. WebSocketDataQueue = WebSocketDataQueuePython
  11. else:
  12. try:
  13. from .reader_c import ( # type: ignore[import-not-found]
  14. WebSocketDataQueue as WebSocketDataQueueCython,
  15. WebSocketReader as WebSocketReaderCython,
  16. )
  17. WebSocketReader = WebSocketReaderCython
  18. WebSocketDataQueue = WebSocketDataQueueCython
  19. except ImportError: # pragma: no cover
  20. from .reader_py import (
  21. WebSocketDataQueue as WebSocketDataQueuePython,
  22. WebSocketReader as WebSocketReaderPython,
  23. )
  24. WebSocketReader = WebSocketReaderPython
  25. WebSocketDataQueue = WebSocketDataQueuePython