From 95bdc58c42e594d09d7c29784d15b5c9afe3e78e Mon Sep 17 00:00:00 2001 From: Vincent Pelletier <vincent@nexedi.com> Date: Tue, 9 Oct 2007 09:17:34 +0000 Subject: [PATCH] Avoid overcomplexification. Use python-ish code. Factorise calls to isinstance. Split comment to match code with better granularity. git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@16900 20353a03-c40f-0410-a6d1-a30d3c3de9de --- product/HBTreeFolder2/HBTreeFolder2.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/product/HBTreeFolder2/HBTreeFolder2.py b/product/HBTreeFolder2/HBTreeFolder2.py index b53710b37a..3b08ac9a87 100644 --- a/product/HBTreeFolder2/HBTreeFolder2.py +++ b/product/HBTreeFolder2/HBTreeFolder2.py @@ -242,17 +242,18 @@ class HBTreeFolder2Base (Persistent): """ htree = self._htree id_list = self.hashId(id) - for idx in xrange(len(id_list[0:-1])): + for idx in xrange(len(id_list) - 1): sub_id = id_list[idx] - if not htree.has_key(sub_id): - # Create a new index and index it + if sub_id not in htree: + # Create a new level htree[sub_id] = OOBTree() - if isinstance(sub_id, int) or isinstance(sub_id, long): + if isinstance(sub_id, (int, long)): tree_id = 0 for id in id_list[:idx+1]: tree_id = tree_id + id * MAX_OBJECT_PER_LEVEL else: tree_id = H_SEPARATOR.join(id_list[:idx+1]) + # Index newly created level self._tree_list[tree_id] = None htree = htree[sub_id] -- 2.30.9