(self, code)
| 1698 | dispatch[EXT4[0]] = load_ext4 |
| 1699 | |
| 1700 | def get_extension(self, code): |
| 1701 | obj = _extension_cache.get(code, _NoValue) |
| 1702 | if obj is not _NoValue: |
| 1703 | self.append(obj) |
| 1704 | return |
| 1705 | key = _inverted_registry.get(code) |
| 1706 | if not key: |
| 1707 | if code <= 0: # note that 0 is forbidden |
| 1708 | # Corrupt or hostile pickle. |
| 1709 | raise UnpicklingError("EXT specifies code <= 0") |
| 1710 | raise ValueError("unregistered extension code %d" % code) |
| 1711 | obj = self.find_class(*key) |
| 1712 | _extension_cache[code] = obj |
| 1713 | self.append(obj) |
| 1714 | |
| 1715 | def find_class(self, module, name): |
| 1716 | # Subclasses may override this. |
no test coverage detected