mirror of
https://github.com/python/cpython.git
synced 2025-10-06 15:11:58 +00:00
bpo-42403: Use @staticmethod in importlib (GH-23395)
Use @staticmethod on methods using @classmethod but don't use their cls parameter on the following classes: * BuiltinImporter * FrozenImporter * WindowsRegistryFinder * PathFinder Leave methods using @_requires_builtin or @_requires_frozen unchanged, since this decorator requires the wrapped method to have an extra parameter (cls or self).
This commit is contained in:
parent
a6109ef68d
commit
3be8e220ed
4 changed files with 2359 additions and 2360 deletions
|
@ -761,16 +761,16 @@ class BuiltinImporter:
|
|||
spec = cls.find_spec(fullname, path)
|
||||
return spec.loader if spec is not None else None
|
||||
|
||||
@classmethod
|
||||
def create_module(self, spec):
|
||||
@staticmethod
|
||||
def create_module(spec):
|
||||
"""Create a built-in module"""
|
||||
if spec.name not in sys.builtin_module_names:
|
||||
raise ImportError('{!r} is not a built-in module'.format(spec.name),
|
||||
name=spec.name)
|
||||
return _call_with_frames_removed(_imp.create_builtin, spec)
|
||||
|
||||
@classmethod
|
||||
def exec_module(self, module):
|
||||
@staticmethod
|
||||
def exec_module(module):
|
||||
"""Exec a built-in module"""
|
||||
_call_with_frames_removed(_imp.exec_builtin, module)
|
||||
|
||||
|
@ -831,8 +831,8 @@ class FrozenImporter:
|
|||
"""
|
||||
return cls if _imp.is_frozen(fullname) else None
|
||||
|
||||
@classmethod
|
||||
def create_module(cls, spec):
|
||||
@staticmethod
|
||||
def create_module(spec):
|
||||
"""Use default semantics for module creation."""
|
||||
|
||||
@staticmethod
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue