]> granicus.if.org Git - python/commitdiff
Rename _PyIter_GetBuiltin to _PyObject_GetBuiltin, and do not include it in the stabl...
authorAntoine Pitrou <solipsis@pitrou.net>
Wed, 4 Apr 2012 22:04:20 +0000 (00:04 +0200)
committerAntoine Pitrou <solipsis@pitrou.net>
Wed, 4 Apr 2012 22:04:20 +0000 (00:04 +0200)
13 files changed:
Include/iterobject.h
Include/object.h
Modules/arraymodule.c
Objects/bytearrayobject.c
Objects/bytesobject.c
Objects/dictobject.c
Objects/iterobject.c
Objects/listobject.c
Objects/object.c
Objects/rangeobject.c
Objects/setobject.c
Objects/tupleobject.c
Objects/unicodeobject.c

index 86abb25e805646fc6df069b4eb224e79e02c9e2f..f61726f1f7f83af90a53ef1488b7dad385444698 100644 (file)
@@ -18,8 +18,6 @@ PyAPI_FUNC(PyObject *) PySeqIter_New(PyObject *);
 
 PyAPI_FUNC(PyObject *) PyCallIter_New(PyObject *, PyObject *);
 
-PyAPI_FUNC(PyObject *) _PyIter_GetBuiltin(const char *iter);
-
 #ifdef __cplusplus
 }
 #endif
index 9b3055df4909673397a1da29df625fc8bc671040..4024306d8a3440e02c9332cfa681fa5aebf1cdb2 100644 (file)
@@ -535,6 +535,11 @@ PyAPI_FUNC(int)
 _PyObject_GenericSetAttrWithDict(PyObject *, PyObject *,
                                  PyObject *, PyObject *);
 
+/* Helper to look up a builtin object */
+#ifndef Py_LIMITED_API
+PyAPI_FUNC(PyObject *)
+_PyObject_GetBuiltin(const char *name);
+#endif
 
 /* PyObject_Dir(obj) acts like Python builtins.dir(obj), returning a
    list of strings.  PyObject_Dir(NULL) is like builtins.dir(),
index af5d183d669a3bb4e0633be60b5fe70109e2f059..b0921c85a550e0402e7d99b61ab5ab738ce0062d 100644 (file)
@@ -2756,7 +2756,7 @@ arrayiter_traverse(arrayiterobject *it, visitproc visit, void *arg)
 static PyObject *
 arrayiter_reduce(arrayiterobject *it)
 {
-    return Py_BuildValue("N(O)n", _PyIter_GetBuiltin("iter"),
+    return Py_BuildValue("N(O)n", _PyObject_GetBuiltin("iter"),
                          it->ao, it->index);
 }
 
index be022a485f2c0515eed3e7edf5e07af21611a825..5b7083d68383e72c1e8fc90274e06636f5d4acdb 100644 (file)
@@ -3018,13 +3018,13 @@ static PyObject *
 bytearrayiter_reduce(bytesiterobject *it)
 {
     if (it->it_seq != NULL) {
-        return Py_BuildValue("N(O)n", _PyIter_GetBuiltin("iter"),
+        return Py_BuildValue("N(O)n", _PyObject_GetBuiltin("iter"),
                              it->it_seq, it->it_index);
     } else {
         PyObject *u = PyUnicode_FromUnicode(NULL, 0);
         if (u == NULL)
             return NULL;
-        return Py_BuildValue("N(N)", _PyIter_GetBuiltin("iter"), u);
+        return Py_BuildValue("N(N)", _PyObject_GetBuiltin("iter"), u);
     }
 }
 
index 0b95fdf60ae459018cfe4fe9c96cacc9d68d7d84..2e6be431c91e72fbb81a3d76c3c2bb6b218b1e82 100644 (file)
@@ -3078,13 +3078,13 @@ static PyObject *
 striter_reduce(striterobject *it)
 {
     if (it->it_seq != NULL) {
-        return Py_BuildValue("N(O)n", _PyIter_GetBuiltin("iter"),
+        return Py_BuildValue("N(O)n", _PyObject_GetBuiltin("iter"),
                              it->it_seq, it->it_index);
     } else {
         PyObject *u = PyUnicode_FromUnicode(NULL, 0);
         if (u == NULL)
             return NULL;
-        return Py_BuildValue("N(N)", _PyIter_GetBuiltin("iter"), u);
+        return Py_BuildValue("N(N)", _PyObject_GetBuiltin("iter"), u);
     }
 }
 
index 1924282b073d3dbb4a40f40745905b1139b1d2b2..3db7a5e6d9e41771e6d9237a5f00753cc8084008 100644 (file)
@@ -2610,7 +2610,7 @@ dictiter_reduce(dictiterobject *di)
         Py_DECREF(list);
         return NULL;
     }
-    return Py_BuildValue("N(N)", _PyIter_GetBuiltin("iter"), list);
+    return Py_BuildValue("N(N)", _PyObject_GetBuiltin("iter"), list);
 }
 
 /***********************************************/
index bd0544ccd90aae0c2b5e2b9e699255b9264154aa..3cfbeaf2e350f3562007cec07c7468ac58532ddc 100644 (file)
@@ -2,19 +2,6 @@
 
 #include "Python.h"
 
-/* Convenience function to get builtins.iter or builtins.reversed */
-PyObject *
-_PyIter_GetBuiltin(const char *iter)
-{
-    PyObject *mod, *attr;
-    mod = PyImport_ImportModule("builtins");
-    if (mod ==  NULL)
-        return NULL;
-    attr = PyObject_GetAttrString(mod, iter);
-    Py_DECREF(mod);
-    return attr;
-}
-
 typedef struct {
     PyObject_HEAD
     long      it_index;
@@ -105,10 +92,10 @@ static PyObject *
 iter_reduce(seqiterobject *it)
 {
     if (it->it_seq != NULL)
-        return Py_BuildValue("N(O)n", _PyIter_GetBuiltin("iter"),
+        return Py_BuildValue("N(O)n", _PyObject_GetBuiltin("iter"),
                              it->it_seq, it->it_index);
     else
-        return Py_BuildValue("N(())", _PyIter_GetBuiltin("iter"));
+        return Py_BuildValue("N(())", _PyObject_GetBuiltin("iter"));
 }
 
 PyDoc_STRVAR(reduce_doc, "Return state information for pickling.");
@@ -242,10 +229,10 @@ static PyObject *
 calliter_reduce(calliterobject *it)
 {
     if (it->it_callable != NULL && it->it_sentinel != NULL)
-        return Py_BuildValue("N(OO)", _PyIter_GetBuiltin("iter"),
+        return Py_BuildValue("N(OO)", _PyObject_GetBuiltin("iter"),
                              it->it_callable, it->it_sentinel);
     else
-        return Py_BuildValue("N(())", _PyIter_GetBuiltin("iter"));
+        return Py_BuildValue("N(())", _PyObject_GetBuiltin("iter"));
 }
 
 static PyMethodDef calliter_methods[] = {
index c8a75f5eaa298b746eaf7bf3e25f74ab4d1f32a8..e59c9b1b63513b93e78c27be52cf6f623bd1c649 100644 (file)
@@ -2949,17 +2949,17 @@ listiter_reduce_general(void *_it, int forward)
     if (forward) {
         listiterobject *it = (listiterobject *)_it;
         if (it->it_seq)
-            return Py_BuildValue("N(O)l", _PyIter_GetBuiltin("iter"),
+            return Py_BuildValue("N(O)l", _PyObject_GetBuiltin("iter"),
                                  it->it_seq, it->it_index);
     } else {
         listreviterobject *it = (listreviterobject *)_it;
         if (it->it_seq)
-            return Py_BuildValue("N(O)n", _PyIter_GetBuiltin("reversed"),
+            return Py_BuildValue("N(O)n", _PyObject_GetBuiltin("reversed"),
                                  it->it_seq, it->it_index);
     }
     /* empty iterator, create an empty list */
     list = PyList_New(0);
     if (list == NULL)
         return NULL;
-    return Py_BuildValue("N(N)", _PyIter_GetBuiltin("iter"), list);
+    return Py_BuildValue("N(N)", _PyObject_GetBuiltin("iter"), list);
 }
index 1b7f609206acdef90b5be795b69fc6317ded4363..5bafbc00e0b9bf488665f199b8b873f1ea8a5b21 100644 (file)
@@ -1026,6 +1026,19 @@ PyObject_SelfIter(PyObject *obj)
     return obj;
 }
 
+/* Convenience function to get a builtin from its name */
+PyObject *
+_PyObject_GetBuiltin(const char *name)
+{
+    PyObject *mod, *attr;
+    mod = PyImport_ImportModule("builtins");
+    if (mod == NULL)
+        return NULL;
+    attr = PyObject_GetAttrString(mod, name);
+    Py_DECREF(mod);
+    return attr;
+}
+
 /* Helper used when the __next__ method is removed from a type:
    tp_iternext is never NULL and can be safely called without checking
    on every iteration.
index 660de84c5c353355474884343d84122cc8dae4d0..99544d69aaf9372ab1738cb6d5afd0abd9d501e0 100644 (file)
@@ -985,7 +985,7 @@ rangeiter_reduce(rangeiterobject *r)
     if (range == NULL)
         goto err;
     /* return the result */
-    return Py_BuildValue("N(N)i", _PyIter_GetBuiltin("iter"), range, r->index);
+    return Py_BuildValue("N(N)i", _PyObject_GetBuiltin("iter"), range, r->index);
 err:
     Py_XDECREF(start);
     Py_XDECREF(stop);
@@ -1171,7 +1171,7 @@ longrangeiter_reduce(longrangeiterobject *r)
     }
 
     /* return the result */
-    return Py_BuildValue("N(N)O", _PyIter_GetBuiltin("iter"), range, r->index);
+    return Py_BuildValue("N(N)O", _PyObject_GetBuiltin("iter"), range, r->index);
 }
 
 static PyObject *
index 7cd87d33d10b62670ced18e8a488db60c750cabe..b903fbee8052f034fd1724ffc118454a7a7c1e35 100644 (file)
@@ -856,7 +856,7 @@ setiter_reduce(setiterobject *si)
         Py_DECREF(list);
         return NULL;
     }
-    return Py_BuildValue("N(N)", _PyIter_GetBuiltin("iter"), list);
+    return Py_BuildValue("N(N)", _PyObject_GetBuiltin("iter"), list);
 }
 
 PyDoc_STRVAR(reduce_doc, "Return state information for pickling.");
index 4af4a491ae3ac22c7ae5538a0194818717ced22c..d103b9be673e11890fe53c95dad4287c268b0e56 100644 (file)
@@ -971,10 +971,10 @@ static PyObject *
 tupleiter_reduce(tupleiterobject *it)
 {
     if (it->it_seq)
-        return Py_BuildValue("N(O)l", _PyIter_GetBuiltin("iter"),
+        return Py_BuildValue("N(O)l", _PyObject_GetBuiltin("iter"),
                              it->it_seq, it->it_index);
     else
-        return Py_BuildValue("N(())", _PyIter_GetBuiltin("iter"));
+        return Py_BuildValue("N(())", _PyObject_GetBuiltin("iter"));
 }
 
 static PyObject *
index aee832a4314c2e8123e789d92da0e5cf5c7c4b54..1d8a176c000a7a91f9ff14a60a53a1ca965ca773 100644 (file)
@@ -14386,13 +14386,13 @@ static PyObject *
 unicodeiter_reduce(unicodeiterobject *it)
 {
     if (it->it_seq != NULL) {
-        return Py_BuildValue("N(O)n", _PyIter_GetBuiltin("iter"),
+        return Py_BuildValue("N(O)n", _PyObject_GetBuiltin("iter"),
                              it->it_seq, it->it_index);
     } else {
         PyObject *u = PyUnicode_FromUnicode(NULL, 0);
         if (u == NULL)
             return NULL;
-        return Py_BuildValue("N(N)", _PyIter_GetBuiltin("iter"), u);
+        return Py_BuildValue("N(N)", _PyObject_GetBuiltin("iter"), u);
     }
 }