
    ?g                    L    S r SSKJr  SSKrSSKJr  SS jr S     S	S jjrg)
zLProvides a function to report all internal modules for using freezing
tools.    )annotationsN)Iteratorc                 6    SSK n [        [        U 5      5      nU$ )zRReturn a list of module names used by pytest that should be
included by cx_freeze.r   N)_pytestlist_iter_all_modules)r   results     8/usr/lib/python3/dist-packages/_pytest/freeze_support.pyfreeze_includesr   
   s     #G,-FM    c              #  F  #    SSK nSSKn[        U [        5      (       a  U nOU R                  nUS   U R
                  S-   pUR                  U/5       HH  u  pgnU(       a5  [        UR                  R                  XG5      US-   S9 H	  n	X-   v   M     MB  X-   v   MJ     g7f)zIterate over the names of all modules that can be found in the given
package, recursively.

    >>> import _pytest
    >>> list(_iter_all_modules(_pytest))
    ['_pytest._argcomplete', '_pytest._code.code', ...]
r   N.)prefix)
ospkgutil
isinstancestr__path____name__iter_modulesr   pathjoin)
packager   r   r   r   package_path_name
is_packagems
             r
   r   r      s      '3 ''#A(8(83(>f&33TF;&rww||D'?s
Sj  T -  <s   BB!)returnz	list[str]) )r   zstr | types.ModuleTyper   r   r   zIterator[str])__doc__
__future__r   typestypingr   r   r    r   r
   <module>r&      s>   
 #    #    r   