
    ^hD                         S r  SSKJr  SSKrSSKJrJr  SSK	J
r
  SSK	Jr  S	 rS
 rS rS/rg! \ a	    SSKJr   N3f = f)zzmq poll function    )	monotonic)clockN)InterruptedSystemCall	_check_rc   )ffi)libc                     U R                   n[        R                  " S5      nX#l        SUl        Xl        SUl        US   $ Nzzmq_pollitem_t*r   )_zmq_socketr   newsocketfdeventsrevents)r   flags
zmq_socketzmq_pollitems       P/home/james-whalen/.local/lib/python3.13/site-packages/zmq/backend/cffi/_poll.py_make_zmq_pollitemr      sA    ##J77,-L$LOL?    c                     [         R                  " S5      n[         R                  Ul        Xl        Xl        SUl        US   $ r   )r   r   NULLr   r   r   r   )	socket_fdr   r   s      r   _make_zmq_pollitem_fromfdr      s:    77,-L((LOL?r   c                 R   / n0 nSSK Jn  U  H  n[        US   U5      (       a4  XSUS   R                  '   UR	                  [        US   US   5      5        MK  [        US   [        5      (       d  US   R                  5       US   4nXSUS   '   UR	                  [        US   US   5      5        M     [        R                  " SU5      n[        R                  " S[        U5      5      n [        R                  " SU5      n[        5       n	[        R                  " XgU5      n
 [!        U
5         / nU H  nUR,                  S:  d  M  UR.                  [        R0                  :w  a.  UR	                  X5R.                     S   UR,                  45        Ma  UR	                  UR2                  UR,                  45        M     U$ ! ["         aY    US:  aN  [        S[        5       U	-
  -  5      nUS:  a!  [$        R&                  " SU S	3[(        5        Sn[+        SX-
  5      n GM:  f = f)
Nr   )Socketr   zzmq_pollitem_t[]intlongi  z,Negative elapsed time for interrupted poll: z.  Did the clock change?)zmqr   
isinstancer   appendr   r   filenor   r   r   castlenr   Czmq_pollr   r   warningswarnRuntimeWarningmaxr   r   r   r   )socketstimeoutcffi_pollitem_listlow_level_to_socket_objr   itemitemslist_length	c_timeoutstartrc	ms_passedresults                r   r'   r'   &   s    d1gv&&;?DG$7$78%%&8a$q'&JKd1gs++Q($q'2/3DG,%%&?Qa&QR  GG&(:;E((5#&8"9:K
HHVW-	ZZI6	bM  F<<!{{chh&/<Q? tww56  M9 % 	{	e(; <=	q= MMFyk R2 2&
 !"Ia!45	s   %G AH&%H&r'   )__doc__timer   ImportErrorr   r(   	zmq.errorr   r   _cffir   r	   r&   r   r   r'   __all__ r   r   <module>r?      sL    
(  6  3l ,i  ('(s   / >>