o
    bi                     @   sZ   d dl Z d dlZd dlmZ d dlZe Ze jdddkZ	dd Z
dd	 Zd
d ZdS )    NwrapsRAY_ENABLE_AUTO_CONNECT 0c                   C   s^   t r+t s-t t st  W d    d S W d    d S 1 s$w   Y  d S d S d S N)enable_auto_connectrayis_initializedauto_init_lockinit r   r   O/home/ubuntu/.local/lib/python3.10/site-packages/ray/_private/auto_init_hook.pyauto_init_ray   s   
"r   c                    s   t   fdd}|S )Nc                     s   t    | i |S r   )r   )argskwargsfnr   r   auto_init_wrapper   s   z)wrap_auto_init.<locals>.auto_init_wrapperr   )r   r   r   r   r   wrap_auto_init   s   r   c                 C   s:   | D ]}t t|d}|dusJ |tt|t| qdS )z)Wrap public APIs with automatic ray.init.N)getattrr	   setattrr   )	api_namesapi_nameapir   r   r   wrap_auto_init_for_all_apis   s
   r   )os	threading	functoolsr   r	   Lockr   environgetr   r   r   r   r   r   r   r   <module>   s    	