a XC?h@s2GdddZedkr.ddlmZeddddS) c@s.eZdZd ddZddZddZdd ZdS) DelegatorNcCs||_t|_dSN)delegateset_Delegator__cacheselfrr6/opt/alt/python39/lib64/python3.9/idlelib/delegator.py__init__szDelegator.__init__cCs(t|j|}t||||j||Sr)getattrrsetattrradd)rnameattrrrr __getattr__ s   zDelegator.__getattr__c Cs<|jD]&}zt||Wqty*Yq0q|jdS)z;Removes added attributes while leaving original attributes.N)rdelattrAttributeErrorclear)rkeyrrr resetcaches   zDelegator.resetcachecCs|||_dS)z%Reset attributes and change delegate.N)rrrrrr setdelegateszDelegator.setdelegate)N)__name__ __module__ __qualname__r rrrrrrr rs  r__main__)mainz idlelib.idle_test.test_delegator) verbosityN)rrZunittestrrrrr s