Move importlib.abc.SourceLoader.source_to_code() to InspectLoader.

While the previous location was fine, it makes more sense to have the
method higher up in the inheritance chain, especially at a point where
get_source() is defined which is the earliest source_to_code() could
programmatically be used in the inheritance tree in importlib.abc.
This commit is contained in:
Brett Cannon 2013-05-26 16:45:10 -04:00
parent 1256f1f438
commit 9ffe85e1e8
4 changed files with 66 additions and 15 deletions

View file

@ -349,6 +349,17 @@ ABC hierarchy::
.. versionchanged:: 3.4
Raises :exc:`ImportError` instead of :exc:`NotImplementedError`.
.. method:: source_to_code(data, path='<string>')
Create a code object from Python source.
The *data* argument can be whatever the :func:`compile` function
supports (i.e. string or bytes). The *path* argument should be
the "path" to where the source code originated from, which can be an
abstract concept (e.g. location in a zip file).
.. versionadded:: 3.4
.. class:: ExecutionLoader
@ -466,17 +477,6 @@ ABC hierarchy::
.. versionchanged:: 3.4
No longer raises :exc:`NotImplementedError` when called.
.. method:: source_to_code(data, path)
Create a code object from Python source.
The *data* argument can be whatever the :func:`compile` function
supports (i.e. string or bytes). The *path* argument should be
the "path" to where the source code originated from, which can be an
abstract concept (e.g. location in a zip file).
.. versionadded:: 3.4
.. method:: get_code(fullname)
Concrete implementation of :meth:`InspectLoader.get_code`.