h fK
@ s" d Z d d l m Z m Z m Z m Z m Z m Z m Z d d l m
Z
m Z d d l Z d d l
Z
d d l Z e e f Z d d d d d d
d d d
d d d d g
Z Gd d d e Z Gd d d e j Z Gd d d e Z Gd d d e j Z Gd d d Z d S)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)WeakSet_IterationGuardNr r r r WeakKeyDictionaryr r r
ProxyTypesWeakValueDictionaryr
WeakMethodfinalizec s^ e Z d Z d Z d Z d d d Z f d d
Z d d Z d
d Z e j
Z
S)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 } Wn0 t k
rH t d j t | d Yn X f d d } t j | | | } t | | | _ t | | _ d | _
t | | S)Nz)argument should be a bound method, not {}c s; } | j r7 d | _ d k r7 | q7 n d S)NF)r )argself)callbackself_wr ,/opt/alt/python34/lib64/python3.4/weakref.py_cb2 s
zWeakMethod.__new__.