
    S j                        S SK Jr  S SKJr  S SKJrJrJrJrJ	r	J
r
JrJrJr  S SKJrJrJrJrJrJr  \" S\" S\	" \" \5      5      S9\" S\" \R*                  5      SSS9SS	9r\" S
\" S
\" \5      S9\" S
\" \R.                  5      SSS9SS	9r\" S\" S\	" \" \5      5      S9\" S\" \R*                  5      SSS9SS	9r\" S\" S\" \5      S9\" S\" \R4                  5      SSS9SS	9r\" S\" S\" \5      S9\" S\" \R.                  5      SSS9SS	9r\" SS5      r\" S\" S\" \5      S9\" S\" \R.                  5      SSS9SS	9rSSS jjrSS.         SS jjr SS jr!SS jr"S S jr#S!S jr$S!S jr%S"S#S jjr&S$S jr'g)%    )annotations)
dispatcher)	BaseCppType	BaseCTypeBindingboolTConstRefCTypeCTypelongT
NamedCTypetensorT)ArgumentBaseTyBaseTypeFunctionSchemaNativeFunctionNativeFunctionsViewGroupbase)nametypeN)r   r   default
annotation)r   nctypeargumentr   has_symbolic_inputsmutated_view	out_indexreapply_viewszat::functionalizationInverseReturnModeinverse_return_modec                V    U(       a  SOSnU U R                   R                  5        S3$ )Nzat::functionalization:: 	_ViewMeta)r   unambiguous_name)funcwith_namespace	namespaces      o/root/GenerationalWealth/GenerationalWealth/venv/lib/python3.13/site-packages/torchgen/api/functionalization.py	classnamer)   _   s+    -;)I[3356i@@    )r   c                  Uc  U(       d  [        S5      eU(       a  [        U R                  U5      $ U(       d  [        S5      eU R                  c  [        S5      eU(       a.  U R                  R                  R
                  R                  5       O-U R                  R                  R
                  R                  5       nSU S3$ )Nz*reapply_views can only be None for reversez*include_namespace must be True for forwardz&view_copy must be non-None for forwardz
at::_ops::z::call)AssertionErrorreverse_nameview	view_copyr%   r   r$   )g
is_reverseinclude_namespacer   api_names        r(   r   r   e   s       !MNNAFF$566IJJ{{EFF  	
))+[[""335 
 z((r*   c                n    U R                   R                  R                  5       nU(       a  SU S3$ U S3$ )Nz+at::functionalization::FunctionalInverses::_inverse)r%   r   r$   )fr2   r3   s      r(   r-   r-      s9     vv{{++-H<XJhOO8$$r*   c                    [        U R                  5      S:  a  [        S5      eU R                   H:  nUR                  R	                  5       (       a  M$  [        SUR                   35      e   [        [        5      $ )N   z"Expected at least one return valuez&Expected tensor-like return type, got )lenreturnsr,   r   is_tensor_liker   r   )r%   rets     r(   returns_typer=      sd    
4<<1ABB||xx&&(( #I#((!TUU 
 Wr*   c                    [        U R                  5      S:  =(       dH    [        U R                  5      S:H  =(       a)    U R                  S   R                  R                  5       S L$ )Nr8   r   )r9   r:   r   is_list_liker%   s    r(   is_multi_outputrA      sO    t||q  DLLQR4<<?#7#7#D#D#Fd#Rr*   c                ^    [         /n[        U 5      (       a  UR                  [        5        U$ )N)has_symbolic_inputs_bindingrA   appendout_index_binding)r%   	argumentss     r(   base_ctor_argumentsrG      s,    ,-I t*+r*   c                    [        U SS9$ )NF)owning)
attributesr@   s    r(   extra_ctor_argumentsrK      s    d5))r*   c           	     *   U R                   R                  nUS   R                  [        [        R
                  5      :w  a  [        SUS   R                   35      e[        [        /USS   Vs/ s H  n[        R                  " X1S9PM     snQ$ s  snf )Nr   %Expected first arg to be Tensor, got r8   )remove_non_owning_ref_types)rF   flat_allr   r   r   Tensorr,   reapply_views_bindinginverse_return_mode_bindingr   r   )r%   rI   argsas       r(   rJ   rJ      s    >>""DAw||x..DT!W\\NSTT# OSSTSUh	Wh*

a
Dh	W  
Xs   .Bc                   U R                   R                  nUS   R                  [        [        R
                  5      :w  a  [        SUS   R                   35      eUSS  nU Vs/ s H  n[        R                  " U5      PM     nnU(       d
  [        /U-   $ [        U 5      (       a  [        [        [        [        /U-   $ [        [        [        /U-   $ s  snf )Nr   rM   r8   )rF   rO   r   r   r   rP   r,   r   r   base_bindingrA   mutated_view_bindingrR   rE   )r%   r1   rS   non_self_argsrT   non_self_bindingss         r(   op_argumentsrZ      s    >>""DAw||x..DT!W\\NSTTHM :GGA,,Q/G~ 111
 4  $+!	
 "" " $+ "	" "! Hs   % C)F)r%   r   r&   boolreturnstr)
r0   r   r1   r[   r2   r[   r   zbool | Noner\   r]   )r6   r   r2   r[   r\   r]   )r%   r   r\   r
   )r%   r   r\   r[   )r%   r   r\   list[Binding])T)r%   r   rI   r[   r\   r^   )r%   r   r1   r[   r\   r^   )(
__future__r   torchgen.apir   torchgen.api.typesr   r   r   r   r	   r
   r   r   r   torchgen.modelr   r   r   r   r   r   rP   rV   r[   rC   rW   intrE   rQ   InverseReturnModeTrR   r)   r   r-   r=   rA   rG   rK   rJ   rZ    r*   r(   <module>rf      s   " #
 
 
 & 	6i6H(IJ(6==14D  &	0y7GH"fkk"	 
  	>i>P0QR(6==14D   	;Yu-=>x

3Td    	?51AB8FKK#8$SW   !!8:MN %	0yAS7TU"fkk"  A "&)) ) 	)
 ) 	)6	%		 *"r*   