From: Fred Drake Date: Wed, 29 May 2002 19:40:36 +0000 (+0000) Subject: Minor cleanup: X-Git-Tag: v2.3c1~5563 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=127ee1607f41da6a9f914c8de7c3638b6d6490cc;p=thirdparty%2FPython%2Fcpython.git Minor cleanup: - Add comment explaining the structure of the stack. - Minor optimization: make stack tuple directly usable as part of return value for enter/exit events. --- diff --git a/Lib/hotshot/log.py b/Lib/hotshot/log.py index c95f7f433ea7..9e2f0688969b 100644 --- a/Lib/hotshot/log.py +++ b/Lib/hotshot/log.py @@ -41,6 +41,12 @@ class LogReader: self.cwd = self._info['current-directory'] else: self.cwd = None + + # This mirrors the call stack of the profiled code as the log + # is read back in. It contains tuples of the form: + # + # (file name, line number of function def, function name) + # self._stack = [] self._append = self._stack.append self._pop = self._stack.pop @@ -99,15 +105,15 @@ class LogReader: if what == WHAT_ENTER: filename, funcname = self._decode_location(fileno, lineno) - self._append((filename, funcname, lineno)) - return what, (filename, lineno, funcname), tdelta + t = (filename, lineno, funcname) + self._append(t) + return what, t, tdelta if what == WHAT_EXIT: - filename, funcname, lineno = self._pop() - return what, (filename, lineno, funcname), tdelta + return what, self._pop(), tdelta if what == WHAT_LINENO: - filename, funcname, firstlineno = self._stack[-1] + filename, firstlineno, funcname = self._stack[-1] return what, (filename, lineno, funcname), tdelta if what == WHAT_DEFINE_FILE: