]> granicus.if.org Git - python/commitdiff
Sort classes by fully qualified name. In the common case where you are
authorSkip Montanaro <skip@pobox.com>
Mon, 20 Sep 2004 15:40:38 +0000 (15:40 +0000)
committerSkip Montanaro <skip@pobox.com>
Mon, 20 Sep 2004 15:40:38 +0000 (15:40 +0000)
displaying a set of classes from one module it doesn't matter, but if you
are displaying a large class tree from multiple modules it improves the
display to sort by module.name.

Lib/inspect.py

index 5e3f7e2c901fc1777316691a12f8fa02d0afb9ed..101c7ec08bc25b72b41693e3964d10b031b00890 100644 (file)
@@ -557,7 +557,8 @@ def getsource(object):
 def walktree(classes, children, parent):
     """Recursive helper function for getclasstree()."""
     results = []
-    classes.sort(key=attrgetter('__name__'))
+    classes.sort(lambda a, b: cmp("%s.%s" % (a.__module__, a.__name__),
+                                  "%s.%s" % (b.__module__, b.__name__)))
     for c in classes:
         results.append((c, c.__bases__))
         if c in children: