Show More
@@ -78,7 +78,7 b' python-profiler package from non-free.""")' | |||||
78 | @skip_doctest |
|
78 | @skip_doctest | |
79 | @line_cell_magic |
|
79 | @line_cell_magic | |
80 | def prun(self, parameter_s='', cell=None, user_mode=True, |
|
80 | def prun(self, parameter_s='', cell=None, user_mode=True, | |
81 | opts=None,arg_lst=None,prog_ns=None): |
|
81 | opts=None,arg_lst=None,prog_ns=None, namespace=None): | |
82 |
|
82 | |||
83 | """Run a statement through the python code profiler. |
|
83 | """Run a statement through the python code profiler. | |
84 |
|
84 | |||
@@ -187,7 +187,9 b' python-profiler package from non-free.""")' | |||||
187 | namespace = self.shell.user_ns |
|
187 | namespace = self.shell.user_ns | |
188 | if cell is not None: |
|
188 | if cell is not None: | |
189 | arg_str += '\n' + cell |
|
189 | arg_str += '\n' + cell | |
190 | else: # called to run a program by %run -p |
|
190 | elif namespace is not None: # called to run a program by %run -p | |
|
191 | arg_str = cell | |||
|
192 | else: | |||
191 | try: |
|
193 | try: | |
192 | filename = get_py_filename(arg_lst[0]) |
|
194 | filename = get_py_filename(arg_lst[0]) | |
193 | except IOError as e: |
|
195 | except IOError as e: | |
@@ -545,7 +547,21 b' python-profiler package from non-free.""")' | |||||
545 | stats = None |
|
547 | stats = None | |
546 | with self.shell.readline_no_record: |
|
548 | with self.shell.readline_no_record: | |
547 | if 'p' in opts: |
|
549 | if 'p' in opts: | |
548 | stats = self.prun('', None, False, opts, arg_lst, prog_ns) |
|
550 | if 'm' in opts: | |
|
551 | code = 'run_module(modulename, prog_ns)' | |||
|
552 | prun_ns = { | |||
|
553 | 'run_module': self.shell.safe_run_module, | |||
|
554 | 'prog_ns': prog_ns, | |||
|
555 | 'modulename': modulename, | |||
|
556 | } | |||
|
557 | else: | |||
|
558 | code = 'execfile(filename, prog_ns)' | |||
|
559 | prun_ns = { | |||
|
560 | 'execfile': self.shell.safe_execfile, | |||
|
561 | 'prog_ns': prog_ns, | |||
|
562 | 'filename': get_py_filename(filename), | |||
|
563 | } | |||
|
564 | stats = self.prun('', code, False, opts, namespace=prun_ns) | |||
549 | else: |
|
565 | else: | |
550 | if 'd' in opts: |
|
566 | if 'd' in opts: | |
551 | deb = debugger.Pdb(self.shell.colors) |
|
567 | deb = debugger.Pdb(self.shell.colors) |
General Comments 0
You need to be logged in to leave comments.
Login now