[Python-checkins] python/dist/src/Lib profile.py,1.58,1.59

jlgijsbers at users.sourceforge.net jlgijsbers at users.sourceforge.net
Sun Jan 9 02:58:05 CET 2005


Update of /cvsroot/python/python/dist/src/Lib
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5785

Modified Files:
	profile.py 
Log Message:
Move code in __name__ == '__main__' block into main() function, rewrite code so
there's no need to subclass OptionParser.


Index: profile.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/profile.py,v
retrieving revision 1.58
retrieving revision 1.59
diff -u -d -r1.58 -r1.59
--- profile.py	12 Jul 2004 23:38:01 -0000	1.58
+++ profile.py	9 Jan 2005 01:58:02 -0000	1.59
@@ -583,31 +583,29 @@
 def Stats(*args):
     print 'Report generating functions are in the "pstats" module\a'
 
-
-# When invoked as main program, invoke the profiler on a script
-if __name__ == '__main__':
+def main():
     usage = "profile.py [-o output_file_path] [-s sort] scriptfile [arg] ..."
-    if not sys.argv[1:]:
-        print "Usage: ", usage
-        sys.exit(2)
-
-    class ProfileParser(OptionParser):
-        def __init__(self, usage):
-            OptionParser.__init__(self)
-            self.usage = usage
-
-    parser = ProfileParser(usage)
+    parser = OptionParser(usage=usage)
     parser.allow_interspersed_args = False
     parser.add_option('-o', '--outfile', dest="outfile",
         help="Save stats to <outfile>", default=None)
     parser.add_option('-s', '--sort', dest="sort",
         help="Sort order when printing to stdout, based on pstats.Stats class", default=-1)
-
+    
+    if not sys.argv[1:]:
+        parser.print_usage()
+        sys.exit(2)
+    
     (options, args) = parser.parse_args()
     sys.argv[:] = args
-
+    
     if (len(sys.argv) > 0):
         sys.path.insert(0, os.path.dirname(sys.argv[0]))
         run('execfile(%r)' % (sys.argv[0],), options.outfile, options.sort)
     else:
-        print "Usage: ", usage
+        parser.print_usage()
+    return parser
+
+# When invoked as main program, invoke the profiler on a script
+if __name__ == '__main__':
+    main()



More information about the Python-checkins mailing list