
    Vh                    >    d Z ddlmZ ddlZddlmZ  G d de      Zy)5Source provider for content which has been installed.    )annotationsN   )SourceProviderc                  .    e Zd ZdZdZedd       ZddZy)InstalledSourcer   r   c                     y)zBReturn True if the given path is a content root for this provider.F )paths    `/home/dcms/DCMS/lib/python3.12/site-packages/ansible_test/_internal/provider/source/installed.pyis_content_rootzInstalledSource.is_content_root   s         c           
     d   g }d}t        j                  |      D ]  \  }}}t         j                  j                  ||      }|dk(  rd}|j	                  |D cg c]F  }t         j                  j                  |      d   |vr t         j                  j                  ||      H c}        |S c c}w )z@Return the list of available content paths under the given path.)z.pycz.pyo. r   )oswalkr   relpathextendsplitextjoin)	selfr   pathskill_extensionsroot_dummy
file_namesrel_root	file_names	            r   	get_pathszInstalledSource.get_paths   s    

 )+ 	U$D&*wwtT2H3LLZ T	!#!1!1)!<Q!??!R '',,x; T U	U Ts   AB-
N)r   strreturnbool)r   r!   r"   z	list[str])__name__
__module____qualname____doc__sequencestaticmethodr   r    r
   r   r   r   r      s!    ?H r   r   )r'   
__future__r   r   r   r   r   r
   r   r   <module>r+      s    ; " 	
n r   