My initial updates to depgraph2dot.py and py2depgraph.py.
[depgraph.git] / py2depgraph.py
index 5e97e06bf233b60c6fc2e404343d2368f7721b5f..f2bfe29a14d16735f6a4f35ad796ee316a30b9aa 100644 (file)
@@ -1,4 +1,5 @@
-# Copyright 2004 Toby Dickenson
+# Copyright 2004      Toby Dickenson
+# Copyright 2008-2010 W. Trevor King
 #
 # Permission is hereby granted, free of charge, to any person obtaining
 # a copy of this software and associated documentation files (the
@@ -26,6 +27,7 @@ class mymf(modulefinder.ModuleFinder):
     def __init__(self,*args,**kwargs):
         self._depgraph = {}
         self._types = {}
+        self._paths = {}
         self._last_caller = None
         modulefinder.ModuleFinder.__init__(self,*args,**kwargs)
         
@@ -47,6 +49,7 @@ class mymf(modulefinder.ModuleFinder):
         r = modulefinder.ModuleFinder.load_module(self, fqname, fp, pathname, (suffix, mode, type))
         if r is not None:
             self._types[r.__name__] = type
+            self._paths[r.__name__] = pathname
         return r
         
         
@@ -56,7 +59,7 @@ def main(argv):
     exclude = []
     mf = mymf(path,debug,exclude)
     mf.run_script(argv[0])
-    pprint.pprint({'depgraph':mf._depgraph,'types':mf._types})
+    pprint.pprint({'depgraph':mf._depgraph,'types':mf._types,'paths':mf._paths})
     
 if __name__=='__main__':
-    main(sys.argv[1:])
\ No newline at end of file
+    main(sys.argv[1:])