File: //usr/lib64/python3.6/__pycache__/weakref.cpython-36.pyc
3
\O
@ s d Z ddlmZmZmZmZmZmZmZm Z ddl
mZmZ ddl
Z
ddlZddlZeefZddddd d
ddd
ddddg
ZG dd deZG dd de
jZG dd deZG dd d e
jZG dd dZdS )z{Weak reference support for Python.
This module is an implementation of PEP 205:
http://www.python.org/dev/peps/pep-0205/
)getweakrefcountgetweakrefsrefproxyCallableProxyType ProxyType
ReferenceType_remove_dead_weakref)WeakSet_IterationGuardNr r r r WeakKeyDictionaryr r r
ProxyTypesWeakValueDictionaryr
WeakMethodfinalizec sD e Zd ZdZdZdddZ fd d
Zdd Zd
d Ze j
Z
ZS )r z
A custom `weakref.ref` subclass which simulates a weak reference to
a bound method, working around the lifetime problem of bound methods.
_func_ref
_meth_type_alive__weakref__Nc s~ y|j }|j}W n( tk
r8 tdjt|d Y nX fdd}tj| ||}t|||_t||_ d|_
t||S )Nz)argument should be a bound method, not {}c s&