
    ͑i                       % S SK Jr  S SKrS SKJrJrJr  S SKJrJ	r	  S SK
Jr  SSKJr  \\\\   S4   rS\S	'   SS
 jr " S S5      r " S S5      r\	 SSSSS.             SS jjj5       r\	SSSS.             SS jj5       r SSSSS.             SS jjjr SSSSS.         SS jjjrg)    )annotationsN)CallableIterableSequence)Unionoverload)	TypeAlias   )PYTHON_OP_REGISTRYr	   _DeviceTypesc                F    [         R                  " SU  SU S3[        SS9  g )NzThe feature 'z' in function 'zA' is not implemented in PaddlePaddle's custom operator interface.   )
stacklevel)warningswarnUserWarning)featurefn_names     N/var/www/html/banglarbhumi/venv/lib/python3.13/site-packages/paddle/library.py'warn_about_unimplemented_torch_featuresr       s'    MM
yy8yz    c                      \ rS rSrSrg)Tag(    N)__name__
__module____qualname____firstlineno____static_attributes__r   r   r   r   r   (   s    3r   r   c                  j    \ rS rSr S           S	S jjr\S
S j5       rS
S jr    SS jrSr	g)CustomOpDef+   Nc                V    Xl         X l        X0l        X@l        Ub  XPl        g / U l        g N)
_namespace_name_schema_fn_tags)self	namespacenameschemafntagss         r   __init__CustomOpDef.__init__,   s(     $
!-T
2
r   c                8    U R                    SU R                   3$ )N::)r&   r'   r+   s    r   	_qualnameCustomOpDef._qualname:   s    //""TZZL11r   c                "    SU R                    S3$ )Nz<CustomOpDef(z)>)r6   r5   s    r   __repr__CustomOpDef.__repr__>   s    t~~.b11r   c                   [        SS5        U$ )Nregister_fakeztorch.library.CustomOpDefr   )r+   r/   s     r   r<   CustomOpDef.register_fakeA   s     	08	
 	r   )r)   r'   r&   r(   r*   r%   )r,   strr-   r?   r.   r?   r/   r   r0   Sequence[Tag] | NonereturnNone)rA   r?   )r/   Callable[..., object]rA   rC   )
r   r   r   r   r1   propertyr6   r9   r<   r    r   r   r   r"   r"   +   st     &*66 6 	6
 6 #6 
6 2 22'	r   r"   )device_typesr.   r0   c                  g r%   r   r-   r/   mutates_argsrE   r.   r0   s         r   	custom_oprI   J   s     69r   c                  g r%   r   rG   s         r   rI   rI   W   s     r   c                 ^ ^^^^ U(       a  [        SS5        T(       a  [        SS5        T(       a  [        SS5        ST ;   d   S5       eT R                  SS5      u  mmS	U UUUU4S jjnUc  U$ U" U5      $ )
NrE   ztorch.library.custom_opr.   r0   r4   zZThe custom operator name should be qualified with a namespace, like 'my_namespace::my_op'.r
   c                V   > [         R                  " TU 5        [        TTTb  TOSU TS9$ )N )r,   r-   r.   r/   r0   )r   registerr"   )r/   r-   r,   op_namer.   r0   s    r   innercustom_op.<locals>.inner   s6    ##D"-#/6R
 	
r   )r/   rC   rA   r"   )r   split)	r-   r/   rH   rE   r.   r0   rP   r,   rO   s	   `   `` @@r   rI   rI   d   s     /5	
 //	
 /-	
 4< 	&< D!,Iw
 
 
z9r   F)lib_stacklevelallow_overridec              :    [        SS5        S nUc  U$ U" U5      $ )Nr<   ztorch.library.register_fakec                    U $ r%   r   )funcs    r   rN   register_fake.<locals>.register   s    r   r=   )oprX   rS   rT   rU   rN   s         r   r<   r<      s-     ,6 |~r   )r   r?   r   r?   rA   rB   r%   )r-   r?   r/   rB   rH   str | Iterable[str]rE   r   r.   
str | Noner0   r@   rA   z.Callable[[Callable[..., object]], CustomOpDef])r-   r?   r/   rC   rH   r[   rE   r   r.   r\   r0   r@   rA   r"   )r-   r?   r/   Callable[..., object] | NonerH   r[   rE   r   r.   r\   r0   r@   rA   z<Callable[[Callable[..., object]], CustomOpDef] | CustomOpDef)
rZ   zstr | CustomOpDefrX   r]   rS   rB   rT   intrU   bool)
__future__r   r   collections.abcr   r   r   typingr   r   typing_extensionsr	   _opsr   r?   r   __annotations__r   r   r"   rI   r<   r   r   r   <module>rf      s  & #  8 8 " ' $Xc]D 89i 9  > 
 	9 "&!%	9
	9	9
 &	9 	9 	9 	9 4	9 
	9 
 "&!%	
		
 &	 	 	 	 	 
	 (,) "&!%)
)$)
 &) ) ) ) B)\ *.
  
&
 
  r   