3
§ f ã @ s2 G d d„ dƒZ edkr.ddlmZ eddd� dS ) c @ s. e Zd Zd
dd„Zdd„ Zdd„ Zdd „ ZdS )Ú DelegatorNc C s || _ tƒ | _d S )N)ÚdelegateÚsetÚ_Delegator__cache)Úselfr © r ú6/opt/alt/python36/lib64/python3.6/idlelib/delegator.pyÚ__init__ s zDelegator.__init__c C s( t | j|ƒ}t| ||ƒ | jj|ƒ |S )N)Úgetattrr Úsetattrr Úadd)r ÚnameÚattrr r r Ú__getattr__ s zDelegator.__getattr__c C sB x2| j D ](}yt| |ƒ W q tk
r. Y qX qW | j jƒ dS )z;Removes added attributes while leaving original attributes.N)r ÚdelattrÚAttributeErrorÚclear)r Úkeyr r r Ú
resetcache s
zDelegator.resetcachec C s | j ƒ || _dS )z%Reset attributes and change delegate.N)r r )r r r r r Úsetdelegate s zDelegator.setdelegate)N)Ú__name__Ú
__module__Ú__qualname__r r r r r r r r r s
r Ú__main__é )Úmainz idlelib.idle_test.test_delegatoré )Ú verbosityN)r r Zunittestr r r r r Ú