U
    ‰d¯  ã                   @   sx   d dl mZ d dlZd dlZddlmZ dd„ Zdd„ Zeeje	 ƒ e
ƒ Zeejeƒ eeƒD ]Ze ej	e¡ q`dS )	é    )Úimport_moduleNé   )Úlayersc                 C   sF   | j }| j}t |¡D ]*\}}}d ||¡}t|ƒ}|rt|ƒ qdS )z?
    Takes a package and imports all modules underneath it
    z{}.{}N)Ú__path__Ú__name__ÚpkgutilÚiter_modulesÚformatr   Úimport_recursive)ÚpackageZpkg_dirZmodule_locationZ_module_loaderÚnameÚispkgÚmodule_nameÚmodule© r   úA/tmp/pip-unpacked-wheel-ua33x9lu/caffe2/python/layers/__init__.pyr
      s    r
   c                 C   s*   |   ¡ }| |¡ |D ]}t||ƒ qd S )N)Ú__subclasses__ÚupdateÚfind_subclasses_recursively)Zbase_clsZsub_clsZcur_sub_clsÚclsr   r   r   r      s    
r   )Ú	importlibr   r   ÚsysÚ r   r
   r   Úmodulesr   ÚsetZmodel_layer_subclsZ
ModelLayerÚlistr   Zregister_layerr   r   r   r   Ú<module>   s   