1. 23 Apr, 2001 2 commits
    • Guido van Rossum's avatar
      Mondo changes to the iterator stuff, without changing how Python code · 213c7a6a
      Guido van Rossum authored
      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.
      213c7a6a
    • Guido van Rossum's avatar
      At the suggestion of Peter Funk, document 'key in dict' and 'key not · 8b3d6ca3
      Guido van Rossum authored
      in dict' after has_key(), with a \versionadded{2.2} note.
      8b3d6ca3
  2. 22 Apr, 2001 2 commits
  3. 21 Apr, 2001 10 commits
  4. 20 Apr, 2001 6 commits
  5. 19 Apr, 2001 4 commits
  6. 18 Apr, 2001 16 commits