Browse Source

[issue19152] Add ExtensionFileLoader.get_filename().

pull/224/head
Eric Snow 12 years ago
parent
commit
5179445520
  1. 6
      Doc/library/importlib.rst
  2. 5
      Lib/importlib/_bootstrap.py
  3. 2
      Lib/importlib/abc.py
  4. 2
      Misc/NEWS
  5. 2710
      Python/importlib.h

6
Doc/library/importlib.rst

@ -836,7 +836,7 @@ find and load modules.
.. class:: ExtensionFileLoader(fullname, path)
A concrete implementation of :class:`importlib.abc.InspectLoader` for
A concrete implementation of :class:`importlib.abc.ExecutionLoader` for
extension modules.
The *fullname* argument specifies the name of the module the loader is to
@ -870,6 +870,10 @@ find and load modules.
Returns ``None`` as extension modules do not have source code.
.. method:: get_filename(fullname)
Returns :attr:`path`.
:mod:`importlib.util` -- Utility code for importers
---------------------------------------------------

5
Lib/importlib/_bootstrap.py

@ -1171,6 +1171,11 @@ class ExtensionFileLoader:
"""Return None as extension modules have no source code."""
return None
@_check_name
def get_filename(self, fullname):
"""Return the path to the source file as found by the finder."""
return self.path
class _NamespacePath:
"""Represents a namespace package's path. It uses the module name

2
Lib/importlib/abc.py

@ -237,6 +237,8 @@ class ExecutionLoader(InspectLoader):
super().init_module_attrs(module)
_bootstrap._init_file_attrs(self, module)
_register(machinery.ExtensionFileLoader)
class FileLoader(_bootstrap.FileLoader, ResourceLoader, ExecutionLoader):

2
Misc/NEWS

@ -361,6 +361,8 @@ Library
- Issue #19951: Fix docstring and use of _get_suppported_file_loaders() to
reflect 2-tuples.
- Issue #19152: Add ExtensionFileLoader.get_filename().
- Issue #18676: Change 'positive' to 'non-negative' in queue.py put and get
docstrings and ValueError messages. Patch by Zhongyue Luo

2710
Python/importlib.h
File diff suppressed because it is too large
View File

Loading…
Cancel
Save