o
    pkjp                     @   sB   d Z ddlZddlZddlmZ ddlmZ G dd dejZdS )zACode generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.    N)Any)core_schemac                       sb   e Zd Zejdkr	ddddddd fddZn	dddddd fddZ fd	d
Z  ZS )OpenEnumMeta)      N   )modulequalnametypestartboundaryc          	   	      sj   |d urt  j|g|R ||||||dS zt  j|g|R ||||||dW S  ty4   | Y S w )N)namesr   r	   r
   r   r   super__call__
ValueError)	clsvaluer   r   r	   r
   r   r   values	__class__ \/home/djax/ivt_ai_plugin/venv/lib/python3.10/site-packages/google/genai/_gaos/utils/enums.pyr   "   s:   

zOpenEnumMeta.__call__)r   r	   r
   r   c                   sR   |d urt  j||||||dS zt  j||||||dW S  ty(   | Y S w )N)r   r   r	   r
   r   r   )r   r   r   r   r	   r
   r   r   r   r   r   C   s*   	c                    sJ   t  j| |||fi |}dtdtdtdtjfdd}t|dt| |S )N	cls_inner_source_type_handlerreturnc                    s   dt dt f fdd}dt dt f fdd}d} jD ]}|tu r%d} n|tu r+ nq|r2t nt }tjt|t	|gt|t	|gd	S )
Nvr   c                    s   t |  r| S tj | S N)
isinstanceenumEnumMetar   r   r   r   r   validate_strictj   s   
zSOpenEnumMeta.__new__.<locals>.__get_pydantic_core_schema__.<locals>.validate_strictc                    s6   t |  r| S ztj | W S  ty   |  Y S w r   )r   r    r!   r   r   r"   r#   r   r   validate_laxq   s   
zPOpenEnumMeta.__new__.<locals>.__get_pydantic_core_schema__.<locals>.validate_laxFT)
lax_schemastrict_schema)
r   __mro__intstrr   
int_schema
str_schemalax_or_strict_schemachain_schema no_info_plain_validator_function)r   r   r   r$   r%   is_int_enumbasebase_schemar   r#   r   __get_pydantic_core_schema__f   s,   


	z:OpenEnumMeta.__new__.<locals>.__get_pydantic_core_schema__r3   )r   __new__r   r   
CoreSchemasetattrclassmethod)mcsnamebases	namespacekwargsr   r3   r   r   r   r4   `   s   
/zOpenEnumMeta.__new__r   )__name__
__module____qualname__sysversion_infor   r4   __classcell__r   r   r   r   r      s    

"r   )	__doc__r    r@   typingr   pydantic_corer   r!   r   r   r   r   r   <module>   s   