cpython/Objects
Guido van Rossum 213c7a6aa5 Mondo changes to the iterator stuff, without changing how Python code
sees it (test_iter.py is unchanged).

- Added a tp_iternext slot, which calls the iterator's next() method;
  this is much faster for built-in iterators over built-in types
  such as lists and dicts, speeding up pybench's ForLoop with about
  25% compared to Python 2.1.  (Now there's a good argument for
  iterators. ;-)

- Renamed the built-in sequence iterator SeqIter, affecting the C API
  functions for it.  (This frees up the PyIter prefix for generic
  iterator operations.)

- Added PyIter_Check(obj), which checks that obj's type has a
  tp_iternext slot and that the proper feature flag is set.

- Added PyIter_Next(obj) which calls the tp_iternext slot.  It has a
  somewhat complex return condition due to the need for speed: when it
  returns NULL, it may not have set an exception condition, meaning
  the iterator is exhausted; when the exception StopIteration is set
  (or a derived exception class), it means the same thing; any other
  exception means some other error occurred.
2001-04-23 14:08:49 +00:00
..
.cvsignore Ignore a bunch of generated files. 2000-05-02 18:34:30 +00:00
abstract.c Mondo changes to the iterator stuff, without changing how Python code 2001-04-23 14:08:49 +00:00
bufferobject.c REMOVED all CWI, CNRI and BeOpen copyright markings. 2000-09-01 23:29:29 +00:00
cellobject.c Variety of small INC/DECREF patches that fix reported memory leaks 2001-03-13 01:58:22 +00:00
classobject.c Mondo changes to the iterator stuff, without changing how Python code 2001-04-23 14:08:49 +00:00
cobject.c REMOVED all CWI, CNRI and BeOpen copyright markings. 2000-09-01 23:29:29 +00:00
complexobject.c SF bug [ #409448 ] Complex division is braindead 2001-03-18 08:21:57 +00:00
dictobject.c Mondo changes to the iterator stuff, without changing how Python code 2001-04-23 14:08:49 +00:00
fileobject.c Mondo changes to the iterator stuff, without changing how Python code 2001-04-23 14:08:49 +00:00
floatobject.c When 1.6 boosted the # of digits produced by repr(float), repr(complex) 2001-03-11 08:37:29 +00:00
frameobject.c Make one more private symbol static. 2001-04-14 17:55:41 +00:00
funcobject.c Add support for weak references to the function and method types. 2001-03-23 04:19:27 +00:00
intobject.c Use Py_CHARMASK for ctype macros. Fixes bug #232787. 2001-03-06 12:12:02 +00:00
iterobject.c Mondo changes to the iterator stuff, without changing how Python code 2001-04-23 14:08:49 +00:00
listobject.c Fix core dump whenever PyList_Reverse() was called. 2001-02-12 22:06:02 +00:00
longobject.c Rich comparisons fall-out: 2001-01-17 15:33:18 +00:00
methodobject.c REMOVED all CWI, CNRI and BeOpen copyright markings. 2000-09-01 23:29:29 +00:00
moduleobject.c Add garbage collection for module objects. Closes patch #102939 and 2001-01-02 15:58:27 +00:00
object.c Fixed ref count bug. Patch #411191. Found by Walter Dörwald. 2001-03-25 19:16:13 +00:00
obmalloc.c Identifiers matching _[A-Z_]\w* are reserved for C implementations. 2001-03-11 18:36:13 +00:00
rangeobject.c SF patch #103158 by Greg Ball: Don't do unsafe arithmetic in xrange 2001-01-15 18:58:56 +00:00
sliceobject.c SF patch #408326 by Robin Thomas: slice objects comparable, not 2001-03-20 12:41:34 +00:00
stringobject.c Iterators phase 1. This comprises: 2001-04-20 19:13:02 +00:00
tupleobject.c Same treatment as listobject.c: 2001-01-18 00:00:53 +00:00
typeobject.c REMOVED all CWI, CNRI and BeOpen copyright markings. 2000-09-01 23:29:29 +00:00
unicodectype.c unicode database compression, step 3: 2000-09-25 21:48:13 +00:00
unicodeobject.c SF but #417587: compiler warnings compiling 2.1. 2001-04-21 02:46:11 +00:00
unicodetype_db.h forgot to check in the new makeunicodedata.py script 2001-01-21 17:01:31 +00:00
xxobject.c REMOVED all CWI, CNRI and BeOpen copyright markings. 2000-09-01 23:29:29 +00:00