MINI MINI MANI MO

Path : /usr/lib64/python3.6/__pycache__/
File Upload :
Current File : //usr/lib64/python3.6/__pycache__/weakref.cpython-36.opt-2.pyc

3


 \O
@sddlmZmZmZmZmZmZmZmZddl	m
Z
mZddlZddl
Z
ddlZeefZdddddd	d
ddd
dddg
ZGdddeZGdd
d
ejZGdddeZGdddejZGdddZdS))getweakrefcountgetweakrefsrefproxyCallableProxyType	ProxyType
ReferenceType_remove_dead_weakref)WeakSet_IterationGuardNrrrrWeakKeyDictionaryrrr
ProxyTypesWeakValueDictionaryr

WeakMethodfinalizecs@eZdZdZdddZfdd	Zd
dZdd
Zej	Z	Z
S)r	_func_ref
_meth_type_alive__weakref__Ncs~y|j}|j}Wn(tk
r8tdjt|dYnXfdd}tj|||}t|||_t||_	d|_
t||S)Nz)argument should be a bound method, not {}cs&}|jr"d|_dk	r"|dS)NF)r)argself)callbackself_wr/usr/lib64/python3.6/weakref.py_cb3s
zWeakMethod.__new__.<locals>._cbT)__self____func__AttributeError	TypeErrorformattyper__new__rrr)clsmethrobjfuncrrr)rrrr",s

zWeakMethod.__new__cs2tj}|j}|dks"|dkr&dS|j||S)N)super__call__rr)rr%r&)	__class__rrr(Bs

zWeakMethod.__call__cCs>t|tr:|js|jr"||kStj||o8|j|jkSdS)NF)
isinstancerrr__eq__r)rotherrrrr+Is

zWeakMethod.__eq__cCs>t|tr:|js|jr"||k	Stj||p8|j|jkSdS)NT)r*rrr__ne__r)rr,rrrr-Ps

zWeakMethod.__ne__)rrrr)N)__name__
__module____qualname__	__slots__r"r(r+r-r__hash__
__classcell__rr)r)rr$s
c@seZdZddZddZddZddZd	d
ZddZd
dZ	ddZ
ddZeZddZ
d*ddZddZddZeZddZddZd d!Zd"d#Zd+d$d%Zd&d'Zd(d)ZdS),rcst|std|^}}t|dkr0tdt|t|tffdd	}||_g|_t|_i|_|j	||dS)NzGdescriptor '__init__' of 'WeakValueDictionary' object needs an argumentz$expected at most 1 arguments, got %dcs4|}|dk	r0|jr$|jj|jn||jdS)N)
_iterating_pending_removalsappendkey)wrselfref_atomic_removalr)drrremovems
z,WeakValueDictionary.__init__.<locals>.remove)
rlenrr	_remover6setr5dataupdate)argskwrr=r)r<r__init__fs	
zWeakValueDictionary.__init__cCs,|j}|j}x|r&|j}t||qWdS)N)r6rApopr	)rlr<r8rrr_commit_removals}s
z$WeakValueDictionary._commit_removalscCs4|jr|j|j|}|dkr,t|n|SdS)N)r6rHrAKeyError)rr8orrr__getitem__s
zWeakValueDictionary.__getitem__cCs|jr|j|j|=dS)N)r6rHrA)rr8rrr__delitem__szWeakValueDictionary.__delitem__cCs|jr|jt|jS)N)r6rHr>rA)rrrr__len__szWeakValueDictionary.__len__cCs<|jr|jy|j|}Wntk
r2dSX|dk	S)NF)r6rHrArI)rr8rJrrr__contains__sz WeakValueDictionary.__contains__cCsd|jjt|fS)Nz<%s at %#x>)r)r.id)rrrr__repr__szWeakValueDictionary.__repr__cCs&|jr|jt||j||j|<dS)N)r6rHKeyedRefr?rA)rr8valuerrr__setitem__szWeakValueDictionary.__setitem__cCsF|jr|jt}x,|jjD]\}}|}|dk	r |||<q W|S)N)r6rHrrAitems)rnewr8r9rJrrrcopyszWeakValueDictionary.copycCsZddlm}|jr|j|j}x2|jjD]$\}}|}|dk	r.|||||<q.W|S)Nr)deepcopy)rVrWr6rHr)rArT)rmemorWrUr8r9rJrrr__deepcopy__sz WeakValueDictionary.__deepcopy__NcCsL|jr|jy|j|}Wntk
r0|SX|}|dkrD|S|SdS)N)r6rHrArI)rr8defaultr9rJrrrgetszWeakValueDictionary.getc
csV|jr|jt|6x.|jjD] \}}|}|dk	r$||fVq$WWdQRXdS)N)r6rHrrArT)rkr9vrrrrTs
zWeakValueDictionary.itemsc
csN|jr|jt|.x&|jjD]\}}|dk	r$|Vq$WWdQRXdS)N)r6rHrrArT)rr\r9rrrkeyss

zWeakValueDictionary.keysc	cs6|jr|jt||jjEdHWdQRXdS)N)r6rHrrAvalues)rrrr
itervaluerefss

z!WeakValueDictionary.itervaluerefsc
csN|jr|jt|.x&|jjD]}|}|dk	r$|Vq$WWdQRXdS)N)r6rHrrAr_)rr9r%rrrr_s
zWeakValueDictionary.valuescCs<|jr|jx(|jj\}}|}|dk	r||fSqWdS)N)r6rHrApopitem)rr8r9rJrrrraszWeakValueDictionary.popitemcGs`|jr|jy|jj|}Wntk
r8d}YnX|dkrX|rN|dSt|n|SdS)Nr)r6rHrArFrI)rr8rCrJrrrrFs

zWeakValueDictionary.popcCs`y|j|}Wntk
r(d}YnX|dkrX|jr@|jt||j||j|<|S|SdS)N)rArIr6rHrQr?)rr8rZrJrrr
setdefaults
zWeakValueDictionary.setdefaultcOs|std|^}}t|dkr0tdt||r<|dnd}|jrN|j|j}|dk	rt|dsrti|}x&|jD]\}}t||j	|||<q|Wt|r|j
|dS)NzEdescriptor 'update' of 'WeakValueDictionary' object needs an argumentr4z$expected at most 1 arguments, got %drrT)rr>r6rHrAhasattrr!rTrQr?rB)rCkwargsrdictr<r8rJrrrrB s 
zWeakValueDictionary.updatecCs|jr|jt|jjS)N)r6rHlistrAr_)rrrr	valuerefs3s
zWeakValueDictionary.valuerefs)N)N)r.r/r0rErHrKrLrMrNrPrSrV__copy__rYr[rTr^__iter__r`r_rarFrbrBrgrrrrrZs,			

			

cs(eZdZdZddZfddZZS)rQr8cCstj|||}||_|S)N)rr"r8)r!obrr8rrrrr"NszKeyedRef.__new__cstj||dS)N)r'rE)rrjrr8)r)rrrESszKeyedRef.__init__)r8)r.r/r0r1r"rEr3rr)r)rrQBs
rQc@seZdZd*ddZddZddZdd	Zd
dZdd
ZddZ	ddZ
ddZeZddZ
d+ddZddZddZddZeZddZd d!Zd"d#Zd$d%Zd,d&d'Zd-d(d)ZdS).rNcCsFi|_t|fdd}||_g|_t|_d|_|dk	rB|j|dS)NcSs.|}|dk	r*|jr"|jj|n|j|=dS)N)r5r6r7rA)r\r:rrrrr=ds
z*WeakKeyDictionary.__init__.<locals>.removeF)rArr?r6r@r5
_dirty_lenrB)rrer=rrrrEbszWeakKeyDictionary.__init__cCs>|j}|j}x,|r8y||j=Wqtk
r4YqXqWdS)N)r6rArFrI)rrGr<rrrrHssz"WeakKeyDictionary._commit_removalscs&|jfdd|jD|_d|_dS)Ncsg|]}|kr|qSrr).0r\)r<rr
<listcomp>sz5WeakKeyDictionary._scrub_removals.<locals>.<listcomp>F)rAr6rk)rr)r<r_scrub_removalssz!WeakKeyDictionary._scrub_removalscCsd|_|jt|=dS)NT)rkrAr)rr8rrrrLszWeakKeyDictionary.__delitem__cCs|jt|S)N)rAr)rr8rrrrKszWeakKeyDictionary.__getitem__cCs(|jr|jr|jt|jt|jS)N)rkr6rnr>rA)rrrrrMszWeakKeyDictionary.__len__cCsd|jjt|fS)Nz<%s at %#x>)r)r.rO)rrrrrPszWeakKeyDictionary.__repr__cCs||jt||j<dS)N)rArr?)rr8rRrrrrSszWeakKeyDictionary.__setitem__cCs8t}x,|jjD]\}}|}|dk	r|||<qW|S)N)rrArT)rrUr8rRrJrrrrVszWeakKeyDictionary.copycCsLddlm}|j}x2|jjD]$\}}|}|dk	r |||||<q W|S)Nr)rW)rVrWr)rArT)rrXrWrUr8rRrJrrrrYszWeakKeyDictionary.__deepcopy__cCs|jjt||S)N)rAr[r)rr8rZrrrr[szWeakKeyDictionary.getcCs,yt|}Wntk
r dSX||jkS)NF)rrrA)rr8r9rrrrNs
zWeakKeyDictionary.__contains__c
csHt|6x.|jjD] \}}|}|dk	r||fVqWWdQRXdS)N)rrArT)rr9rRr8rrrrTs

zWeakKeyDictionary.itemsc
cs<t|*x"|jD]}|}|dk	r|VqWWdQRXdS)N)rrA)rr9r%rrrr^s

zWeakKeyDictionary.keysc
cs@t|.x&|jjD]\}}|dk	r|VqWWdQRXdS)N)rrArT)rr9rRrrrr_s

zWeakKeyDictionary.valuescCs
t|jS)N)rfrA)rrrrkeyrefss
zWeakKeyDictionary.keyrefscCs4d|_x(|jj\}}|}|dk	r||fSqWdS)NT)rkrAra)rr8rRrJrrrraszWeakKeyDictionary.popitemcGsd|_|jjt|f|S)NT)rkrArFr)rr8rCrrrrFszWeakKeyDictionary.popcCs|jjt||j|S)N)rArbrr?)rr8rZrrrrbszWeakKeyDictionary.setdefaultcKs`|j}|dk	rJt|ds$ti|}x$|jD]\}}||t||j<q.Wt|r\|j|dS)NrT)rArcr!rTrr?r>rB)rrerdr<r8rRrrrrBs
zWeakKeyDictionary.update)N)N)N)N)r.r/r0rErHrnrLrKrMrPrSrVrhrYr[rNrTr^rir_rorarFrbrBrrrrrWs,

	

c@seZdZfZiZdZejZdZ	dZ
GdddZddZdddZ
d	d
ZddZed
dZeddZejddZddZeddZeddZdS)rFc@seZdZdZdS)	zfinalize._Infoweakrefr&rCrdatexitindexN)rpr&rCrdrqrr)r.r/r0r1rrrr_InfosrscOsp|js ddl}|j|jdt_|j}t|||_||_||_	|pFd|_
d|_t|j|_
||j|<dt_dS)NrT)_registered_with_atexitrqregister	_exitfuncrrsrrpr&rCrdnext_index_iterrr	_registry_dirty)rr%r&rCrdrqinforrrrEs

zfinalize.__init__NcCs2|jj|d}|r.|jr.|j|j|jp*iSdS)N)ryrF	_shutdownr&rCrd)r_r{rrrr(szfinalize.__call__cCsH|jj|}|o|j}|dk	rD|jj|drD||j|j|jp@ifSdS)N)ryr[rprFr&rCrd)rr{r%rrrdetach&szfinalize.detachcCs:|jj|}|o|j}|dk	r6||j|j|jp2ifSdS)N)ryr[rpr&rCrd)rr{r%rrrpeek.sz
finalize.peekcCs
||jkS)N)ry)rrrralive6szfinalize.alivecCs|jj|}t|o|jS)N)ryr[boolrq)rr{rrrrq;szfinalize.atexitcCs|jj|}|rt||_dS)N)ryr[rrq)rrRr{rrrrqAscCs^|jj|}|o|j}|dkr6dt|jt|fSdt|jt|t|jt|fSdS)Nz<%s object at %#x; dead>z!<%s object at %#x; for %r at %#x>)ryr[rpr!r.rO)rr{r%rrrrPGszfinalize.__repr__cCs2dd|jjD}|jddddd|DS)NcSsg|]\}}|jr||fqSr)rq)rlfirrrrmSsz-finalize._select_for_exit.<locals>.<listcomp>cSs
|djS)Nr4)rr)itemrrr<lambda>Tsz+finalize._select_for_exit.<locals>.<lambda>)r8cSsg|]\}}|qSrr)rlrrrrrrmUs)ryrTsort)r#Lrrr_select_for_exitPszfinalize._select_for_exitcCsd}z|jrddl}|jr(d}|jd}x\|dks<tjrJ|j}dt_|sPP|j}y
|Wq.tk
rt	j
t	jYq.Xq.WWddt_|r|j
XdS)NFrT)rygc	isenableddisablerrzrrF	Exceptionsys
excepthookexc_infor|enable)r#reenable_gcrpendingrrrrrvWs.
zfinalize._exitfunc)N)r.r/r0r1ryr|	itertoolscountrxrzrtrsrEr(r~rpropertyrrqsetterrPclassmethodrrvrrrrrs"
	)_weakrefrrrrrrrr	_weakrefsetr
rcollectionsrrr
__all__rMutableMappingrrQrrrrrr<module>s (

6i

OHA YOOOO