name : _compat.pyc
�
�?�Vc@sdZddlZddlZddlZddlZddddddgZejd	d
kZer�eZ	e
ZeZ
eZd�Zd�Zn*e	Z	eZe
Z
eZd
�Zd�Zy
eZWnek
r�d�ZnXyddlmZWn�ek
r�yddlmZWn!ek
r@ddlmZnXejdddddg�Zdefd��YZe�feeeeed�f�e!e"ee#d�Z$de%d�ZnXyddl&m'Z'Wn*ek
rej(ej)Bdd�Z'nXdS(s?Module which provides compatibility with older Python versions.i����NtPY3tlongtxrangetunicodetcallablet	lru_cacheiicCs|S(N((ts((sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pytuscCs
|jd�S(Nslatin-1(tencode(R((sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pytbscCs
t|d�S(Ntunicode_escape(R(R((sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pyR!scCs|S(N((R((sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pyR	$scCstd�t|�jD��S(Ncss|]}d|jkVqdS(t__call__N(t__dict__(t.0tklass((sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pys	<genexpr>-s(tanyttypet__mro__(tobj((sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pyR,s(R(tRLockt	CacheInfothitstmissestmaxsizetcurrsizet
_HashedSeqcBs#eZdZed�Zd�ZRS(t	hashvaluecCs||(||�|_dS(N(R(tselfttupthash((sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pyt__init__DscCs|jS(N(R(R((sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pyt__hash__Hs(t__name__t
__module__t	__slots__RRR(((sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pyRAsc	s�|}	|rF||j��}
|	|7}	x|
D]}|	|7}	q/Wn|r�|	|�fd�|D��7}	|r�|	|�fd�|
D��7}	q�n0||	�dkr��|	d�|kr�|	dSt|	�S(Nc3s|]}�|�VqdS(N((R
tv(R(sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pys	<genexpr>Vsc3s!|]\}}�|�VqdS(N((R
tkR#(R(sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pys	<genexpr>Xsii(titemsR(targstkwdsttypedtkwd_markt	fasttypestsortedttupleRtlentkeytsorted_itemstitem((RsPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pyt	_make_keyKs

 &(idcs��fd�}|S(s~Least-recently-used cache decorator, see:
        http://docs.python.org/3/library/functools.html#functools.lru_cache
        csjt��ddg�
d
\��t�
�j�t�t��	g���ddg�(�g�d\�����dkr���
�fd�}nr�dkr������
��
��f	d�}n<����������	�
���
��fd�}����	��
fd�}��	��
fd	�}�|_||_||_t	j
|��S(Niiiics#�||�}��cd7<|S(Ni((R&R'tresult(tMISSEStstatst
user_function(sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pytwrappernscsn�||��}�|��}|�k	rA��cd7<|S�||�}|�|<��cd7<|S(Ni((R&R'R.R2(	tHITSR3tcachet	cache_gettmake_keytrootR4R(R5(sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pyR6ss
cs�|s�r!�
||��}n|}�	j�z��|�}|dk	r��\}|\}}}}||�<||�<|�}||�<|�<||�<||�<�
�cd7<|SWd�	j�X�||�}�	j�z��\}|�krn�����krp|}	||	�<||	�<|	�}�d<|�}
d|�<|�<�|
=|	�|<n6|�}||||g}||�<|�<�|<�
�cd7<Wd�	j�X|S(Nii(tacquiretNonetrelease(R&R'R.tlinkR;t	link_prevt	link_nextR2tlasttoldroottoldkey(R7tKEYR3tNEXTtPREVtRESULTt_lenR8R9tlockR:Rt
nonlocal_rootR4R(R5(sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pyR6~sN
	





	




csA�j�z%t�����t���SWd�j�XdS(sReport cache statisticsN(R<t
_CacheInfoR-R>((R7R3R8RJRR4(sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pyt
cache_info�s

csT�j�z8�j��d}||ddg|(ddg�(Wd�j�XdS(s$Clear the cache and cache statisticsiN(R<tclearR=R>(R;(R8RJRKR4(sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pytcache_clear�s


(ii(iiii(tdictR1tgetR-RR=t__wrapped__RMROt	functoolstupdate_wrapper(R5R6RMRO(RR((R7RER3RFRGRHRIR8R9RJR:RKR;R4R5sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pytdecorating_functionas,				*<-				((RR(RU((RR(sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pyR]sc(twhichcs�d�}tjj��r2|�|�r.�SdS|dkrYtjjdtj�}n|scdS|jtj�}t	j
dkrtj|kr�|jdtj�ntjjdd�jtj�}t
�fd�|D��r��g}qg|D]}�|^q�}n	�g}t�}xu|D]m}tjj|�}	|	|kr+|j|	�x9|D].}
tjj||
�}|||�rc|SqcWq+q+WdS(	sJGiven a command, mode, and a PATH string, return the path which
        conforms to the given mode on the PATH, or None if there is no such
        file.

        `mode` defaults to os.F_OK | os.X_OK. `path` defaults to the result
        of os.environ.get("PATH"), or can be overridden with a custom search
        path.
        cSs5tjj|�o4tj||�o4tjj|�S(N(tostpathtexiststaccesstisdir(tfntmode((sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pyt
_access_check�s$tPATHtwin32itPATHEXTtc3s*|] }�j�j|j��VqdS(N(tlowertendswith(R
text(tcmd(sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pys	<genexpr>�sN(RWRXtdirnameR=tenvironRQtdefpathtsplittpathseptsystplatformtcurdirtinsertRtsettnormcasetaddtjoin(RfR]RXR^tpathexttfilesRetseentdirtnormdirtthefiletname((RfsPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pyRV�s8		! 		


(*t__doc__tcollectionsRSRWRlt__all__tversion_infoRtintRtrangeRtstrRt
basestringRR	Rt	NameErrorRtImportErrort	threadingRtdummy_threadingt
namedtupleRLtlistRtobjectRpt	frozensetRR=R+R,R-R1tFalsetshutilRVtF_OKtX_OK(((sPC:/Program Files (x86)/Alibaba/Aegis/PythonLoader/third_party\psutil3\_compat.pyt<module>sR			




	k


© 2026 UnknownSec