o
    Cji%                     @  sf   d dl mZ d dlmZmZ d dlmZmZmZm	Z	 d dl
mZmZ edZG dd dee eZdS )	    )annotations)ABCabstractmethod)GenericTypeVarIterablecast)ClassVaroverrideTc                   @  s   e Zd ZU dZdZded< d#ddZd$ddZed%ddZ	ed%ddZ
ed&ddZeed'ddZd(ddZd)ddZd(ddZed(d d!Zd"S )*	LazyProxyzImplements data methods to pretend that an instance is another instance.

    This includes forwarding attribute access and othe methods.
    FzClassVar[bool]should_cachereturnNonec                 C  s
   d | _ d S N_LazyProxy__proxiedself r   k/var/www/html/Resume-Parser/resume-parser-inhouse/venv/lib/python3.10/site-packages/openai/_utils/_proxy.py__init__      
zLazyProxy.__init__attrstrobjectc                 C  s   t |  |S r   )getattr__get_proxied__)r   r   r   r   r   __getattr__   s   zLazyProxy.__getattr__c                 C     t |  S r   )reprr   r   r   r   r   __repr__      zLazyProxy.__repr__c                 C  r   r   )r   r   r   r   r   r   __str__   r"   zLazyProxy.__str__Iterable[str]c                 C  s   |    S r   )r   __dir__r   r   r   r   r%       r"   zLazyProxy.__dir__typec                 C  s
   |   jS r   )r   	__class__r   r   r   r   r'   $   s   
zLazyProxy.__class__r   c                 C  s2   | j s|  S | j}|d ur|S |   | _}|S r   )r   __load__r   )r   proxiedr   r   r   r   )   s   zLazyProxy.__get_proxied__valuec                 C  s
   || _ d S r   r   )r   r*   r   r   r   __set_proxied__4   r   zLazyProxy.__set_proxied__c                 C  s
   t t| S )zHHelper method that returns the current proxy, typed as the loaded object)r   r   r   r   r   r   __as_proxied__7   s   
zLazyProxy.__as_proxied__c                 C  s   d S r   r   r   r   r   r   r(   ;   s   zLazyProxy.__load__N)r   r   )r   r   r   r   )r   r   )r   r$   )r   r&   )r   r   )r*   r   r   r   )__name__
__module____qualname____doc__r   __annotations__r   r   r
   r!   r#   r%   propertyr'   r   r+   r,   r   r(   r   r   r   r   r   
   s&   
 




r   N)
__future__r   abcr   r   typingr   r   r   r   typing_extensionsr	   r
   r   r   r   r   r   r   <module>   s    