î
\á[\™  ã               @   s   Gd  d „  d ƒ Z  d S)c               @   sC   e  Z d  Z d d d „ Z d d „  Z d d „  Z d d	 „  Z d S)
Ú	DelegatorNc             C   s   | |  _  t ƒ  |  _ d  S)N)ÚdelegateÚsetÚ_Delegator__cache)Úselfr   © r   ú'/usr/lib/python3.4/idlelib/Delegator.pyÚ__init__   s    	zDelegator.__init__c             C   s6   t  |  j | ƒ } t |  | | ƒ |  j j | ƒ | S)N)Úgetattrr   Úsetattrr   Úadd)r   ÚnameÚattrr   r   r   Ú__getattr__	   s    zDelegator.__getattr__c             C   sK   x7 |  j  D], } y t |  | ƒ Wq
 t k
 r5 Yq
 Xq
 W|  j  j ƒ  d  S)N)r   ÚdelattrÚAttributeErrorÚclear)r   Úkeyr   r   r   Ú
resetcache   s    	zDelegator.resetcachec             C   s   |  j  ƒ  | |  _ d  S)N)r   r   )r   r   r   r   r   Úsetdelegate   s    
zDelegator.setdelegate)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r   r   r      s   r   N)r   r   r   r   r   Ú<module>   s    