Ë
    òT•j«	  ã                   ó    — d dl Z  G d„ d«      Zy)é    Nc                   ó¸   — e Zd ZdZdZdej
                  fd„Zed„ «       Zed„ «       Z	ed„ «       Z
d„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTransportSocketzïA socket-like wrapper for exposing real transport sockets.

    These objects can be safely returned by APIs like
    `transport.get_extra_info('socket')`.  All potentially disruptive
    operations (like "socket.close()") are banned.
    ©Ú_sockÚsockc                 ó   — || _         y ©Nr   )Úselfr   s     ú%/usr/lib/python3.12/asyncio/trsock.pyÚ__init__zTransportSocket.__init__   s	   € Øˆ�
ó    c                 ó.   — | j                   j                  S r	   )r   Úfamily©r
   s    r   r   zTransportSocket.family   s   € à�z‰z× Ñ Ð r   c                 ó.   — | j                   j                  S r	   )r   Útyper   s    r   r   zTransportSocket.type   s   € à�z‰z�‰Ðr   c                 ó.   — | j                   j                  S r	   )r   Úprotor   s    r   r   zTransportSocket.proto   s   € à�z‰z×ÑÐr   c                 ór  — d| j                  «       › d| j                  ›d| j                  ›d| j                  › �}| j                  «       dk7  r4	 | j	                  «       }|r|› d|› �}	 | j                  «       }|r|› d|› �}|› d�S # t
        j                  $ r Y Œ4w xY w# t
        j                  $ r Y Œ3w xY w)	Nz<asyncio.TransportSocket fd=z	, family=z, type=z, proto=éÿÿÿÿz, laddr=z, raddr=ú>)Úfilenor   r   r   ÚgetsocknameÚsocketÚerrorÚgetpeername)r
   ÚsÚladdrÚraddrs       r   Ú__repr__zTransportSocket.__repr__   s×   € à*¨4¯;©;«=¨/ð :Ø—k‘k�_ G¨D¯I©I¨=ð 9Ø—Z‘Z�Lð"ð 	
ð �;‰;‹=˜BÒðØ×(Ñ(Ó*�ÙØ˜#˜X e WÐ-�AðØ×(Ñ(Ó*�ÙØ˜#˜X e WÐ-�Að ��Aˆwˆøô —<‘<ò Ùðûô —<‘<ò Ùðús$   ÁB Á)B  ÂBÂBÂ B6Â5B6c                 ó   — t        d«      ‚)Nz/Cannot serialize asyncio.TransportSocket object)Ú	TypeErrorr   s    r   Ú__getstate__zTransportSocket.__getstate__5   s   € ÜÐIÓJÐJr   c                 ó6   — | j                   j                  «       S r	   )r   r   r   s    r   r   zTransportSocket.fileno8   s   € Ø�z‰z× Ñ Ó"Ð"r   c                 ó6   — | j                   j                  «       S r	   )r   Údupr   s    r   r&   zTransportSocket.dup;   s   € Ø�z‰z�~‰~ÓÐr   c                 ó6   — | j                   j                  «       S r	   )r   Úget_inheritabler   s    r   r(   zTransportSocket.get_inheritable>   s   € Ø�z‰z×)Ñ)Ó+Ð+r   c                 ó:   — | j                   j                  |«       y r	   )r   Úshutdown)r
   Úhows     r   r*   zTransportSocket.shutdownA   s   € ð 	�
‰
×Ñ˜CÕ r   c                 ó:   —  | j                   j                  |i |¤ŽS r	   )r   Ú
getsockopt©r
   ÚargsÚkwargss      r   r-   zTransportSocket.getsockoptF   s   € Ø$ˆt�z‰z×$Ñ$ dÐ5¨fÑ5Ð5r   c                 ó<   —  | j                   j                  |i |¤Ž y r	   )r   Ú
setsockoptr.   s      r   r2   zTransportSocket.setsockoptI   s   € Øˆ�
‰
×Ñ˜tÐ. vÓ.r   c                 ó6   — | j                   j                  «       S r	   )r   r   r   s    r   r   zTransportSocket.getpeernameL   ó   € Ø�z‰z×%Ñ%Ó'Ð'r   c                 ó6   — | j                   j                  «       S r	   )r   r   r   s    r   r   zTransportSocket.getsocknameO   r4   r   c                 ó6   — | j                   j                  «       S r	   )r   Úgetsockbynamer   s    r   r7   zTransportSocket.getsockbynameR   s   € Ø�z‰z×'Ñ'Ó)Ð)r   c                 ó$   — |dk(  ry t        d«      ‚)Nr   z<settimeout(): only 0 timeout is allowed on transport sockets©Ú
ValueError)r
   Úvalues     r   Ú
settimeoutzTransportSocket.settimeoutU   s   € Ø�AŠ:ØÜØJóLð 	Lr   c                  ó   — y)Nr   © r   s    r   Ú
gettimeoutzTransportSocket.gettimeout[   s   € Ør   c                 ó   — |sy t        d«      ‚)Nz3setblocking(): transport sockets cannot be blockingr9   )r
   Úflags     r   ÚsetblockingzTransportSocket.setblocking^   s   € ÙØÜØAóCð 	Cr   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú	__slots__r   r   Úpropertyr   r   r   r    r#   r   r&   r(   r*   r-   r2   r   r   r7   r<   r?   rB   r>   r   r   r   r      s£   „ ñð €Ið˜VŸ]™]ó ð ñ!ó ð!ð ñó ðð ñ ó ð òò.Kò#ò ò,ò!ò
6ò/ò(ò(ò*òLòóCr   r   )r   r   r>   r   r   ú<module>rI      s   ðÛ ÷^Cò ^Cr   