File: //usr/local/CyberPanel/lib64/python3.10/site-packages/h11/__pycache__/_headers.cpython-310.pyc
o
��h�( � @ s� d dl Z d dlmZmZmZmZmZmZmZm Z ddl
mZmZ ddl
mZmZmZ er2ddlmZ zd dlmZ W n eyI d dlmZ Y nw dZe �d �Ze �e�d
��Ze �e�d
��ZG dd� deeeef �Ze eeeef eeeef eeeef eeeef f Zed
eded defdd��Z ed
eded defdd��Z e d!d
e eef de!defdd��Z d!d
e eef de!defdd�Z d
ededee fdd�Z"d
ededee defdd�Z#ddde!fdd �Z$dS )"� N)�AnyStr�cast�List�overload�Sequence�Tuple�
TYPE_CHECKING�Union� )�
field_name�field_value)�bytesify�LocalProtocolError�validate)�Request)�Literal� s [0-9]+�asciic @ s� e Zd ZdZdZdeeeeef ddfdd�Zde fdd �Z
d
ede fdd�Zde
fd
d�Zdefdd�Zde
deeef fdd�Zdeeeef fdd�ZdS )�Headersa�
A list-like interface that allows iterating over headers as byte-pairs
of (lowercased-name, value).
Internally we actually store the representation as three-tuples,
including both the raw original casing, in order to preserve casing
over-the-wire, and the lowercased name, for case-insensitive comparisions.
r = Request(
method="GET",
target="/",
headers=[("Host", "example.org"), ("Connection", "keep-alive")],
http_version="1.1",
)
assert r.headers == [
(b"host", b"example.org"),
(b"connection", b"keep-alive")
]
assert r.headers.raw_items() == [
(b"Host", b"example.org"),
(b"Connection", b"keep-alive")
]
�_full_items�
full_items�returnNc C s
|| _ d S �N�r )�selfr � r �B/usr/local/CyberPanel/lib/python3.10/site-packages/h11/_headers.py�__init__h �
zHeaders.__init__c C �
t | j�S r )�boolr �r r r r �__bool__k r zHeaders.__bool__�otherc C s t | �t |�kS r )�list)r r# r r r �__eq__n � zHeaders.__eq__c C r r )�lenr r! r r r �__len__q r zHeaders.__len__c C s dt t| �� S )Nz
<Headers(%s)>)�reprr$ r! r r r �__repr__t r&