o
    ­2úh—  ã                   @   sª   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 d¡ ZerOzddlmZmZmZ ddlmZ ddlmZm	Z	 d	Z
W n	 eyN   Y nw d
d„ ZdS )zTThis module is used to switch between C and Python implementations of the
wrappers.
é    Né   )ÚBoundFunctionWrapperÚCallableObjectProxyÚFunctionWrapper)ÚObjectProxy)ÚPartialCallableObjectProxyÚ_FunctionWrapperBaseFÚWRAPT_DISABLE_EXTENSIONSTc                  O   s   t | i |¤ŽS )zöCreate 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Úkwargs© r   úJ/var/www/html/chatgem/venv/lib/python3.10/site-packages/wrapt/__wrapt__.pyÚpartial&   s   r   )Ú__doc__ÚosÚwrappersr   r   r   r   ÚBaseObjectProxyr   r   Ú_using_c_extensionÚenvironÚgetÚ_use_extensionsÚ	_wrappersÚImportErrorr   r   r   r   r   Ú<module>   s"    þ