o
     JAf                     @   s6   G d d dZ edkrddlmZ eddd dS dS )	c                   @   s.   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.10/idlelib/delegator.py__init__   s   zDelegator.__init__c                 C   s(   t | j|}t| || | j| |S r   )getattrr   setattrr   add)r   nameattrr   r   r	   __getattr__	   s   zDelegator.__getattr__c              	   C   s<   	 | j D ]}zt| | W q ty   Y qw | j   d S r   )r   delattrAttributeErrorclear)r   keyr   r   r	   
resetcache   s   
zDelegator.resetcachec                 C   s   	 |    || _d S r   )r   r   r   r   r   r	   setdelegate   s   
zDelegator.setdelegater   )__name__
__module____qualname__r
   r   r   r   r   r   r   r	   r      s
    
r   __main__    )mainz idlelib.idle_test.test_delegator   )	verbosityN)r   r   Zunittestr   r   r   r   r	   <module>   s
    