(self, key, default=None)
| 122 | return o |
| 123 | |
| 124 | def setdefault(self, key, default=None): |
| 125 | try: |
| 126 | o = self.data[key]() |
| 127 | except KeyError: |
| 128 | o = None |
| 129 | if o is None: |
| 130 | if self._pending_removals: |
| 131 | self._commit_removals() |
| 132 | self.data[key] = self._KeyedRef(default, key) |
| 133 | return default |
| 134 | else: |
| 135 | return o |
| 136 | |
| 137 | |
| 138 | # A dict mapping module names to weakrefs of _ModuleLock instances. |