[Python-Dev] Creating dicts from dict subclasses
Walter Dörwald
walter at livinglogic.de
Wed Dec 13 17:57:16 CET 2006
More information about the Python-Dev mailing list
Wed Dec 13 17:57:16 CET 2006
- Previous message: [Python-Dev] Open CPython VM for type information
- Next message: [Python-Dev] Creating dicts from dict subclasses
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
I tried to reimplement weakref.WeakValueDictionary as a subclass of
dict. The test passes except for one problem: To compare results
test_weakref.py converts a weakdict to a real dict via dict(weakdict).
This no longer works because PyDict_Merge() does a PyDict_Check() on the
argument and then ignores all overwritten methods. (The old version
worked because UserDict.UserDict was used).
The simplest solution is to replace the PyDict_Check() call with
PyDict_CheckExact(), but this might slow things down too much, because
the fallback code basically does:
for key in iter(arg.keys()):
self[key] = arg.__getitem__(key)
Why can't we use:
for key in iter(arg):
self[key] = arg.__getitem__(key)
instead?
Servus,
Walter
- Previous message: [Python-Dev] Open CPython VM for type information
- Next message: [Python-Dev] Creating dicts from dict subclasses
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-Dev mailing list