← Back
Editing: permessage_deflate.cpython-311.pyc
� �=Xc�` � �& � d dl mZ d dlZd dlZd dlmZmZmZmZm Z m Z mZ ddlm Z mZ ddlmZmZ ddlmZmZmZ g d �Zd Zd� edd � � D � � Z G d� de� � Zd*d�Zd+d�Z G d� d e� � Zd,d$�Z G d%� d&e� � Zd-d)�ZdS ).� )�annotationsN)�Any�Dict�List�Optional�Sequence�Tuple�Union� )� exceptions�frames)� ExtensionName�ExtensionParameter� )�ClientExtensionFactory� Extension�ServerExtensionFactory)�PerMessageDeflate�ClientPerMessageDeflateFactory� enable_client_permessage_deflate�ServerPerMessageDeflateFactory� enable_server_permessage_deflates ��c �, � g | ]}t |� � ��S � )�str)�.0�bitss �J/usr/lib/python3/dist-packages/websockets/extensions/permessage_deflate.py� <listcomp>r s � �>�>�>��3�t�9�9�>�>�>� � � c �R � e Zd ZdZ ed� � Z ddd�Zdd�Zdd�dd�Zdd�Z dS )r z) Per-Message Deflate extension. �permessage-deflateN�remote_no_context_takeover�bool�local_no_context_takeover�remote_max_window_bits�int�local_max_window_bits�compress_settings�Optional[Dict[Any, Any]]�return�Nonec �l � |�i }|dv sJ �|dv sJ �d|cxk rdk sn J �d|cxk rdk sn J �d|vsJ �|| _ || _ || _ || _ || _ | j s t j | j �� � | _ | j s#t j dd| j i| j ��| _ d| _ dS ) z? Configure the Per-Message Deflate extension. N)FTr! � �wbits�r1 Fr )r% r'