]> granicus.if.org Git - python/commitdiff
Use PyLong_FromLong where appropriate.
authorGeorg Brandl <georg@python.org>
Fri, 26 Nov 2010 11:55:48 +0000 (11:55 +0000)
committerGeorg Brandl <georg@python.org>
Fri, 26 Nov 2010 11:55:48 +0000 (11:55 +0000)
Doc/extending/embedding.rst
Doc/extending/extending.rst

index c64e0a9175da29776f2bf8dab5354e6a06c9ca41..13a8e25e7c019108836fbc8d26b3f9e276b242fd 100644 (file)
@@ -209,7 +209,7 @@ Python extension.  For example::
    {
        if(!PyArg_ParseTuple(args, ":numargs"))
            return NULL;
-       return Py_BuildValue("i", numargs);
+       return PyLong_FromLong(numargs);
    }
 
    static PyMethodDef EmbMethods[] = {
index 1d40649874f694fbccd661d5e8c4d5a85df26481..c4ced1af8b79b34a1767d6931a0022ac39651c7d 100644 (file)
@@ -81,7 +81,7 @@ shortly how it ends up being called)::
        if (!PyArg_ParseTuple(args, "s", &command))
            return NULL;
        sts = system(command);
-       return Py_BuildValue("i", sts);
+       return PyLong_FromLong(sts);
    }
 
 There is a straightforward translation from the argument list in Python (for
@@ -274,12 +274,9 @@ the string we just got from :c:func:`PyArg_ParseTuple`::
    sts = system(command);
 
 Our :func:`spam.system` function must return the value of :c:data:`sts` as a
-Python object.  This is done using the function :c:func:`Py_BuildValue`, which is
-something like the inverse of :c:func:`PyArg_ParseTuple`: it takes a format
-string and an arbitrary number of C values, and returns a new Python object.
-More info on :c:func:`Py_BuildValue` is given later. ::
+Python object.  This is done using the function :c:func:`PyLong_FromLong`. ::
 
-   return Py_BuildValue("i", sts);
+   return PyLong_FromLong(sts);
 
 In this case, it will return an integer object.  (Yes, even integers are objects
 on the heap in Python!)
@@ -1195,7 +1192,7 @@ The function :c:func:`spam_system` is modified in a trivial way::
        if (!PyArg_ParseTuple(args, "s", &command))
            return NULL;
        sts = PySpam_System(command);
-       return Py_BuildValue("i", sts);
+       return PyLong_FromLong(sts);
    }
 
 In the beginning of the module, right after the line ::