
    Ji                         d Z ddlZddlmZmZmZ ddlmZ ddlmZm	Z	 dZ
ej                  j                  d       Zer	 ddlmZmZmZ ddlmZ ddlmZm	Z	 d	Z
d
 Zyd
 Zy# e$ r Y d
 Zyw xY w)zTThis module is used to switch between C and Python implementations of the
wrappers.
    N   )BoundFunctionWrapperCallableObjectProxyFunctionWrapper)ObjectProxy)PartialCallableObjectProxy_FunctionWrapperBaseFWRAPT_DISABLE_EXTENSIONSTc                      t        | i |S )zCreate a callable object proxy with partial application of the given
    arguments and keywords. This behaves the same as `functools.partial`, but
    implemented using the `ObjectProxy` class to provide better support for
    introspection.
    )r   )argskwargss     a/var/www/html/BankruptcyAI-uat/bankruptcy-ai/venv/lib/python3.12/site-packages/wrapt/__wrapt__.pypartialr   &   s     &t6v66    )__doc__oswrappersr   r   r   r   BaseObjectProxyr   r	   _using_c_extensionenvironget_use_extensions	_wrappersImportErrorr    r   r   <module>r      s{    
 P P 4 F  jjnn%?@@	
 	

	
	

 "7  7s    A" "A-,A-