o
    ;g{                     @   sv   d dl mZmZmZ d dlZd dlZd dlZd dlZddl	m
Z
 eh dZeh dZddddddeefd	d
ZdS )    )absolute_importprint_functiondivisionN   )sysinfo>   zgevent.libuv.watcherzgevent.libevzgevent.libev.watcherzgevent.resolver.dnspythonzgevent.resolver.areszgevent.libuv.loopzgevent.resolver_ares>   Z	_corecfficore__init__ZcorecffiZ_utilZ_corecffi_buildZ
_semaphoreZaresFTc                 c   s   t jrd}| du rtjtj} |du rd}n|du rd}tt| D ]}tj	| |}	tj
|	rm|s7q%|s>|dv r>q%tj	|	d}
tj|
rl|
|| fV  t|	|| d ||||||dD ]	\}}||fV  qbq%|d	r|dd
 }|dr|dd }||v rq%|| }|r||v rz!t  tdt t| W d   n1 sw   Y  W n ty   ddlm} |d| Y q%w |	|fV  q%|r|t jrd|v rq%|dr|	||dd  fV  q%|	||dd
  fV  q%dS )a  
    Find gevent modules, yielding tuples of ``(path, importable_module_name)``.

    :keyword bool check_optional: If true (the default), then if we discover a
       module that is known to be optional on this system (such as a backend),
       we will attempt to import it; if the import fails, it will not be returned.
       If false, then we will not make such an attempt, the caller will need to be prepared
       for an `ImportError`; the caller can examine *optional_modules* against
       the yielded *importable_module_name*.
    FNzgevent. )Ztestingtestsz__init__.py.)
include_so	recursivecheck_optionalinclude_testsoptional_modulesexcluded_modulesz.py_dignorer   )utilz#Unable to import optional module %sz.pypy-z_d.so)r   ZPYPYospathdirnamegevent__file__sortedlistdirjoinisdirexistswalk_modulesendswithwarningscatch_warningssimplefilterDeprecationWarning	importlibimport_moduleImportErrorr	   r   debugZSHARED_OBJECT_EXTENSION)Zbasedirmodpathr   r   r   r   r   r   fnr   Zpkg_initpmxmodnamer    r2   ]/home/www/bk.finsightngr.online/venv20/lib/python3.10/site-packages/gevent/testing/modules.pyr"   =   sv   	



r"   )
__future__r   r   r   r(   os.pathr   r$   r   r	   r   	frozensetZOPTIONAL_MODULESZEXCLUDED_MODULESr"   r2   r2   r2   r3   <module>   s"   