a 97a@sddlZddlZddlZddlZddlZddlZejddkZerJefZ ne fZ ddZ Gddde Z GdddeZGd d d e eZGd d d eZGd ddeZGdddeZGdddeZGdddeZz2ejds ddlmZmZmZmZmZmZWney"Yn0ddZddZdifddZGdd d e Zdifd!d"Zd#d$Zd%d&Z d'd(Z!d)d*Z"d+d,Z#Gd-d.d.eZ$dS)/NcGs |d|iS)z%Create a base class with a metaclass.ZNewBase)metabasesrri/private/var/folders/s6/9n5zrl012gv99k63s4q6ccsd4s6mqz/T/pip-target-f5cq3f2q/lib/python/wrapt/wrappers.pywith_metaclasssrc@sXeZdZeddZejddZeddZejddZeddZed d Zd S) _ObjectProxyMethodscCs|jjSN __wrapped__ __module__selfrrrr sz_ObjectProxyMethods.__module__cCs ||j_dSr r rvaluerrrr "scCs|jjSr r __doc__r rrrr&sz_ObjectProxyMethods.__doc__cCs ||j_dSr rrrrrr*scCs|jjSr )r __dict__r rrrr1sz_ObjectProxyMethods.__dict__cCs|jjSr )r __weakref__r rrrr:sz_ObjectProxyMethods.__weakref__N)__name__r __qualname__propertysetterrrrrrrrrs      rc@seZdZddZdS)_ObjectProxyMetaTypecCs|ttt||||Sr )updatevarsrtype__new__)clsnamer dictionaryrrrr?sz_ObjectProxyMetaType.__new__N)rr rrrrrrr>src@s(eZdZdZddZeddZejddZeddZejd dZed d Zejd d Zd dZ ddZ e s~ddZ ddZ ddZe sddZejdkrddZddZddZd d!Zd"d#Zd$d%Zd&d'Zd(d)Zd*d+Zd,d-Zd.d/Zd0d1Zd2d3Zd4d5Zd6d7Z d8d9Z!d:d;Z"dd?Z$d@dAZ%dBdCZ&dDdEZ'dFdGZ(dHdIZ)dJdKZ*dLdMZ+dNdOZ,dPdQZ-dRdSZ.dTdUZ/dVdWZ0dXdYZ1dZd[Z2d\d]Z3d^d_Z4d`daZ5dbdcZ6dddeZ7dfdgZ8dhdiZ9djdkZ:dldmZ;dndoZdtduZ?dvdwZ@dxdyZAdzd{ZBd|d}ZCd~dZDddZEddZFddZGddZHddZIddZJddZKddZLddZMddZNddZOddZPddZQddZRddZSddZTddZUddZVddZWddZXddZYddZZddZ[ddZ\ddZ]ddZ^ddZ_ddZ`ddZadS) ObjectProxyr cCs:t|d|zt|d|jWnty4Yn0dS)Nr r)object __setattr__rAttributeError)rwrappedrrr__init__Ms  zObjectProxy.__init__cCs|jjSr r rr rrrrYszObjectProxy.__name__cCs ||j_dSr r'rrrrr]scCs|jjSr r __class__r rrrr)aszObjectProxy.__class__cCs ||j_dSr r(rrrrr)escCs|jjSr r __annotations__r rrrr+iszObjectProxy.__annotations__cCs ||j_dSr r*rrrrr+mscCs t|jSr )dirr r rrr__dir__qszObjectProxy.__dir__cCs t|jSr )strr r rrr__str__tszObjectProxy.__str__cCs t|jSr )bytesr r rrr __bytes__xszObjectProxy.__bytes__cCs(dt|jt|t|jjt|jS)Nz<{} at 0x{:x} for {} at 0x{:x}>)formatrridr r rrr__repr__{s  zObjectProxy.__repr__cCs t|jSr )reversedr r rrr __reversed__szObjectProxy.__reversed__cCs t|jSr )roundr r rrr __round__szObjectProxy.__round__icCs|jfSr r )rrrrr__mro_entries__szObjectProxy.__mro_entries__cCs |j|kSr r9rotherrrr__lt__szObjectProxy.__lt__cCs |j|kSr r9r;rrr__le__szObjectProxy.__le__cCs |j|kSr r9r;rrr__eq__szObjectProxy.__eq__cCs |j|kSr r9r;rrr__ne__szObjectProxy.__ne__cCs |j|kSr r9r;rrr__gt__szObjectProxy.__gt__cCs |j|kSr r9r;rrr__ge__szObjectProxy.__ge__cCs t|jSr )hashr r rrr__hash__szObjectProxy.__hash__cCs t|jSr boolr r rrr __nonzero__szObjectProxy.__nonzero__cCs t|jSr rEr rrr__bool__szObjectProxy.__bool__cCs|drt|||n|dkr~t|||zt|dWntyRYn0zt|d|jWqtyzYq0nR|dkrt|j||t|||n,tt ||rt|||nt|j||dS)N_self_r r) startswithr"r# __delattr__r$rsetattrr hasattrr)rrrrrrr#s$   zObjectProxy.__setattr__cCs|dkrtdt|j|S)Nr z wrapper has not been initialised) ValueErrorgetattrr rrrrr __getattr__szObjectProxy.__getattr__cCsx|drt||n\|dkr*tdnJ|dkrLt||t|j|n(tt||rht||n t|j|dS)NrIr z__wrapped__ must be an objectr)rJr"rK TypeErrordelattrr rMrrPrrrrKs   zObjectProxy.__delattr__cCs |j|Sr r9r;rrr__add__szObjectProxy.__add__cCs |j|Sr r9r;rrr__sub__szObjectProxy.__sub__cCs |j|Sr r9r;rrr__mul__szObjectProxy.__mul__cCst|j|Sr operatordivr r;rrr__div__szObjectProxy.__div__cCst|j|Sr rXtruedivr r;rrr __truediv__szObjectProxy.__truediv__cCs |j|Sr r9r;rrr __floordiv__szObjectProxy.__floordiv__cCs |j|Sr r9r;rrr__mod__szObjectProxy.__mod__cCs t|j|Sr divmodr r;rrr __divmod__szObjectProxy.__divmod__cGst|j|g|RSr powr rr<argsrrr__pow__szObjectProxy.__pow__cCs |j|>Sr r9r;rrr __lshift__szObjectProxy.__lshift__cCs |j|?Sr r9r;rrr __rshift__szObjectProxy.__rshift__cCs |j|@Sr r9r;rrr__and__szObjectProxy.__and__cCs |j|ASr r9r;rrr__xor__szObjectProxy.__xor__cCs |j|BSr r9r;rrr__or__szObjectProxy.__or__cCs ||jSr r9r;rrr__radd__szObjectProxy.__radd__cCs ||jSr r9r;rrr__rsub__szObjectProxy.__rsub__cCs ||jSr r9r;rrr__rmul__ szObjectProxy.__rmul__cCst||jSr rWr;rrr__rdiv__ szObjectProxy.__rdiv__cCst||jSr r[r;rrr __rtruediv__szObjectProxy.__rtruediv__cCs ||jSr r9r;rrr __rfloordiv__szObjectProxy.__rfloordiv__cCs ||jSr r9r;rrr__rmod__szObjectProxy.__rmod__cCs t||jSr r`r;rrr __rdivmod__szObjectProxy.__rdivmod__cGst||jg|RSr rcrerrr__rpow__szObjectProxy.__rpow__cCs ||j>Sr r9r;rrr __rlshift__szObjectProxy.__rlshift__cCs ||j?Sr r9r;rrr __rrshift__"szObjectProxy.__rrshift__cCs ||j@Sr r9r;rrr__rand__%szObjectProxy.__rand__cCs ||jASr r9r;rrr__rxor__(szObjectProxy.__rxor__cCs ||jBSr r9r;rrr__ror__+szObjectProxy.__ror__cCs|j|7_|Sr r9r;rrr__iadd__.szObjectProxy.__iadd__cCs|j|8_|Sr r9r;rrr__isub__2szObjectProxy.__isub__cCs|j|9_|Sr r9r;rrr__imul__6szObjectProxy.__imul__cCst|j||_|Sr )rXZidivr r;rrr__idiv__:szObjectProxy.__idiv__cCst|j||_|Sr )rXitruedivr r;rrr __itruediv__>szObjectProxy.__itruediv__cCs|j|_|Sr r9r;rrr __ifloordiv__BszObjectProxy.__ifloordiv__cCs|j|;_|Sr r9r;rrr__imod__FszObjectProxy.__imod__cCs|j|C_|Sr r9r;rrr__ipow__JszObjectProxy.__ipow__cCs|j|K_|Sr r9r;rrr __ilshift__NszObjectProxy.__ilshift__cCs|j|L_|Sr r9r;rrr __irshift__RszObjectProxy.__irshift__cCs|j|M_|Sr r9r;rrr__iand__VszObjectProxy.__iand__cCs|j|N_|Sr r9r;rrr__ixor__ZszObjectProxy.__ixor__cCs|j|O_|Sr r9r;rrr__ior__^szObjectProxy.__ior__cCs|j Sr r9r rrr__neg__bszObjectProxy.__neg__cCs|j Sr r9r rrr__pos__eszObjectProxy.__pos__cCs t|jSr )absr r rrr__abs__hszObjectProxy.__abs__cCs|jSr r9r rrr __invert__kszObjectProxy.__invert__cCs t|jSr )intr r rrr__int__nszObjectProxy.__int__cCs t|jSr )longr r rrr__long__qszObjectProxy.__long__cCs t|jSr )floatr r rrr __float__tszObjectProxy.__float__cCs t|jSr )complexr r rrr __complex__wszObjectProxy.__complex__cCs t|jSr )octr r rrr__oct__zszObjectProxy.__oct__cCs t|jSr )hexr r rrr__hex__}szObjectProxy.__hex__cCs t|jSr )rXindexr r rrr __index__szObjectProxy.__index__cCs t|jSr )lenr r rrr__len__szObjectProxy.__len__cCs ||jvSr r9rrrr __contains__szObjectProxy.__contains__cCs |j|Sr r9rkeyrrr __getitem__szObjectProxy.__getitem__cCs||j|<dSr r9)rrrrrr __setitem__szObjectProxy.__setitem__cCs |j|=dSr r9rrrr __delitem__szObjectProxy.__delitem__cCs|j||Sr r9rijrrr __getslice__szObjectProxy.__getslice__cCs||j||<dSr r9)rrrrrrr __setslice__szObjectProxy.__setslice__cCs|j||=dSr r9rrrr __delslice__szObjectProxy.__delslice__cCs |jSr )r __enter__r rrrrszObjectProxy.__enter__cOs|jj|i|Sr )r __exit__rrfkwargsrrrrszObjectProxy.__exit__cCs t|jSr )iterr r rrr__iter__szObjectProxy.__iter__cCs tddS)Nz#object proxy must define __copy__()NotImplementedErrorr rrr__copy__szObjectProxy.__copy__cCs tddS)Nz'object proxy must define __deepcopy__()r)rmemorrr __deepcopy__szObjectProxy.__deepcopy__cCs tddSNz(object proxy must define __reduce_ex__()rr rrr __reduce__szObjectProxy.__reduce__cCs tddSrr)rprotocolrrr __reduce_ex__szObjectProxy.__reduce_ex__N)brr r __slots__r&rrr)r+r-r/PY2r1r4r6r8sys hexversionr:r=r>r?r@rArBrDrGrHr#rQrKrTrUrVrZr]r^r_rbrgrhrirjrkrlrmrnrorprqrrrsrtrurvrwrxryrzr{r|r}r~rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr!Is         r!c@seZdZddZdS)CallableObjectProxycOs|j|i|Sr r9rrrr__call__szCallableObjectProxy.__call__Nrr rrrrrrrsrcs$eZdZfddZddZZS)PartialCallableObjectProxycsZt|dkrtd|d|dd}}t|s:tdtt||||_||_dS)Nz(partial type takes at least one argumentrz#the first argument must be callable)rrRcallablesuperrr& _self_args _self_kwargs)rrfrr%r)rrr&s z#PartialCallableObjectProxy.__init__cOs.|j|}t|j}|||j|i|Sr )rdictrrr )rrfr_args_kwargsrrrrs   z#PartialCallableObjectProxy.__call__)rr rr&r __classcell__rrrrrs rcs2eZdZdZd fdd ZddZdd ZZS) _FunctionWrapperBase)_self_instance _self_wrapper _self_enabled _self_binding _self_parentNfunctioncsZtt||t|d|t|d|t|d|t|d|t|d|dS)Nrrrrr)rrr&r"r#)rr%instancewrapperenabledbindingparentrrrr&s z_FunctionWrapperBase.__init__cCs|jdurBt|js>|j||}||||j|j|j|S|S|j dur|jdkr|jj||}|j|||j|j|j|jS|S)Nr) rinspectisclassr __get____bound_function_wrapper__rrrr)rrownerZ descriptorrrrrs$   z_FunctionWrapperBase.__get__cOs|jdurDt|jr.|sD|j|i|Sn|jsD|j|i|S|jdkr|jdurt|jdd}|dur||j|||S||j|j||S)Nr__self__)rrr rrrOr)rrfrrrrrrs       z_FunctionWrapperBase.__call__)NrN)rr rrr&rrrrrrrrs  8rc@seZdZddZdS)BoundFunctionWrappercOs|jdurDt|jr.|sD|j|i|Sn|jsD|j|i|S|jdkr|jdur|sdtd|d|dd}}t|j|}|||||S||j|j||St|jdd}||j|||SdS)Nrz&missing 1 required positional argumentrrr) rrr rrrRrrrO)rrfrrr%rrrr;s(       zBoundFunctionWrapper.__call__Nrrrrrr9srcs"eZdZeZdfdd ZZS)FunctionWrapperNcsbt|trd}n6t|tr d}n&t|drBt|jr.lookup_attributer)r string_types __import__rmodulessplit)modulerrpathrroriginalrrr resolve_paths     rcCst|||dSr )rL)rr replacementrrr apply_patchsrrc Cs6t||\}}}||g|Ri|}t||||Sr )rr) rrfactoryrfrrrrrrrr wrap_objects rc@s,eZdZddZddZddZddZd S) AttributeWrappercCs||_||_||_||_dSr )rrrfr)rrrrfrrrrr&szAttributeWrapper.__init__cCs(|j|j}|j|g|jRi|jSr )rrrrfr)rrrrrrrrs zAttributeWrapper.__get__cCs||j|j<dSr rr)rrrrrr__set__ szAttributeWrapper.__set__cCs|j|j=dSr r)rrrrr __delete__#szAttributeWrapper.__delete__N)rr rr&rrrrrrrrsrc Cs<|dd\}}t||d}t||||}t||||S)Nrrr)rsplitrrr) rrrrfrrrrrrrrwrap_object_attribute&s  rcsfdd}t|S)NcsH|d}|dur}n(t|r.d|}n|t|}t||S)Nrrrrrr)r%rrfrtarget_wrappedtarget_wrapperrrr_wrapper3s z"function_wrapper.._wrapperrrrrrrfunction_wrapper2s rcCst||t|fSr rrrrrrrrwrap_function_wrapper>srcsfdd}|S)Ncstt|fSr rrrrrrrBsz(patch_function_wrapper.._wrapperr)rrrrrrpatch_function_wrapperAsrcsfdd}|S)Ncsfdd}t|S)NcsX|d}|durn(t|r.d|n|t|fdd}t||S)Nrc sVt\}}}t|}t|||z||i|Wt|||St|||0dSr )rrrL)r%rrfrrrrr)rrrrr_executePs   zRtransient_function_wrapper.._decorator.._wrapper.._executer)r%rrfrrrr)rrrHs z@transient_function_wrapper.._decorator.._wrapperrrrrr _decoratorGsz.transient_function_wrapper.._decoratorr)rrrrrrtransient_function_wrapperFsrcCs$|jr dSd|_|dur ||dS)NT) _self_expired)refproxycallbackrrr_weak_function_proxy_callbackes r cs*eZdZdZdfdd ZddZZS)WeakFunctionProxy)rrNc s|otjt||d}d|_t|trvt|j||_|j durZt t | t |j |nt t | t ||dSz.t|j||_t t | t |j|Wn0tyd|_t t | t ||Yn0dS)N)r r F) functoolspartialr rrrweakrefr rrrr r&r r__func__r$)rr%r Z _callbackrrrr&vs6            zWeakFunctionProxy.__init__cOsL|jo |}|jo|j}|dur2|j|i|S||t||i|Sr )rr rr)rrfrrrrrrrs  zWeakFunctionProxy.__call__)N)rr rrr&rrrrrrr rs-r )%osrrrXrr version_infor basestringrr.rr"rrrr!rrrrrenvirongetZ _wrappers ImportErrorrrrrrrrrrr r rrrrsH+ kj:_$)