zmc
2023-12-22 9fdbf60165db0400c2e8e6be2dc6e88138ac719a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
U
Z±d…ã@s¨ddlZddlmZddlmZddlmZmZddlm    Z    m
Z
ddl m Z m Z mZmZejdksjerjt‚d    ZGd
d „d ƒZGd d „d ee
dZGdd„dee
dZdS)éN)Ú TYPE_CHECKINGé)Ú_core)Ú
SendStreamÚ ReceiveStream)ÚConflictDetectorÚFinal)Ú_handleÚraise_winerrorÚkernel32ÚffiÚwin32ic@s8eZdZeddœdd„Zedd„ƒZdd„Zd    d
„ZdS) Ú _HandleHolderN©ÚhandleÚreturncCs.d|_t|tƒstdƒ‚||_t |j¡dS)Néÿÿÿÿzhandle must be an int)rÚ
isinstanceÚintÚ    TypeErrorrZregister_with_iocp©Úselfr©rúJd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\trio/_windows_pipes.pyÚ__init__s
 
z_HandleHolder.__init__cCs
|jdkS©Nr)r©rrrrÚclosedsz_HandleHolder.closedcCs.|jr
dS|j}d|_t t|ƒ¡s*tƒdSr)rrr Ú CloseHandler    r
rrrrÚcloses z_HandleHolder.closecCs | ¡dS©N)rrrrrÚ__del__$sz_HandleHolder.__del__)    Ú__name__Ú
__module__Ú __qualname__rrÚpropertyrrr!rrrrrs
 
rc@sLeZdZdZeddœdd„Zedœdd„Zdd    œd
d „Zd d „Z    dd„Z
dS)ÚPipeSendStreamzdRepresents a send stream over a Windows named pipe that has been
    opened in OVERLAPPED mode.
    NrcCst|ƒ|_tdƒ|_dS©Nz)another task is currently using this pipe©rÚ_handle_holderrÚ_conflict_detectorrrrrr-s
ÿzPipeSendStream.__init__)Údatac Ãsž|jŽ|jjrt d¡‚|s:t ¡IdHW5QR£dSzt |jj|¡IdH}Wn*tk
r~}z tj    |‚W5d}~XYnX|t
|ƒkst ‚W5QRXdS)Núthis pipe is already closed) r*r)rrÚClosedResourceErrorÚ
checkpointZwrite_overlappedrÚBrokenPipeErrorZBrokenResourceErrorÚlenÚAssertionError)rr+ZwrittenÚexrrrÚsend_all3s
zPipeSendStream.send_all©rc    Ãs6|j&|jjrt d¡‚t ¡IdHW5QRXdS)NzThis pipe is already closed)r*r)rrr-r.rrrrÚwait_send_all_might_not_blockEs
z,PipeSendStream.wait_send_all_might_not_blockcCs|j ¡dSr ©r)rrrrrrMszPipeSendStream.closecÃs| ¡t ¡IdHdSr ©rrr.rrrrÚaclosePszPipeSendStream.aclose) r"r#r$Ú__doc__rrÚbytesr3r5rr8rrrrr&(s r&)Ú    metaclassc@s@eZdZdZeddœdd„Zd edœdd„Zd    d
„Zd d „Z    dS)ÚPipeReceiveStreamz3Represents a receive stream over an os.pipe object.NrcCst|ƒ|_tdƒ|_dSr'r(rrrrrXs
ÿzPipeReceiveStream.__init__r4c
ÃsØ|jÈ|jjrt d¡‚|dkr(t}n"t|tƒs:tdƒ‚|dkrJt    dƒ‚t
|ƒ}zt  |jj |¡IdH}WnBt k
r®|jjrt d¡d‚t ¡IdHYW5QR£dSX||d…=|W5QR£SW5QRXdS)Nr,zmax_bytes must be integer >= 1rzanother task closed this pipeó)r*r)rrr-ÚDEFAULT_RECEIVE_SIZErrrÚ
ValueErrorÚ    bytearrayZreadinto_overlappedrr/r.)rZ    max_bytesÚbufferÚsizerrrÚ receive_some^s4
 
ÿÿþ 
zPipeReceiveStream.receive_somecCs|j ¡dSr r6rrrrr…szPipeReceiveStream.closecÃs| ¡t ¡IdHdSr r7rrrrr8ˆszPipeReceiveStream.aclose)N)
r"r#r$r9rrr:rCrr8rrrrr<Us
'r<)ÚsysÚtypingrÚrÚ_abcrrZ_utilrrZ_core._windows_cffir    r
r r Úplatformr1r>rr&r<rrrrÚ<module>s  -