bgTSdZddlZejddkZerefZddZnefZddlZe edZ[ddl m Z ddl m Z ddlmZmZd d lmZ dd l mZn #e$rYnwxYwd d lmZmZmZmZGd deZGddeZGddeZGddeZGddeZGddeZ e Z!dddefdZ"dZ#ee#_$dS)zoThis module implements decorators for implementing other decorators as well as some commonly used decorators. Nc||&tjd}|j}||j}~n||}t ddS)zExecute code in a namespace.Nzexec _code_ in _globs_, _locs_)sys _getframe f_globalsf_localsexec)_code__globs__locs_frames c/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib64/python3.11/site-packages/wrapt/decorators.pyexec_r sM ?M!$$EoG~ ^F 122222r )partial)isclass)LockRLockr) formatargspec) signature)FunctionWrapperBoundFunctionWrapper ObjectProxyCallableObjectProxyceZdZfdZedZedZedZedZedZ xZ S)_AdapterFunctionCodecftt||||_dSN)superr__init___self_adapter_code)self wrapped_code adapter_code __class__s rr!z_AdapterFunctionCode.__init__7s0 "D))22<@@@".rc|jjSr)r" co_argcountr#s rr(z _AdapterFunctionCode.co_argcount;&22rc|jjSr)r"co_coder)s rr,z_AdapterFunctionCode.co_code?s&..rc|jjSr)r"co_flagsr)s rr.z_AdapterFunctionCode.co_flagsCs&//rc|jjSr)r"co_kwonlyargcountr)s rr0z&_AdapterFunctionCode.co_kwonlyargcountGs&88rc|jjSr)r" co_varnamesr)s rr2z _AdapterFunctionCode.co_varnamesKr*r) __name__ __module__ __qualname__r!propertyr(r,r.r0r2 __classcell__r&s@rrr5s/////33X3//X/00X099X933X33333rrceZdZfdZedZedZedZedZe reZ eZ xZ SxZ S)_AdapterFunctionSurrogatecftt||||_dSr)r r:r! _self_adapter)r#wrappedadapterr&s rr!z"_AdapterFunctionSurrogate.__init__Qs0 '..77@@@$rcJt|jj|jjSr)r __wrapped____code__r<r)s rrAz"_AdapterFunctionSurrogate.__code__Us%#D$4$="+-- -rc|jjSr)r< __defaults__r)s rrCz&_AdapterFunctionSurrogate.__defaults__Zs!..rc|jjSr)r<__kwdefaults__r)s rrEz(_AdapterFunctionSurrogate.__kwdefaults__^s!00rcbdtvr |jjSt|jSNr)globalsr< __signature__rr)s rrIz'_AdapterFunctionSurrogate.__signature__bs. gii ' '%3 3T/00 0r) r3r4r5r!r6rArCrErIPY2 func_code func_defaultsr7r8s@rr:r:Os%%%%%--X-//X/11X111X1  % $ %%%%rr:cFeZdZedZedZereZdSdS)_BoundAdapterWrappercJt|jj|jjSr)r:r@__func__ _self_parentr<r)s rrPz_BoundAdapterWrapper.__func__os%()9)B!/11 1rcldtvr |jjSt|jjSrG)rHr@rIrrQr<r)s rrIz"_BoundAdapterWrapper.__signature__ts1 gii ' '#1 1T.<== =rN)r3r4r5r6rPrIrJim_funcrrrNrNms[ 11X1>>X>  rrNceZdZeZfdZedZedZedZ e reZ eZ edZ xZS)AdapterWrapperc|d}tt|j|i|t |j||_||_dS)Nr>)popr rVr!r:r@_self_surrogater<)r#argskwargsr>r&s rr!zAdapterWrapper.__init__s^**Y'',nd##,d=f===8 ' + +$rc|jjSr)rYrAr)s rrAzAdapterWrapper.__code__s#,,rc|jjSr)rYrCr)s rrCzAdapterWrapper.__defaults__s#00rc|jjSr)rYrEr)s rrEzAdapterWrapper.__kwdefaults__s#22rc|jjSr)rYrIr)s rrIzAdapterWrapper.__signature__s#11r)r3r4r5rN__bound_function_wrapper__r!r6rArCrErJrKrLrIr7r8s@rrVrV~s!5%%%%%--X-11X133X3 % $  22X22222rrVceZdZdZdS)AdapterFactoryctr)NotImplementedErrorr#r=s r__call__zAdapterFactory.__call__s!###rN)r3r4r5rfrTrrrbrbs#$$$$$rrbc$eZdZfdZdZxZS)DelegatedAdapterFactorycdtt|||_dSr)r rhr!factory)r#rjr&s rr!z DelegatedAdapterFactory.__init__s+ %t,,55777 rc,||Sr)rjres rrfz DelegatedAdapterFactory.__call__s||G$$$r)r3r4r5r!rfr7r8s@rrhrhsG%%%%%%%rrhc!dfd fd}|tSttS)Nc|rt|tr ||}t|s|i}i}t|ts.t |dkr|d}|dd}t |}t d||||d}|r||_t||||S|||S)Nzdef adapter{}: passr>)r=wrapperenabledr>)r=rprq) isinstancerbcallable string_typeslenrrformat__annotations__rV)r=rprqr>ns annotationsproxys r_buildzdecorator.._builds" :g~66/%gg..G((>B#%K%g|<<:w<<1,,*1"+K&-crclG"/"9/66w??RHHH mG #>2=/%gw '::::5'7KKK Krc||tr |s  fd}|S|d} }t|tur|s|Sd}|tr }nL }nIt|r d|}n# |t|}||| S)Ncl}t|tur|s|Sd}di}|||S)NrT)typebool)target_wrapped_enabledtarget_wrapperr{r>rqr[r=s r_capturez-decorator.._wrapper.._capturesd 'HH~~--'2#11#'&-W%6%6v%6%6N"6..$g///rr)rr~r__get__) r=instancerZr[rrrrr{r>rqrps ` ` r_wrapperzdecorator.._wrappers*GG$4$4T /////////4  "!WN HH~~%%*)) 7##(-,&-WYYNN$&-NN8$$/O.&-__T8%D%DNN0&-__XtH~~%N%NN6..(GLL Lr)r>)rqr>rzNN) decoratorr)rprqr>rzrr{s```` @rrrs0% L% L% L% L% L% L\g Mg Mg Mg Mg Mg Mg Mg M`vgx;;;;y'7 rct|drEt|dr5|tfd}Gfddt}||Sdfd}Gfd d t}||| S) NacquirereleasecL5||i|cdddS#1swxYwYdSrrT)r=rrZr[locks r _synchronizedz#synchronized.._synchronizeds  0 0w/// 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0s c$eZdZfdZfdZdS)'synchronized.._PartialDecoratorc0Sr)r)r#rs r __enter__z1synchronized.._PartialDecorator.__enter__s  rc0dSr)r)r#rZrs r__exit__z0synchronized.._PartialDecorator.__exit__s rNr3r4r5rr)rsr_PartialDecoratorrsG            rr)r=c t|dd}|htj5t|dd}|t }t |d|dddn #1swxYwY|S)N_synchronized_lock)varsget synchronized_synchronized_meta_lockrsetattr)contextrs rrz(synchronized.._synchronized_locksG}}  !5t<< <5 A A G}}(()=tDD< 77DG%94@@@ A A A A A A A A A A A A A A A sABB Bcf||n|5||i|cdddS#1swxYwYdSrrT)r=rrZr[rs r_synchronized_wrapperz+synchronized.._synchronized_wrapper s  H,@g N N , ,7D+F++ , , , , , , , , , , , , , , , , , ,s &**c eZdZfdZdZdS)%synchronized.._FinalDecoratorcn|j|_|j|jSr)r@ _self_lockr)r#rs rrz/synchronized.._FinalDecorator.__enter__s4001ABBDO O # # % % %? "rc8|jdSr)rr)r#rZs rrz.synchronized.._FinalDecorator.__exit__s O # # % % % % %rNr)rsr_FinalDecoratorrs= # # # # #  & & & & &rr)r=rp)hasattrrrr)r=rrrrrrs @@rrrsw ""8ww 'B'B8  0 0 0 0  0        3   ! 7777@,,,,,&&&&&&&/&&& ?74I J J JJrr)%__doc__r version_inforJ basestringrtrstrbuiltinsgetattr functoolsrinspectr threadingrr argumentsrr ImportErrorwrappersrrrrrr:rNrVobjectrbrhadapter_factoryrrrrTrrrs   qQ;L 3 3 3 3 34LOOO GHf % %E!!!!!!!!$$$$$$ !!!!!!!   D 33333.3334%%%%% 3%%%</"22222_222>$$$$$V$$$%%%%%n%%%*D$oCCCC^[K[K[Kz(,tvv $$$sAA A