L i(ddlZddlmZmZmZmZmZmZmZm Z ddl m Z m Z ddl mZmZmZerddlmZ ddlmZdZej.d Zej.e j2d Zej.e j2d ZGd d eeeefZe eeeefeeeefeeeefeeeeffZed ededdefdZ ed ededdefdZ e dd e eefde!defdZ dd e eefde!defdZ d ededeefdZ"d ededeedefdZ#ddde!fdZ$y#e$r ddlmZYwxYw)N)AnyStrcastListoverloadSequenceTuple TYPE_CHECKINGUnion) field_name field_value)bytesifyLocalProtocolErrorvalidate)Request)Literals[0-9]+asciiceZdZdZdZdeeeeefddfdZde fdZ de de fd Z de fd Zdefd Zd e deeeffd ZdeeeeffdZy)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_itemsreturnNc||_yNr)selfrs R/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/h11/_headers.py__init__zHeaders.__init__hs %c,t|jSr)boolrrs r__bool__zHeaders.__bool__ksD$$%%r otherc0t|t|k(Sr)list)rr%s r__eq__zHeaders.__eq__nsDzT%[((r c,t|jSr)lenrr#s r__len__zHeaders.__len__qs4##$$r c0dtt|zS)Nz )reprr'r#s r__repr__zHeaders.__repr__tsd4j!111r idxc0|j|\}}}||fSrr)rr/_namevalues r __getitem__zHeaders.__getitem__ws"))#.4e}r cX|jDcgc] \}}}||f c}}}Scc}}}wrr)rraw_namer1r3s r raw_itemszHeaders.raw_items{s+<@DUOE ^T+Et L _e-H% P$&&&%'''zz| $ $49KK4EF&v||~FGF7|q ()MNNKKME '0D E5z55()=>>"*&+#""HdE#:;$-()MNN ) ) %(8C KKME "(B&)%) !   $6 7   $6 7_/8` ; CGsF&r2cg}|jD]V\}}}||k(s |j}|jdD]&}|j}|s|j |(X|S)NrK)rrPrQrRrV)rBr2outr1 found_namefound_raw_valuefound_split_values rget_comma_headerras}HC*1*=*=2&:  -335O%4%:%:4%@ 2!$5$;$;$=!$JJ01 22 Jr new_valuescg}|jD]\}}}||k7s |j||f!|D]#}|j|j|f%t|Sr)rrVtitlerF)rBr2rbrWfound_raw_namer^r_ new_values rset_comma_headerrgsw.0K7>7J7JB3 O     @ AB 6 DJJL)456 !+ ..r requestrcV|jdkryt|jd}d|vS)Ns1.1Fsexpects 100-continue) http_versionrarB)rhexpects rhas_expect_100_continuerls0f$ gooy 9F f $$r )F)%retypingrrrrrrr r _abnfr r _utilrrr_eventsrr ImportErrortyping_extensionsrUcompilerTencoderMrNr=rr@ HeaderTypesrFr"rargrlrAr rrws" VVV*99 *r RZZ +-J--g67"**/[//89/NhuUE\*+/Ndue| ucz sEz sCx  Ggdm  K'%.W  :? 7K' (37  ;@6 7K' (6 376  6 r,g,U,tE{,^/g/U/U /PW/&%Y%4%O*))*sD>> E  E