summaryrefslogtreecommitdiffstats
path: root/Objects/abstract.c
diff options
context:
space:
mode:
authorRaymond Hettinger <python@rcn.com>2004-01-04 06:08:16 (GMT)
committerRaymond Hettinger <python@rcn.com>2004-01-04 06:08:16 (GMT)
commit7832cd6141116cc64f6304f1107631e28cd7ee08 (patch)
treeb67aff680ade3afb5752fcd931e043ad62b91ea2 /Objects/abstract.c
parent674d56b82e59dfe481f355999b49a7b99b8d763d (diff)
downloadcpython-7832cd6141116cc64f6304f1107631e28cd7ee08.zip
cpython-7832cd6141116cc64f6304f1107631e28cd7ee08.tar.gz
cpython-7832cd6141116cc64f6304f1107631e28cd7ee08.tar.bz2
Apply tuple/list pre-sizing optimization to a broader class of objects.
Formerly, length data fetched from sequence objects. Now, any object that reports its length can benefit from pre-sizing. On one sample timing, it gave a threefold speedup for list(s) where s was a set object.
Diffstat (limited to 'Objects/abstract.c')
-rw-r--r--Objects/abstract.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/Objects/abstract.c b/Objects/abstract.c
index 7e246db..1259ad4 100644
--- a/Objects/abstract.c
+++ b/Objects/abstract.c
@@ -1380,7 +1380,7 @@ PySequence_Tuple(PyObject *v)
return NULL;
/* Guess result size and allocate space. */
- n = PySequence_Size(v);
+ n = PyObject_Size(v);
if (n < 0) {
PyErr_Clear();
n = 10; /* arbitrary */