From 7788dba204d23d15da2dda8a63e6a719db8a02a7 Mon Sep 17 00:00:00 2001 From: Georg Brandl Date: Mon, 6 Oct 2014 18:01:02 +0200 Subject: [PATCH] Closes #19071: "self" argument is not the module for module functions in 2.x. --- Doc/extending/extending.rst | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Doc/extending/extending.rst b/Doc/extending/extending.rst index 8e8c3ab575..5488ce9088 100644 --- a/Doc/extending/extending.rst +++ b/Doc/extending/extending.rst @@ -89,8 +89,9 @@ example, the single expression ``"ls -l"``) to the arguments passed to the C function. The C function always has two arguments, conventionally named *self* and *args*. -The *self* argument points to the module object for module-level functions; -for a method it would point to the object instance. +For module functions, the *self* argument is *NULL* or a pointer selected while +initializing the module (see :c:func:`Py_InitModule4`). For a method, it would +point to the object instance. The *args* argument will be a pointer to a Python tuple object containing the arguments. Each item of the tuple corresponds to an argument in the call's -- 2.50.1