ancestor: use set instead of dict
authorBenoit Boissinot <benoit.boissinot@ens-lyon.org>
Sun, 17 May 2009 03:53:13 +0200
changeset 8465 23429ebd3f9d
parent 8464 7af92e70bb25
child 8466 afb3e504b558
ancestor: use set instead of dict
mercurial/ancestor.py
--- a/mercurial/ancestor.py	Sun May 17 03:49:59 2009 +0200
+++ b/mercurial/ancestor.py	Sun May 17 03:53:13 2009 +0200
@@ -42,24 +42,24 @@
     # traverse ancestors in order of decreasing distance from root
     def ancestors(vertex):
         h = [(depth[vertex], vertex)]
-        seen = {}
+        seen = set()
         while h:
             d, n = heapq.heappop(h)
             if n not in seen:
-                seen[n] = 1
+                seen.add(n)
                 yield (d, n)
                 for p in parentcache[n]:
                     heapq.heappush(h, (depth[p], p))
 
     def generations(vertex):
-        sg, s = None, {}
+        sg, s = None, set()
         for g, v in ancestors(vertex):
             if g != sg:
                 if sg:
                     yield sg, s
-                sg, s = g, {v:1}
+                sg, s = g, set((v,))
             else:
-                s[v] = 1
+                s.add(v)
         yield sg, s
 
     x = generations(a)