
    !ni7                         d dl Z d dlZd dlmZmZ d dlmZ  ej                  d      Z ej                  d      Z	d Z
 G d dej                        Zy)	    N)patchersupport)hubselecttimec                  "    t        t        d      S )Npoll)hasattrr        R/home/homepc/tiktok-worker/venv/lib/python3.12/site-packages/eventlet/hubs/poll.pyis_availabler   
   s    66""r   c                   T     e Zd Zd fd	Z fdZ fdZd	dZ fdZd ZddZ	 xZ
S )
Hubc                    t         |   |       t        j                  t        j                  z  | _        t        j                  t        j                  z  | _        t        j                  | _
        t        j                         | _        y N)super__init__r   POLLERRPOLLHUPEXC_MASKPOLLINPOLLPRI	READ_MASKPOLLOUT
WRITE_MASKr	   )selfclock	__class__s     r   r   zHub.__init__   sP    77 ..KKM	r   c                 T    t         |   |||||      }| j                  |d       |S )NT)new)r   addregister)r   evtypefilenocbtbmaclistenerr   s          r   r"   zHub.add   s.    7;vvr2s;f$'r   c                 Z    t         |   |       | j                  |j                         y r   )r   remover#   r%   )r   r)   r   s     r   r+   z
Hub.remove   s    x hoo&r   c                    d}| j                   | j                     j                  |      r|| j                  | j                  z  z  }| j                   | j
                     j                  |      r|| j                  | j                  z  z  }	 |r=|r| j                  j                  ||       y 	 | j                  j                  ||       y 	 | j                  j                  |       y # t        $ r | j                  j                  ||       Y y w xY w# t        t        f$ r Y y w xY w# t        $ r | j                  |        w xY w)Nr   )	listenersREADgetr   r   WRITEr   r	   r#   modifyOSError
unregisterKeyError
ValueErrorremove_descriptor)r   r%   r!   masks       r   r#   zHub.register   s   >>$))$((0DNNT]]22D>>$**%))&1DOOdmm33D	II&&vt49		((6II((0	 # 9		**6489
 !'*    	""6*	sH    D( .C( D (%DD( DD( D%"D( $D%%D( (Ec                     t         |   |       	 | j                  j                  |       y # t        t
        t        f$ r Y y w xY wr   )r   r6   r	   r3   r4   r5   r2   )r   r%   r   s     r   r6   zHub.remove_descriptor:   sB    !&)	II  (*g. 	 	s   . AAc                 P    | j                   j                  t        |dz              S )Ng     @@)r	   int)r   secondss     r   do_pollzHub.do_pollC   s    yy~~c'F"2344r   c                 f   | j                   | j                     }| j                   | j                     }|s|s|rt        j	                  |       y 	 | j                  |      }| j                  }| j                  r| j                          t               }t        j                   }|D ]  \  }	}
|
| j"                  z  r#|j%                  |j'                  |	|      |	f       |
| j(                  z  r#|j%                  |j'                  |	|      |	f       |
t*        j,                  z  r| j/                  |	       |
| j0                  z  s|j%                  |j'                  |	|      |	f       |j%                  |j'                  |	|      |	f        |D ]  \  }}		 |j3                  |	        | j                  r| j;                          y y # t        $ r1}t        j                  |      t        j                  k(  rY d }~y  d }~ww xY w# |$ r   | j5                  |	t7        j8                                Y xY wr   )r-   r.   r0   r   sleepr<   r2   r   	get_errnoerrnoEINTRSYSTEM_EXCEPTIONSdebug_blockingblock_detect_presetr   noopr   r"   r/   r   r   POLLNVALr6   r   r&   squelch_exceptionsysexc_infoblock_detect_post)r   r;   readerswriterspresulterB   	callbacksrF   r%   eventr)   s               r   waitzHub.waitG   s   ..+..,w

7#	ll7+G
 !22!!# E	xx$ 
	CMFEt~~%w{{648&ABt&w{{648&ABv&&&v.t}}$w{{648&ABw{{648&AB
	C !* 	?Hf?F#	? ""$ I  	  #u{{2	> % ?&&vs||~>s*   G H	H &G;:G;;H +H0r   )F)__name__
__module____qualname__r   r"   r+   r#   r6   r<   rR   __classcell__)r   s   @r   r   r      s&    "
'65/%r   r   )r@   rI   eventletr   r   eventlet.hubsr   originalr   r   r   BaseHubr   r   r   r   <module>r[      sL     
 % 			(	#w#h%#++ h%r   