a
i8T @ s d dl mZmZmZmZmZmZmZmZ d dl m
Z
mZ d dlZd dl
Z
d dlZeefZg dZeje
eje
G dd deZG dd dejZG d d
d
eZG dd dejZG d
d dZdS ) )getweakrefcountgetweakrefsrefproxyCallableProxyType ProxyType
ReferenceType_remove_dead_weakref)WeakSet_IterationGuardN)
r r r r WeakKeyDictionaryr r r
ProxyTypesWeakValueDictionaryr
WeakMethodfinalizec s@ e Zd ZdZdddZ fddZdd Zd d
Zej Z Z
S )r ) _func_ref
_meth_type_alive__weakref__Nc s| z|j }|j}W n& ty6 tdt|d Y n0 fdd}t| ||}t|||_t||_ d|_
t||S )Nz)argument should be a bound method, not {}c s&