View file File name : weakref.cpython-38.pyc Content :U �;rc�S � @ s� d Z ddlmZmZmZmZmZmZmZm Z ddl mZmZ ddl Z ddlZddlZeefZddddd d ddd ddddg ZG dd� de�ZG dd� de j�ZG dd� de�ZG dd � d e j�ZG dd� d�ZdS )z{Weak reference support for Python. This module is an implementation of PEP 205: http://www.python.org/dev/peps/pep-0205/ � )�getweakrefcount�getweakrefs�ref�proxy�CallableProxyType� ProxyType� ReferenceType�_remove_dead_weakref)�WeakSet�_IterationGuardNr r r r �WeakKeyDictionaryr r r � ProxyTypes�WeakValueDictionaryr � WeakMethod�finalizec sD e Zd ZdZdZddd�Z� fdd�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~ z|j }|j}W n( tk r8 td�t|���d �Y nX � �fdd�}t�| ||�}t||�|_t|�|_ d|_ t|��|S )Nz)argument should be a bound method, not {}c s&