[ZODB-Dev] BTrees and setdefault
Victor Safronovich
vsafronovich at naumen.ru
Sun Aug 28 04:13:08 EDT 2005
Hello zodb-dev,
[Tim Peters]
TP> Despite that the message I linked to above was written last October, there
TP> are still only about a dozen total uses of setdefault() in the Python core,
TP> and there are still many more lines of code in the core implementing the
TP> thing than there are lines of code using it. I remain -0 on the idea (which
TP> means it's OK by me, I just prefer not to bother). Jim's +1 wipes out any
TP> number of -0 votes ;-).
+1 for adding setdefault for BTrees.
the code below
if not self._index.has_key(comp):
self._index[comp] = IOBTree()
if not self._index[comp].has_key(level):
self._index[comp][level] = IITreeSet()
self._index[comp][level].insert(id)
may change to
comp = self._index.setdefault( comp, IOBTree() )
level = comp.setdefault( level, IITreeSet() )
level.insert( id )
which looks much better.
--
Best regards,
Victor Safronovich
NauMen.NauDoc.SoftwareDeveloper http://www.naumen.ru
More information about the ZODB-Dev
mailing list