##// END OF EJS Templates
lsprofcalltree: use print function...
Gregory Szorc -
r27618:5a988b3c default
parent child Browse files
Show More
@@ -10,7 +10,7 b' This software may be used and distribute'
10 of the GNU General Public License, incorporated herein by reference.
10 of the GNU General Public License, incorporated herein by reference.
11 """
11 """
12
12
13 from __future__ import absolute_import
13 from __future__ import absolute_import, print_function
14
14
15 def label(code):
15 def label(code):
16 if isinstance(code, str):
16 if isinstance(code, str):
@@ -27,7 +27,7 b' class KCacheGrind(object):'
27
27
28 def output(self, out_file):
28 def output(self, out_file):
29 self.out_file = out_file
29 self.out_file = out_file
30 print >> out_file, 'events: Ticks'
30 print('events: Ticks', file=out_file)
31 self._print_summary()
31 self._print_summary()
32 for entry in self.data:
32 for entry in self.data:
33 self._entry(entry)
33 self._entry(entry)
@@ -37,24 +37,23 b' class KCacheGrind(object):'
37 for entry in self.data:
37 for entry in self.data:
38 totaltime = int(entry.totaltime * 1000)
38 totaltime = int(entry.totaltime * 1000)
39 max_cost = max(max_cost, totaltime)
39 max_cost = max(max_cost, totaltime)
40 print >> self.out_file, 'summary: %d' % (max_cost,)
40 print('summary: %d' % max_cost, file=self.out_file)
41
41
42 def _entry(self, entry):
42 def _entry(self, entry):
43 out_file = self.out_file
43 out_file = self.out_file
44
44
45 code = entry.code
45 code = entry.code
46 #print >> out_file, 'ob=%s' % (code.co_filename,)
47 if isinstance(code, str):
46 if isinstance(code, str):
48 print >> out_file, 'fi=~'
47 print('fi=~', file=out_file)
49 else:
48 else:
50 print >> out_file, 'fi=%s' % (code.co_filename,)
49 print('fi=%s' % code.co_filename, file=out_file)
51 print >> out_file, 'fn=%s' % (label(code),)
50 print('fn=%s' % label(code), file=out_file)
52
51
53 inlinetime = int(entry.inlinetime * 1000)
52 inlinetime = int(entry.inlinetime * 1000)
54 if isinstance(code, str):
53 if isinstance(code, str):
55 print >> out_file, '0 ', inlinetime
54 print('0 ', inlinetime, file=out_file)
56 else:
55 else:
57 print >> out_file, '%d %d' % (code.co_firstlineno, inlinetime)
56 print('%d %d' % (code.co_firstlineno, inlinetime), file=out_file)
58
57
59 # recursive calls are counted in entry.calls
58 # recursive calls are counted in entry.calls
60 if entry.calls:
59 if entry.calls:
@@ -69,20 +68,19 b' class KCacheGrind(object):'
69
68
70 for subentry in calls:
69 for subentry in calls:
71 self._subentry(lineno, subentry)
70 self._subentry(lineno, subentry)
72 print >> out_file
71 print(file=out_file)
73
72
74 def _subentry(self, lineno, subentry):
73 def _subentry(self, lineno, subentry):
75 out_file = self.out_file
74 out_file = self.out_file
76 code = subentry.code
75 code = subentry.code
77 #print >> out_file, 'cob=%s' % (code.co_filename,)
76 print('cfn=%s' % label(code), file=out_file)
78 print >> out_file, 'cfn=%s' % (label(code),)
79 if isinstance(code, str):
77 if isinstance(code, str):
80 print >> out_file, 'cfi=~'
78 print('cfi=~', file=out_file)
81 print >> out_file, 'calls=%d 0' % (subentry.callcount,)
79 print('calls=%d 0' % subentry.callcount, file=out_file)
82 else:
80 else:
83 print >> out_file, 'cfi=%s' % (code.co_filename,)
81 print('cfi=%s' % code.co_filename, file=out_file)
84 print >> out_file, 'calls=%d %d' % (
82 print('calls=%d %d' % (
85 subentry.callcount, code.co_firstlineno)
83 subentry.callcount, code.co_firstlineno), file=out_file)
86
84
87 totaltime = int(subentry.totaltime * 1000)
85 totaltime = int(subentry.totaltime * 1000)
88 print >> out_file, '%d %d' % (lineno, totaltime)
86 print('%d %d' % (lineno, totaltime), file=out_file)
@@ -100,7 +100,6 b''
100 i18n/polib.py not using absolute_import
100 i18n/polib.py not using absolute_import
101 mercurial/cmdutil.py not using absolute_import
101 mercurial/cmdutil.py not using absolute_import
102 mercurial/commands.py not using absolute_import
102 mercurial/commands.py not using absolute_import
103 mercurial/lsprofcalltree.py requires print_function
104 mercurial/mail.py requires print_function
103 mercurial/mail.py requires print_function
105 setup.py not using absolute_import
104 setup.py not using absolute_import
106 tests/filterpyflakes.py requires print_function
105 tests/filterpyflakes.py requires print_function
General Comments 0
You need to be logged in to leave comments. Login now