a Y@s:ddlmZmZmZmZd ddZd ddZd ddZdS) ) HAS_SELECTDefaultSelector EVENT_READ EVENT_WRITENcsts tdt|ts0t|dr(|g}nt|}t>}|D]}||q<fdd||DWdS1sz0YdS)z Waits for IO events to be available from a list of sockets or optionally a single socket if passed in. Returns a list of sockets that can be interacted with immediately. z!Platform does not have a selectorfilenocs"g|]}|d@r|djqS)r)fileobj).0keyeventsJ/Users/ymaher/Downloads/lambdas_org/requests/packages/urllib3/util/wait.py s z'_wait_for_io_events..N)r ValueError isinstancelisthasattrrregisterselect)socksr timeoutselectorsockr r r_wait_for_io_events s   rcCs t|t|S)z Waits for reading to be available from a list of sockets or optionally a single socket if passed in. Returns a list of sockets that can be read from immediately. )rrrrr r r wait_for_readsrcCs t|t|S)z Waits for writing to be available from a list of sockets or optionally a single socket if passed in. Returns a list of sockets that can be written to immediately. )rrrr r rwait_for_write$sr)N)N)N) selectorsrrrrrrrr r r rs