
    bIg7                       d dl mZ g dZd dlmc mZ d dlmZm	Z	 dZ
dZdZej                  Zej                  Zej                   Zej"                  Zej$                  ZddZdd	Zed
        Zej.                  Zee_        ed        Zeej4                  _        ddZee_        ddZeej>                  _        ddZ e ejB                  _        ddZ"e"ej4                  _        ddZ#ejH                  Z$ddZ%y)    )annotations)CONNX_DOMAINONNX_ML_DOMAINAI_ONNX_PREVIEW_TRAINING_DOMAINhasregister_schemaderegister_schema
get_schemaget_all_schemasget_all_schemas_with_historyonnx_opset_versionget_function_opsOpSchemaSchemaErrorN)AttributeProtoFunctionProto z
ai.onnx.mlzai.onnx.preview.trainingc                 >    t        j                         t           d   S )z*Return current opset for domain `ai.onnx`.   )r   schema_version_mapr        O/var/www/html/answerous/venv/lib/python3.12/site-packages/onnx/defs/__init__.pyr   r   '   s    !+.q11r   c                 >    t        j                         t           d   S )z-Return current opset for domain `ai.onnx.ml`.r   )r   r   r   r   r   r   onnx_ml_opset_versionr   ,   s    !.1!44r   c                P    t               }|j                  | j                         |S N)r   ParseFromString_function_body)self
func_protos     r   _function_protor#   1   s#    Jt223r   c                P    t               }|j                  | j                         |S r   )r   r   _default_value)r!   attrs     r   _attribute_default_valuer'   <   s#    D,,-Kr   c                    d| j                   d| j                  d| j                  d| j                  d| j                  d| j
                  d| j                  d| j                  d	S )
NzOpSchema(
    name=z,
    domain=z,
    since_version=z
,
    doc=z,
    type_constraints=z,
    inputs=z,
    outputs=z,
    attributes=z
))namedomainsince_versiondoctype_constraintsinputsoutputs
attributesr!   s    r   _op_schema_reprr2   F   s    

)) KK? %%( )		 ++. /KK? \\ " #
 
r   c                    d| j                   d| j                  d| j                  d| j                  d| j                  d| j
                  d| j                  dS )	NzOpSchema.FormalParameter(name=z, type_str=, description=z, param_option=z, is_homogeneous=z, min_arity=z, differentiation_category=))r)   type_strdescriptionoptionis_homogeneous	min_aritydifferentiation_categoryr1   s    r    _op_schema_formal_parameter_reprr<   W   sp    
([@Q R''*/$++ I--0T^^<N O$$($A$A#DA	Gr   c                V    d| j                   d| j                  d| j                  dS )Nz,OpSchema.TypeConstraintParam(type_param_str=z, allowed_type_strs=r4   r5   )type_param_strallowed_type_strsr7   r1   s    r   %_op_schema_type_constraint_param_reprr@   c   s=    
6t7J7J6M N!336nTEUEUDXXY	[r   c                    d| j                   d| j                  d| j                  d| j                  d| j                  dS )NzOpSchema.Attribute(name=z, type=r4   z, default_value=z, required=r5   )r)   typer7   default_valuerequiredr1   s    r   _op_schema_attribute_reprrE   m   sO    
"499-wtyym>RVRbRbQe f++.k$--9J!	Mr   c                     t        j                         } | D cg c]  }|j                  s|j                  s| c}S c c}w )z&Return operators defined as functions.)r   r   has_functionhas_context_dependent_function)schemasschemas     r   r   r   w   s4    !G!(ivF,?,?6ChChFiiis   >>c                H   t        j                         }| j                  }| j                  }|j	                  |||f      \  }}||vs||cxk  r|k  s;n t        ||      }t        ||      }t        j                  | j                  ||       t        j                  |        y)zRegister a user provided OpSchema.

    The function extends available operator set versions for the provided domain if necessary.

    Args:
        schema: The OpSchema to register.
    N)	r   r   r*   r+   getminmaxset_domain_to_versionr	   )rJ   version_mapr*   versionmin_versionmax_versions         r   r	   r	      s     &&(K]]F""G*v7IJK[ )N;)N+w/+w/	{KHfr   )returnint)rT   str)rT   zlist[OpSchema])rJ   r   rT   None)&
__future__r   __all__onnx.onnx_cpp2py_export.defsonnx_cpp2py_exportdefsr   onnxr   r   r   r   r   
has_schemar   r   r   r   r
   r   r   propertyr#   r   function_bodyr'   	AttributerC   r2   __repr__r<   FormalParameterr@   TypeConstraintParamrE   r   r   r	   r   r   r   <module>re      s   #$ ) ( ."<  ll\\
## == '' 2
5
 
 
 ::(  
 
 $<     $  %E   ! )N   % 8   j mmr   