summaryrefslogtreecommitdiffstats
path: root/Lib/weakref.py
Commit message (Collapse)AuthorAgeFilesLines
* WeakKeyDictionary.has_key(): If the key being tested is not weaklyFred Drake2001-11-061-1/+5
| | | | | | referencable (weakref.ref() raises TypeError), return 0 instead of propogating the TypeError. This closes SF bug #478536; bugfix candidate.
* ReferenceError is now built-in, so pick it up from the right place.Fred Drake2001-10-051-1/+3
| | | | It still needs to be here to preserve the API.
* Clean up circular references in the Weak*Dictionary classes; this avoidsFred Drake2001-09-281-11/+14
| | | | | | | | depending on the cycle detector code in the library implementation. This is a *slightly* different patch than SF patch #417795, but takes the same approach. (This version avoids calling the __len__() method of the dict in the remove() functions.) This closes SF patch #417795.
* Add __delitem__() support for WeakKeyDictionary.Fred Drake2001-09-061-0/+7
| | | | This closes SF bug #458860.
* Make sure that WeakValueDictionary[] raises KeyError instead of TypeErrorFred Drake2001-08-031-1/+1
| | | | for keys that are not in the dictionary.
* Added iterator support to the Weak*Dictionary classes.Fred Drake2001-05-021-0/+73
|
* Weak*Dictionary: Added docstrings to the classes.Fred Drake2001-04-191-24/+36
| | | | | | | | | | | | | | | | Weak*Dictionary.update(): No longer create a temporary list to hold the things that will be stuffed into the underlying dictionary. This had been done so that if any of the objects used as the weakly-held value was not weakly-referencable, no updates would take place (TypeError would be raised). With this change, TypeError will still be raised but a partial update could occur. This is more like other .update() implementations. Thoughout, use of the name "ref" as a local variable has been removed. The original use of the name occurred when the function to create a weak reference was called "new"; the overloaded use of the name could be confusing for someone reading the code. "ref" used as a variable name has been replaced with "wr" (for 'weak reference').
* Weak*Dictionary.update(): Fix calls to [].append() to only have oneFred Drake2001-04-161-4/+15
| | | | | | | | parameter. Weak*Dictionary.get(): Make the second parameter optional. WeakKeyDictionary.has_key(), .keys(): Make these actually work!
* mapping(): Remove this function since it does not add anything to the API.Fred Drake2001-04-101-8/+1
|
* final round of __all__ lists (I hope) - skipped urllib2 because Moshe may beSkip Montanaro2001-03-011-0/+3
| | | | giving it a slight facelift
* Change WeakDictionary to WeakValueDictionary in a couple more places.Fred Drake2001-03-011-4/+7
| | | | | WeakValueDictionary.copy(), WeakKeyDictionary.copy(): Actually return the copy!
* Patch #403985: Add support for weak-keyed dictionariesMartin v. Löwis2001-02-271-3/+60
|
* Ouch! I need a better test suite for this. ;-(Fred Drake2001-02-021-1/+0
|
* WeakDictionary.items(): Do not allow (key,ref) pairs to leak out forFred Drake2001-02-021-3/+3
| | | | dead references.
* PEP 205, Weak References -- initial checkin.Fred Drake2001-02-011-0/+117