Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | * Simplify and speedup logic for tp_print. | Raymond Hettinger | 2003-12-31 | 1 | -15/+29 | |
| | | | | * Speed-up intersection whenever PyDict_Next can be used. | |||||
* | Speedup set.update by using the override mode for PyDict_Merge(). | Raymond Hettinger | 2003-12-15 | 1 | -1/+1 | |
| | ||||||
* | Improve algorithm for set.difference when the input is not a set. | Raymond Hettinger | 2003-12-15 | 1 | -43/+43 | |
| | ||||||
* | * Refactor set.__contains__() | Raymond Hettinger | 2003-12-13 | 1 | -21/+10 | |
| | | | | | * Use Py_RETURN_NONE everywhere. * Fix-up the firstpass check for the tp_print slot. | |||||
* | Refactor set.discard() and set.remove(). | Raymond Hettinger | 2003-12-13 | 1 | -31/+22 | |
| | ||||||
* | Use dictionary specific looping idiom where possible. | Raymond Hettinger | 2003-12-13 | 1 | -114/+40 | |
| | | | | Simplifies and speeds-up the code. | |||||
* | * Added a new method flag, METH_COEXIST. | Raymond Hettinger | 2003-12-13 | 1 | -0/+26 | |
| | | | | | * Used the flag to optimize set.__contains__(), dict.__contains__(), dict.__getitem__(), and list.__getitem__(). | |||||
* | Expose dict_contains() and PyDict_Contains() with is about 10% faster | Raymond Hettinger | 2003-11-25 | 1 | -9/+9 | |
| | | | | | | | than PySequence_Contains() and more clearly applicable to dicts. Apply the new function in setobject.c where __contains__ checking is ubiquitous. | |||||
* | Factor out more duplicate code. | Raymond Hettinger | 2003-11-24 | 1 | -77/+51 | |
| | ||||||
* | Stop GCC warning about int literal that's so long that it becomes an | Guido van Rossum | 2003-11-24 | 1 | -1/+1 | |
| | | | | | unsigned int (on a 32-bit machine), by adding an explicit 'u' to the literal (a prime used to improve the hash function for frozenset). | |||||
* | * Checkin remaining documentation | Raymond Hettinger | 2003-11-24 | 1 | -137/+148 | |
| | | | | | | | * Add more tests * Refactor and neaten the code a bit. * Rename union_update() to update(). * Improve the algorithms (making them a closer to sets.py). | |||||
* | * Simplify hash function and add test to show effectiveness of the hash | Raymond Hettinger | 2003-11-23 | 1 | -14/+26 | |
| | | | | | | | | | | | | | | | function. * Add a better test for deepcopying. * Add tests to show the __init__() function works like it does for list and tuple. Add related test. * Have shallow copies of frozensets return self. Add related test. * Have frozenset(f) return f if f is already a frozenset. Add related test. * Beefed-up some existing tests. | |||||
* | Extend temporary hashability to remove() and discard(). | Raymond Hettinger | 2003-11-22 | 1 | -11/+52 | |
| | | | | Brings the functionality back in line with sets.py. | |||||
* | Allow temporary hashability for the __contains__ test. | Raymond Hettinger | 2003-11-21 | 1 | -1/+17 | |
| | | | | (Requested by Alex Martelli.) | |||||
* | issubset() and issuperset() to work with general iterables | Raymond Hettinger | 2003-11-21 | 1 | -5/+15 | |
| | ||||||
* | Three minor performance improvements: | Raymond Hettinger | 2003-11-20 | 1 | -12/+41 | |
| | | | | | | | | | | * Improve the hash function to increase the chance that distinct sets will have distinct xor'd hash totals. * Use PyDict_Merge where possible (it is faster than an equivalent iter/set pair). * Don't rebuild dictionaries where the input already has one. | |||||
* | Implement straightforward suggestions from gcc warnings (remove unused | Guido van Rossum | 2003-11-18 | 1 | -3/+2 | |
| | | | | variable, add extra braces). | |||||
* | Use PySequence_Contains() instead of direct access macro. | Raymond Hettinger | 2003-11-18 | 1 | -11/+5 | |
| | ||||||
* | Various fixups (most suggested by Armin Rigo). | Raymond Hettinger | 2003-11-17 | 1 | -40/+66 | |
| | ||||||
* | Fix output spacing typo | Raymond Hettinger | 2003-11-16 | 1 | -1/+1 | |
| | ||||||
* | * Migrate set() and frozenset() from the sandbox. | Raymond Hettinger | 2003-11-16 | 1 | -0/+1073 | |
* Install the unittests, docs, newsitem, include file, and makefile update. * Exercise the new functions whereever sets.py was being used. Includes the docs for libfuncs.tex. Separate docs for the types are forthcoming. |