Your IP : 216.73.216.86


Current Path : /lib/fm-agent/dependencies/psutil/__pycache__/
Upload File :
Current File : //lib/fm-agent/dependencies/psutil/__pycache__/_compat.cpython-36.pyc

3

q��i�;�E@s�dZddddddddd	d
ddgZd
dlZyd
dlZWnek
rPd
dlZYnXejd
dkZer�eZeZ	e
ZeZ
eZeed�Zeed�Zdd�Zdd�Zn6eZe	Z	eZe
Z
eZdd�Zdd�Zd:dd�Zdd�ZyeZWnek
r�dd�ZYnXyd
dlmZWn@ek
�rJd
dlmZd
dlmZd
dlZd;d d�ZYnXee d!��r^e Z nGd"d�dej �Z yd
d#lm!Z!Wn&ek
�r�Gd$d
�d
e"�Z!YnXyd
d%l#m$Z$Wnek
�r�d&d	�Z$YnXyd
d'l#m%Z%Wn,ek
�rd<Z&d=Z'e&e'fd,d�Z%YnXyd
d-l#m(Z(Wn�ek
�r�yd
d.l)m*Z*Wn"ek
�rjd
d.l+m*Z*YnXed/d0d1d2d3g�Z,Gd4d5�d5e-�Z.e/�fe0eee1e2d�f�e3e4e2e5fd6d7�Z6d>d9d�Z(YnXdS)?z?Module which provides compatibility with older Python versions.�PY3�int�long�xrange�exec_�callable�
namedtuple�property�wraps�defaultdict�update_wrapper�	lru_cache�N��exec�printcCs|S)N�)�srr�0/usr/lib/fm-agent/dependencies/psutil/_compat.py�usrcCs
|jd�S)Nzlatin-1)�encode)rrrr�b srcCs
t|d�S)NZunicode_escape)�unicode)rrrrr)scCs|S)Nr)rrrrr,scCsB|dkr*tjd�}|j}|dkr&|j}~n|dkr6|}td�dS)N�zexec code in globs, locs)�_sys�	_getframe�	f_globals�f_localsr)�codeZglobsZlocs�framerrrr/s
cCstjj|d�tjj�dS)N�
)�sys�stdout�write�flush)rrrr�print_:sr$cCstdd�t|�jD��S)Ncss|]}d|jkVqdS)�__call__N)�__dict__)�.0�klassrrr�	<genexpr>Dszcallable.<locals>.<genexpr>)�any�type�__mro__)�objrrrrCs)r)�
itemgetter)�	iskeywordFcCs�t|t�r|jdd�j�}ttt|��}|r�t|�}t�}xjt	|�D]^\}}t
dd�|D��s�t|�s�|s�|dj�s�|j
d�s�||kr�d|||<|j|�qDWt|�}x\|f|D]N}t
dd�|D��s�td	|��t|�r�td
|��|dj�r�td|��q�Wt�}xN|D]F}|j
d��r<|�r<td|��||k�rRtd
|��|j|��qWt|�}	t|�jdd�dd�}
djdd�|D��}dt�}x&t	|�D]\}}|d||f7}�q�W|�r�tjj|d�tjj�ttd|ttd�}
yt||
�Wn4tk
�r>tj�d}t|jd|��YnX|
|}ytj d�j!j"dd�|_#Wnt$tfk
�r|YnX|S)zyA collections.namedtuple implementation, see:
        http://docs.python.org/library/collections.html#namedtuple
        �,� css|]}|j�p|dkVqdS)�_N)�isalnum)r'�crrrr)^sznamedtuple.<locals>.<genexpr>r
r2z_%dcss|]}|j�p|dkVqdS)r2N)r3)r'r4rrrr)gszWType names and field names can only contain alphanumeric characters and underscores: %rz2Type names and field names cannot be a keyword: %rz9Type names and field names cannot start with a number: %rz/Field names cannot start with an underscore: %rz$Encountered duplicate field name: %r�'�rz, css|]}d|VqdS)z%s=%%rNr)r'�namerrrr)|sa�class %(typename)s(tuple):
        '%(typename)s(%(argtxt)s)' 

        __slots__ = () 

        _fields = %(field_names)r 

        def __new__(_cls, %(argtxt)s):
            return _tuple.__new__(_cls, (%(argtxt)s)) 

        @classmethod
        def _make(cls, iterable, new=tuple.__new__, len=len):
            'Make a new %(typename)s object from a sequence or iterable'
            result = new(cls, iterable)
            if len(result) != %(numfields)d:
                raise TypeError(
                    'Expected %(numfields)d arguments, got %%d' %% len(result))
            return result 

        def __repr__(self):
            return '%(typename)s(%(reprtxt)s)' %% self 

        def _asdict(self):
            'Return a new dict which maps field names to their values'
            return dict(zip(self._fields, self)) 

        def _replace(_self, **kwds):
            result = _self._make(map(kwds.pop, %(field_names)r, _self))
            if kwds:
                raise ValueError(
                    'Got unexpected field names: %%r' %% kwds.keys())
            return result 

        def __getnewargs__(self):
            return tuple(self) 

z(        %s = _property(_itemgetter(%d))
rz
namedtuple_%s)�_itemgetter�__name__�	_property�_tuplez:
r9�__main__���)%�
isinstance�
basestring�replace�split�tuple�map�str�list�set�	enumerate�min�
_iskeyword�isdigit�
startswith�add�
ValueError�len�repr�join�localsr r!r"r#�dictr8rr�SyntaxError�exc_info�messagerrr�get�
__module__�AttributeError)�typename�field_names�verbose�rename�names�seen�ir7Z
seen_namesZ	numfieldsZargtxtZreprtxt�template�	namespace�e�resultrrrrSsr







�settercs8eZdZeZ�fdd�Zdd�Zdd�Zdd�Z�Z	S)	rcs$tt|�j|f|�|�|j|_dS)N)�superr�__init__�__doc__)�self�fget�args�kwargs)�	__class__rrrf�szproperty.__init__cCst||j|j�S)N)r�fset�fdel)rh�methodrrr�getter�szproperty.gettercCst|j||j�S)N)rrirn)rhrorrrrd�szproperty.settercCst|j|j|�S)N)rrirm)rhrorrr�deleter�szproperty.deleter)
r9rW�__qualname__r+Z
__metaclass__rfrprdrq�
__classcell__rr)rlrr�s
)r
c@sReZdZdZddd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�ZdS)r
z�Dict subclass that calls a factory function to supply
        missing values:
        http://docs.python.org/library/collections.html#collections.defaultdict
        NcOs8|dk	rt|d�rtd��tj|f|�|�||_dS)Nr%zfirst argument must be callable)�hasattr�	TypeErrorrRrf�default_factory)rhrv�a�kwrrrrf�s
zdefaultdict.__init__cCs,ytj||�Stk
r&|j|�SXdS)N)rR�__getitem__�KeyError�__missing__)rh�keyrrrry�szdefaultdict.__getitem__cCs&|jdkrt|��|j�||<}|S)N)rvrz)rhr|�valuerrrr{�s
zdefaultdict.__missing__cCs0|jdkrt�}n|jf}t|�|dd|j�fS)N)rvrBr+�items)rhrjrrr�
__reduce__�s
zdefaultdict.__reduce__cCs|j�S)N)�__copy__)rhrrr�copy�szdefaultdict.copycCst|�|j|�S)N)r+rv)rhrrrr��szdefaultdict.__copy__cCs"ddl}t|�|j|j|j���S)Nr
)r�r+rv�deepcopyr~)rh�memor�rrr�__deepcopy__�s
zdefaultdict.__deepcopy__cCsd|jtj|�fS)Nzdefaultdict(%s, %s))rvrR�__repr__)rhrrrr��szdefaultdict.__repr__)N)r9rWrrrgrfryr{rr�r�r�r�rrrrr
�s
)r	cs�fdd�}|S)NcsjxdD]}t||t�|��qWxDdD]<}t||�rLt||�jt�|��q&t||t�|�j��q&W|S)NrWr9rgr&)rWr9rg)r&)�setattr�getattrrt�updater�)�fnZ	attribute)�originalrr�inners


zwraps.<locals>.innerr)r�r�r)r�rr	s
)rrWr9rgr&cCsJx|D]}t||t||��qWx$|D]}t||�jt||i��q&W|S)z�Update a wrapper function to look like the wrapped function, see:
        http://docs.python.org/library/functools.html#functools.update_wrapper
        )r�r�r�)�wrapper�wrapped�assigned�updated�attrrrrrs


)r)�RLock�	CacheInfo�hits�misses�maxsize�currsizec@s$eZdZdZefdd�Zdd�ZdS)�
_HashedSeq�	hashvaluecCs||dd�<||�|_dS)N)r�)rh�tup�hashrrrrf3sz_HashedSeq.__init__cCs|jS)N)r�)rhrrr�__hash__7sz_HashedSeq.__hash__N)r9rWrr�	__slots__r�rfr�rrrrr�0sr�c	s�|}	|r2||j��}
|	|7}	x|
D]}|	|7}	q"W|rp|	|�fdd�|D��7}	|r�|	|�fdd�|
D��7}	n$||	�dkr��|	d�|kr�|	dSt|	�S)Nc3s|]}�|�VqdS)Nr)r'�v)r+rrr)Esz_make_key.<locals>.<genexpr>c3s|]\}}�|�VqdS)Nr)r'�kr�)r+rrr)Gsrr
)r~r�)rj�kwds�typed�kwd_mark�	fasttypes�sortedrBr+rNr|Zsorted_items�itemr)r+r�	_make_key:s
r��dcs��fdd�}|S)z~Least-recently-used cache decorator, see:
        http://docs.python.org/3/library/functools.html#functools.lru_cache
        cst��ddg�
d
\��t�
�j�t�t��	g���ddg�dd�<�g�d\�����dkrn��
�fdd�}nP�dkr������
��
��f	dd�}n*����������	�
���
��fdd�}����	��
fd	d
�}��	��
fdd�}�|_||_||_t|��S)Nr
r�rcs�||�}��d7<|S)Nrr)rjr�rc)�MISSES�stats�
user_functionrrr�]s
z7lru_cache.<locals>.decorating_function.<locals>.wrappercsX�||��}�|��}|�k	r2��d7<|S�||�}|�|<��d7<|S)Nrr)rjr�r|rc)	�HITSr��cache�	cache_get�make_key�rootr�r�r�rrr�bs

csl|s�r�
||��}n|}�	j�zr�|�}|dk	r��\}|\}}}}||�<||�<|�}||�<|�<||�<||�<�
�d7<|SWd�	j�X�||�}�	j�z��\}|�kr�n�����k�r|}	||	�<||	�<|	�}�d<|�}
d|�<|�<�|
=|	�|<n,|�}||||g}||�<|�<�|<�
�d7<Wd�	j�X|S)Nrr
)�acquire�release)rjr�r|�linkr�Z	link_prevZ	link_nextrc�lastZoldrootZoldkey)r��KEYr��NEXT�PREV�RESULT�_lenr�r��lockr�r��
nonlocal_rootr�r�r�rrr�msN



cs2�j�zt�����t���S�j�XdS)zReport cache statisticsN)r��
_CacheInforNr�r)r�r�r�r�r�r�rr�
cache_info�s

z:lru_cache.<locals>.decorating_function.<locals>.cache_infoc
sP�j�z8�j��d}||ddg|dd�<ddg�dd�<Wd�j�XdS)z$Clear the cache and cache statisticsr
N)r��clearr�)r�)r�r�r�r�rr�cache_clear�sz;lru_cache.<locals>.decorating_function.<locals>.cache_clear)r
r)r
rr�r)	rRr�rVrNr��__wrapped__r�r�r)r�r�r�r�)r�r�)r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�decorating_functionPs,*-	z&lru_cache.<locals>.decorating_functionr)r�r�r�r)r�r�rrLsc)NN)FF)rWr9rg)r&)r�F)7rg�__all__r Z__builtin__�ImportError�builtins�version_inforrr�rangerrDrr?r�rr$rrr�	NameError�collectionsr�operatorr.r8�keywordr/rIrrtrr
rR�	functoolsr	r�WRAPPER_ASSIGNMENTS�WRAPPER_UPDATESr�	threadingr��dummy_threadingr�rEr��objectrF�	frozensetr+r�rBrNr�rrrr�<module>s�



	_1