Raymond Hettinger
67115a2b02
Apply VISIT macro.
2004-07-15 21:32:18 +00:00
Nicholas Bastin
9ba301e589
Moved SunPro warning suppression into pyport.h and out of individual
...
modules and objects.
2004-07-15 15:54:05 +00:00
Raymond Hettinger
a435c53e13
* balance the left/right search for getitem.
...
* use assertions instead of tests after internal calls that can't fail.
* expand test coverage
2004-07-09 04:10:20 +00:00
Raymond Hettinger
616f4f61ba
Add a comment with implementation notes.
2004-06-26 04:42:06 +00:00
Nicholas Bastin
1ce9e4cfc1
Fixed end-of-loop code not reached warning when using SunPro C
2004-06-17 18:27:18 +00:00
Raymond Hettinger
691d80532b
Make sets and deques weak referencable.
2004-05-30 07:26:47 +00:00
Raymond Hettinger
285cfccecb
Make type check work with subclasses
2004-05-18 18:15:03 +00:00
Raymond Hettinger
0e371f2cb6
Make sure "del d[n]" is properly supported. Was necessary because the
...
same method that implements __setitem__ also implements __delitem__.
Also, there were several good use cases (removing items from a queue
and implementing Forth style stack ops).
2004-05-12 20:55:56 +00:00
Raymond Hettinger
7892b1c651
* Add unittests for iterators that report their length
...
* Document the differences between them
* Fix corner cases covered by the unittests
* Use Py_RETURN_NONE where possible for dictionaries
2004-04-12 18:10:01 +00:00
Raymond Hettinger
1e5809ff02
Improve deque iteration.
...
* The default __reversed__ performed badly, so reintroduced a custom
reverse iterator.
* Added length transparency to improve speed with map(), list(), etc.
2004-03-18 11:04:57 +00:00
Raymond Hettinger
6c79a518e7
Special case endpoint access for speed.
2004-03-04 08:00:54 +00:00
Raymond Hettinger
0a4977c2f3
Replace left(), right(), and __reversed__() with the more general purpose
...
__getitem__() and __setitem__().
Simplifies the API, reduces the code size, adds flexibility, and makes
deques work with bisect.bisect(), random.shuffle(), and random.sample().
2004-03-01 23:16:22 +00:00
Neal Norwitz
87f10137bf
Make deque_type static so namespace is not polluted.
2004-02-29 15:40:53 +00:00
Raymond Hettinger
738ec90ca1
Improvements to collections.deque():
...
* Add doctests for the examples in the library reference.
* Add two methods, left() and right(), modeled after deques in C++ STL.
* Apply the new method to asynchat.py.
* Add comparison operators to make deques more substitutable for lists.
* Replace the LookupErrors with IndexErrors to more closely match lists.
2004-02-29 02:15:56 +00:00
Neal Norwitz
a9208f1f99
Get rid of unused variable
2004-02-28 15:56:27 +00:00
Raymond Hettinger
ee33b27ef0
Make deque.rotate() smarter. Beef-up related tests.
2004-02-08 04:05:26 +00:00
Raymond Hettinger
5c5eb86347
* Incorporate Skip's suggestions for documentation (explain the word deque
...
comes from and show the differences from lists).
* Add a rotate() method.
2004-02-07 21:13:00 +00:00
Raymond Hettinger
c058fd14a9
* Fix ref counting in extend() and extendleft().
...
* Let deques support reversed().
2004-02-07 02:45:22 +00:00
Raymond Hettinger
3ba85c2e8a
Have deques support high volume loads.
2004-02-06 19:04:56 +00:00
Raymond Hettinger
d0814eb7fe
Fix spelling.
2004-01-29 07:29:32 +00:00
Raymond Hettinger
756b3f3c15
* Move collections.deque() in from the sandbox
...
* Add unittests, newsitem, and whatsnew
* Apply to Queue.py mutex.py threading.py pydoc.py and shlex.py
* Docs are forthcoming
2004-01-29 06:37:52 +00:00