o
    -wi                     @   sL   d dl mZmZmZ d dlZG dd dZ	d
dedee defdd	ZdS )    )AnyCallableOptionalNc                   @   sx   e Zd Zddedee ddfddZdeddfdd	Zded
edefddZded
edefddZ	dedefddZ
dS )PreInitObjectNnamedestinationreturnc                 C   s   || _ |d ur|j| _d S d S N)_name__doc__)selfr   r    r   R/home/ubuntu/sommelier/.venv/lib/python3.10/site-packages/wandb/sdk/lib/preinit.py__init__   s   zPreInitObject.__init__keyc                 C      t d| j d|dN"You must call wandb.init() before []wandbErrorr
   r   r   r   r   r   __getitem__      zPreInitObject.__getitem__valuec                 C   r   r   r   r   r   r   r   r   r   __setitem__   r   zPreInitObject.__setitem__c                 C   s0   | dstd| j d| t| ||S N_r   .)
startswithr   r   r
   object__setattr__r   r   r   r   r$      s   
zPreInitObject.__setattr__c                 C   s&   | dstd| j d| tr   )r"   r   r   r
   AttributeErrorr   r   r   r   __getattr__   s   
zPreInitObject.__getattr__r	   )__name__
__module____qualname__strr   r   r   r   r   r$   r&   r   r   r   r   r      s    r   r   r   r   c                    s:   dt dt dt f fdd}t |_|r||_|j|_|S )Nargskwargsr   c                     s   t d  d)Nr   z())r   r   )r+   r,   r   r   r   preinit_wrapper#   s   z(PreInitCallable.<locals>.preinit_wrapper)r   r*   r'   __wrapped__r   )r   r   r.   r   r-   r   PreInitCallable    s   
r0   r	   )typingr   r   r   r   r   r*   r0   r   r   r   r   <module>   s    