
    ͑i7                       S SK Jr  S SKrS SKrS SKrS SKrS SKrS SKrS SKJ	r	  S SK
JrJrJrJr  S SKJr  S SKr\" S5      r\" S5      rSr\" \S	5      =(       a	    \" \S
5      r\R.                  S 5       rSS jrSS jr " S S5      r\" 5       r " S S\\\4   5      r " S S\R<                  5      r " S S\R<                  5      r \ " 5       r!g)    )annotationsN)cached_property)AnyCallableGenericTypeVar)	ParamSpec_InputT_RetTz
paddle.opsgetdlopenflagssetdlopenflagsc               #    #    [         (       d  Sv   g[        R                  " 5       n [        R                  " U [        R
                  -  5         Sv   [        R                  " U 5        g! [        R                  " U 5        f = f7f)zu
Context manager to set the RTLD_GLOBAL dynamic linker flag while we open a
shared library to load custom operators.
N)_SET_GLOBAL_FLAGSsysr   r   ctypesRTLD_GLOBAL)	old_flagss    K/var/www/html/banglarbhumi/venv/lib/python3.13/site-packages/paddle/_ops.pydl_open_guardr   -   s^      ""$Iy6#5#556&9%9%s   ABA+ B+BBc                .    [         R                  " U 5      $ N)	importlibimport_module)modules    r   r   r   >   s    ""6**    c                    [         R                  R                  U 5      n [        5          [        R
                  " U 5        SSS5        g! , (       d  f       g= f)z.
Load a shared library at the specified path.
N)ospathrealpathr   r   CDLL)r   s    r   load_libraryr!   B   s3     77D!D	D 
s   A


Ac                  8    \ rS rSrS rSS jrS	S jrS
S jrSrg)PythonOpRegistryK   c                    0 U l         g r   	_registryselfs    r   __init__PythonOpRegistry.__init__L   s	    ;=r   c                \    XR                   ;   a  [        SU S35      eX R                   U'   g )N
Operator 'z' is already registered.r'   
ValueError)r)   namefns      r   registerPythonOpRegistry.registerO   s-    >>!z$/GHII!tr   c                    XR                   ;   $ r   r&   r)   r0   s     r   has_operatorPythonOpRegistry.has_operatorT   s    ~~%%r   c                \    XR                   ;  a  [        SU S35      eU R                   U   $ )Nr-   z' is not registered.r.   r5   s     r   get_operatorPythonOpRegistry.get_operatorW   s0    ~~%z$/CDEE~~d##r   r&   N)r0   strr1   Callable[..., object])r0   r;   returnbool)r0   r;   r=   r<   )	__name__
__module____qualname____firstlineno__r*   r2   r6   r9   __static_attributes__ r   r   r#   r#   K   s    >"
&$r   r#   c                  F    \ rS rSrSS jr\S	S j5       rS
S jrSS jrSr	g)OverloadedOpFunction`   c                    Xl         X l        g r   )	namespacer0   )r)   rI   r0   s      r   r*   OverloadedOpFunction.__init__a   s    "	r   c                \   [         R                  U R                   SU R                   35      (       a.  [         R	                  U R                   SU R                   35      $ [
        R                  R                  R                  R                  U R                   SU R                   35      $ )Nz::)
PYTHON_OP_REGISTRYr6   rI   r0   r9   paddlebasecoretorch_compat_get_operationr(   s    r   callable_fn OverloadedOpFunction.callable_fne   s    **dnn-=R		{+KLL%22>>""TYYK0  {{,,;;~~b,
 	
r   c           	     x    US:X  a  U R                   $ [        SU R                   SU R                   SU S35      e)Ndefault'.z' has no attribute ')rR   AttributeErrorrI   r0   r5   s     r   __getattr__ OverloadedOpFunction.__getattr__o   sE    9###q+?vQG
 	
r   c                &    U R                   " U0 UD6$ r   )rR   )r)   argskwargss      r   __call__OverloadedOpFunction.__call__v   s    000r   )r0   rI   N)rI   r;   r0   r;   )r=   Callable[_InputT, _RetT])r0   r;   r=   r`   )r\   z_InputT.argsr]   z_InputT.kwargsr=   r   )
r?   r@   rA   rB   r*   r   rR   rY   r^   rC   rD   r   r   rF   rF   `   s%     
 

1r   rF   c                  2   ^  \ rS rSrU 4S jrSS jrSrU =r$ )OpNameSpacez   c                B   > [         TU ]  [         SU 35        Xl        g )NrW   )superr*   PADDLE_OPS_MODULE_NAMEr0   )r)   r0   	__class__s     r   r*   OpNameSpace.__init__{   s"    231TF;<	r   c                F    US:X  a  [         $ [        U R                  U5      $ )N__file__)rf   rF   r0   r5   s     r   rY   OpNameSpace.__getattr__   s!    :))#DIIt44r   )r0   )r0   r;   r=   zOverloadedOpFunction[..., Any])r?   r@   rA   rB   r*   rY   rC   __classcell__rg   s   @r   rb   rb   z   s    5 5r   rb   c                  B   ^  \ rS rSrSrU 4S jrSS jrS rS rSr	U =r
$ )	PaddleOpsModule   z_ops.pyc                ,   > [         TU ]  [        5        g r   )re   r*   rf   )r)   rg   s    r   r*   PaddleOpsModule.__init__   s    /0r   c                4    [        U5      n[        XU5        U$ r   )rb   setattr)r)   r0   rI   s      r   rY   PaddleOpsModule.__getattr__   s    %	I&r   c                    [        U5      $ r   )r   )r)   r   s     r   r   PaddleOpsModule.import_module   s    V$$r   c                    [        U5      $ r   )r!   )r)   r   s     r   r!   PaddleOpsModule.load_library   s    D!!r   rD   )r0   r;   )r?   r@   rA   rB   rj   r*   rY   r   r!   rC   rl   rm   s   @r   ro   ro      s!    H1%" "r   ro   )r   r;   )r   r;   )"
__future__r   
contextlibr   r   r   r   types	functoolsr   typingr   r   r   r   typing_extensionsr	   rM   r
   r   rf   hasattrr   contextmanagerr   r   r!   r#   rL   rF   
ModuleTyperb   ro   opsrD   r   r   <module>r      s   & #    	 
  % 2 2 ' 
I
%  C!12 w	8 
 & & +$ $$ &' 177E>2 145%"" 5"e&& "& r   