diff options
author | Eric Snow <ericsnowcurrently@gmail.com> | 2014-01-04 22:06:49 (GMT) |
---|---|---|
committer | Eric Snow <ericsnowcurrently@gmail.com> | 2014-01-04 22:06:49 (GMT) |
commit | d749c7ae683a98bb2f0c1ac3c9ac2d3c5bb6e51f (patch) | |
tree | db62a95d76cc066f937039914a9c2461087b32cf /Lib/importlib | |
parent | 78194cd4e920550bad4f9cad5f7411927ab3f458 (diff) | |
download | cpython-d749c7ae683a98bb2f0c1ac3c9ac2d3c5bb6e51f.zip cpython-d749c7ae683a98bb2f0c1ac3c9ac2d3c5bb6e51f.tar.gz cpython-d749c7ae683a98bb2f0c1ac3c9ac2d3c5bb6e51f.tar.bz2 |
Issue #19927: Add __eq__ to path-based loaders in importlib.
Diffstat (limited to 'Lib/importlib')
-rw-r--r-- | Lib/importlib/_bootstrap.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/Lib/importlib/_bootstrap.py b/Lib/importlib/_bootstrap.py index 62e25a3..864e546 100644 --- a/Lib/importlib/_bootstrap.py +++ b/Lib/importlib/_bootstrap.py @@ -1559,6 +1559,13 @@ class FileLoader: self.name = fullname self.path = path + def __eq__(self, other): + return (self.__class__ == other.__class__ and + self.__dict__ == other.__dict__) + + def __hash__(self): + return hash(self.name) ^ hash(self.path) + @_check_name def load_module(self, fullname): """Load a module from a file.""" @@ -1653,6 +1660,13 @@ class ExtensionFileLoader: self.name = name self.path = path + def __eq__(self, other): + return (self.__class__ == other.__class__ and + self.__dict__ == other.__dict__) + + def __hash__(self): + return hash(self.name) ^ hash(self.path) + @_check_name def load_module(self, fullname): """Load an extension module.""" |