From 324086f1c13ef355055511943f5e5d535f488b94 Mon Sep 17 00:00:00 2001 From: Georg Brandl Date: Tue, 18 May 2010 23:13:04 +0000 Subject: [PATCH] Merged revisions 79579-79580,79585-79587 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r79579 | georg.brandl | 2010-04-02 08:34:41 +0000 (Fr, 02 Apr 2010) | 1 line Add 2.6.5. ........ r79580 | georg.brandl | 2010-04-02 08:39:09 +0000 (Fr, 02 Apr 2010) | 1 line #2768: add a note on how to get a file descriptor. ........ r79585 | georg.brandl | 2010-04-02 09:03:18 +0000 (Fr, 02 Apr 2010) | 1 line Remove col-spanning cells in logging docs. ........ r79586 | georg.brandl | 2010-04-02 09:07:42 +0000 (Fr, 02 Apr 2010) | 1 line Document PyImport_ExecCodeModuleEx(). ........ r79587 | georg.brandl | 2010-04-02 09:11:49 +0000 (Fr, 02 Apr 2010) | 1 line #8012: clarification in generator glossary entry. ........ --- Doc/c-api/import.rst | 9 +++++++++ Doc/data/refcounts.dat | 12 ++++++++++++ Doc/glossary.rst | 4 +++- Doc/library/os.rst | 4 ++++ 4 files changed, 28 insertions(+), 1 deletion(-) diff --git a/Doc/c-api/import.rst b/Doc/c-api/import.rst index c6f9c326885..558896cac3f 100644 --- a/Doc/c-api/import.rst +++ b/Doc/c-api/import.rst @@ -138,6 +138,9 @@ Importing Modules such modules have no way to know that the module object is an unknown (and probably damaged with respect to the module author's intents) state. + The module's :attr:`__file__` attribute will be set to the code object's + :cmember:`co_filename`. + This function will reload the module if it was already imported. See :cfunc:`PyImport_ReloadModule` for the intended way to reload a module. @@ -148,6 +151,12 @@ Importing Modules *name* is removed from :attr:`sys.modules` in error cases. +.. cfunction:: PyObject* PyImport_ExecCodeModuleEx(char *name, PyObject *co, char *pathname) + + Like :cfunc:`PyImport_ExecCodeModule`, but the :attr:`__file__` attribute of + the module object is set to *pathname* if it is non-``NULL``. + + .. cfunction:: long PyImport_GetMagicNumber() Return the magic number for Python bytecode files (a.k.a. :file:`.pyc` and diff --git a/Doc/data/refcounts.dat b/Doc/data/refcounts.dat index f48b754012c..90ad2bf51c6 100644 --- a/Doc/data/refcounts.dat +++ b/Doc/data/refcounts.dat @@ -450,6 +450,11 @@ PyImport_ExecCodeModule:PyObject*::+1: PyImport_ExecCodeModule:char*:name:: PyImport_ExecCodeModule:PyObject*:co:0: +PyImport_ExecCodeModuleEx:PyObject*::+1: +PyImport_ExecCodeModuleEx:char*:name:: +PyImport_ExecCodeModuleEx:PyObject*:co:0: +PyImport_ExecCodeModuleEx:char*:pathname:: + PyImport_GetMagicNumber:long::: PyImport_GetModuleDict:PyObject*::0: @@ -469,6 +474,13 @@ PyImport_ImportModuleEx:PyObject*:globals:0:??? PyImport_ImportModuleEx:PyObject*:locals:0:??? PyImport_ImportModuleEx:PyObject*:fromlist:0:??? +PyImport_ImportModuleLevel:PyObject*::+1: +PyImport_ImportModuleLevel:char*:name:: +PyImport_ImportModuleLevel:PyObject*:globals:0:??? +PyImport_ImportModuleLevel:PyObject*:locals:0:??? +PyImport_ImportModuleLevel:PyObject*:fromlist:0:??? +PyImport_ImportModuleLevel:int:level:: + PyImport_ReloadModule:PyObject*::+1: PyImport_ReloadModule:PyObject*:m:0: diff --git a/Doc/glossary.rst b/Doc/glossary.rst index f7689afaff3..30bd1c2959e 100644 --- a/Doc/glossary.rst +++ b/Doc/glossary.rst @@ -217,6 +217,8 @@ Glossary performs garbage collection via reference counting and a cyclic garbage collector that is able to detect and break reference cycles. + .. index:: single: generator + generator A function which returns an iterator. It looks like a normal function except that values are returned to the caller using a :keyword:`yield` @@ -230,7 +232,7 @@ Glossary .. index:: single: generator expression generator expression - An expression that returns a generator. It looks like a normal expression + An expression that returns an iterator. It looks like a normal expression followed by a :keyword:`for` expression defining a loop variable, range, and an optional :keyword:`if` expression. The combined expression generates values for an enclosing function:: diff --git a/Doc/library/os.rst b/Doc/library/os.rst index bf144131274..1bc91267ba9 100644 --- a/Doc/library/os.rst +++ b/Doc/library/os.rst @@ -525,6 +525,10 @@ process will then be assigned 3, 4, 5, and so forth. The name "file descriptor" is slightly deceptive; on Unix platforms, sockets and pipes are also referenced by file descriptors. +The :meth:`~file.fileno` method can be used to obtain the file descriptor +associated with a file object when required. Note that using the file +descriptor directly will bypass the file object methods, ignoring aspects such +as internal buffering of data. .. function:: close(fd)