summaryrefslogtreecommitdiffstats
path: root/Lib/idlelib/Delegator.py
diff options
context:
space:
mode:
authorTerry Jan Reedy <tjreedy@udel.edu>2016-05-22 23:10:31 (GMT)
committerTerry Jan Reedy <tjreedy@udel.edu>2016-05-22 23:10:31 (GMT)
commit0d9220e162f1e5f8caa3d7ebaa54665776d361a1 (patch)
treea4fa9f7cafdfc93fde86b8ffd6088d739bb93e01 /Lib/idlelib/Delegator.py
parentdc4f7c09cc934524a763498250e30123a0d9d2c5 (diff)
downloadcpython-0d9220e162f1e5f8caa3d7ebaa54665776d361a1.zip
cpython-0d9220e162f1e5f8caa3d7ebaa54665776d361a1.tar.gz
cpython-0d9220e162f1e5f8caa3d7ebaa54665776d361a1.tar.bz2
Issue #24225: Rename many idlelib/*.py and idlelib/idle_test/test_*.py files.
Diffstat (limited to 'Lib/idlelib/Delegator.py')
-rw-r--r--Lib/idlelib/Delegator.py33
1 files changed, 0 insertions, 33 deletions
diff --git a/Lib/idlelib/Delegator.py b/Lib/idlelib/Delegator.py
deleted file mode 100644
index dc2a1aa..0000000
--- a/Lib/idlelib/Delegator.py
+++ /dev/null
@@ -1,33 +0,0 @@
-class Delegator:
-
- def __init__(self, delegate=None):
- self.delegate = delegate
- self.__cache = set()
- # Cache is used to only remove added attributes
- # when changing the delegate.
-
- def __getattr__(self, name):
- attr = getattr(self.delegate, name) # May raise AttributeError
- setattr(self, name, attr)
- self.__cache.add(name)
- return attr
-
- def resetcache(self):
- "Removes added attributes while leaving original attributes."
- # Function is really about resetting delagator dict
- # to original state. Cache is just a means
- for key in self.__cache:
- try:
- delattr(self, key)
- except AttributeError:
- pass
- self.__cache.clear()
-
- def setdelegate(self, delegate):
- "Reset attributes and change delegate."
- self.resetcache()
- self.delegate = delegate
-
-if __name__ == '__main__':
- from unittest import main
- main('idlelib.idle_test.test_delegator', verbosity=2)