ruby-prof 0.13.1 → 0.14.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (85) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES +14 -0
  3. data/README.rdoc +1 -1
  4. data/Rakefile +2 -3
  5. data/bin/ruby-prof +4 -4
  6. data/bin/ruby-prof-check-trace +45 -0
  7. data/doc/LICENSE.html +49 -88
  8. data/doc/README_rdoc.html +92 -106
  9. data/doc/Rack.html +47 -116
  10. data/doc/Rack/RubyProf.html +119 -174
  11. data/doc/RubyProf.html +184 -216
  12. data/doc/RubyProf/AbstractPrinter.html +131 -162
  13. data/doc/RubyProf/AggregateCallInfo.html +136 -166
  14. data/doc/RubyProf/CallInfo.html +113 -154
  15. data/doc/RubyProf/CallInfoPrinter.html +56 -123
  16. data/doc/RubyProf/CallInfoVisitor.html +87 -216
  17. data/doc/RubyProf/CallStackPrinter.html +222 -215
  18. data/doc/RubyProf/CallTreePrinter.html +91 -142
  19. data/doc/RubyProf/Cmd.html +115 -157
  20. data/doc/RubyProf/DotPrinter.html +88 -140
  21. data/doc/RubyProf/FlatPrinter.html +66 -129
  22. data/doc/RubyProf/FlatPrinterWithLineNumbers.html +69 -132
  23. data/doc/RubyProf/GraphHtmlPrinter.html +115 -166
  24. data/doc/RubyProf/GraphPrinter.html +58 -125
  25. data/doc/RubyProf/MethodInfo.html +147 -172
  26. data/doc/RubyProf/MultiPrinter.html +104 -150
  27. data/doc/RubyProf/Profile.html +125 -179
  28. data/doc/RubyProf/ProfileTask.html +117 -157
  29. data/doc/RubyProf/Test.html +115 -154
  30. data/doc/RubyProf/Thread.html +87 -147
  31. data/doc/created.rid +13 -14
  32. data/doc/examples/flat_txt.html +51 -90
  33. data/doc/examples/graph_html.html +852 -0
  34. data/doc/examples/graph_txt.html +64 -92
  35. data/doc/fonts.css +167 -0
  36. data/doc/fonts/Lato-Light.ttf +0 -0
  37. data/doc/fonts/Lato-LightItalic.ttf +0 -0
  38. data/doc/fonts/Lato-Regular.ttf +0 -0
  39. data/doc/fonts/Lato-RegularItalic.ttf +0 -0
  40. data/doc/fonts/SourceCodePro-Bold.ttf +0 -0
  41. data/doc/fonts/SourceCodePro-Regular.ttf +0 -0
  42. data/doc/images/add.png +0 -0
  43. data/doc/images/arrow_up.png +0 -0
  44. data/doc/images/delete.png +0 -0
  45. data/doc/images/tag_blue.png +0 -0
  46. data/doc/index.html +75 -65
  47. data/doc/js/darkfish.js +0 -15
  48. data/doc/js/search.js +20 -5
  49. data/doc/js/search_index.js +1 -1
  50. data/doc/rdoc.css +255 -218
  51. data/doc/table_of_contents.html +751 -353
  52. data/ext/ruby_prof/extconf.rb +20 -22
  53. data/ext/ruby_prof/rp_measure_allocations.c +9 -5
  54. data/ext/ruby_prof/rp_measure_gc_runs.c +8 -0
  55. data/ext/ruby_prof/rp_measure_gc_time.c +5 -2
  56. data/ext/ruby_prof/rp_measure_wall_time.c +1 -0
  57. data/ext/ruby_prof/rp_method.c +0 -9
  58. data/ext/ruby_prof/rp_method.h +1 -6
  59. data/ext/ruby_prof/ruby_prof.c +32 -112
  60. data/ext/ruby_prof/ruby_prof.h +9 -10
  61. data/lib/ruby-prof.rb +2 -1
  62. data/lib/ruby-prof/aggregate_call_info.rb +4 -6
  63. data/lib/ruby-prof/call_info_visitor.rb +42 -44
  64. data/lib/ruby-prof/printers/graph_html_printer.rb +0 -8
  65. data/lib/ruby-prof/profile.rb +4 -4
  66. data/lib/ruby-prof/rack.rb +47 -47
  67. data/lib/ruby-prof/task.rb +0 -0
  68. data/lib/ruby-prof/thread.rb +22 -22
  69. data/lib/ruby-prof/version.rb +3 -0
  70. data/ruby-prof.gemspec +7 -11
  71. data/test/call_info_test.rb +78 -78
  72. data/test/call_info_visitor_test.rb +31 -31
  73. data/test/fiber_test.rb +2 -2
  74. data/test/measure_gc_runs_test.rb +1 -1
  75. data/test/measure_process_time_test.rb +7 -6
  76. data/test/printers_test.rb +4 -8
  77. data/test/recursive_test.rb +5 -9
  78. data/test/test_helper.rb +1 -1
  79. data/test/unique_call_path_test.rb +7 -29
  80. data/test/yarv_test.rb +55 -0
  81. metadata +63 -55
  82. data/ext/ruby_prof/version.h +0 -7
  83. data/lib/ruby-prof/test.rb +0 -150
  84. data/test/exec_test.rb +0 -14
  85. data/test/test_suite.rb +0 -37
@@ -2,70 +2,71 @@
2
2
 
3
3
  <html>
4
4
  <head>
5
- <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
5
+ <meta charset="UTF-8">
6
6
 
7
7
  <title>class RubyProf::CallStackPrinter - ruby-prof</title>
8
8
 
9
- <link type="text/css" media="screen" href="../rdoc.css" rel="stylesheet">
9
+ <link href="../fonts.css" rel="stylesheet">
10
+ <link href="../rdoc.css" rel="stylesheet">
10
11
 
11
12
  <script type="text/javascript">
12
13
  var rdoc_rel_prefix = "../";
13
14
  </script>
14
15
 
15
- <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
16
- <script type="text/javascript" charset="utf-8" src="../js/navigation.js"></script>
17
- <script type="text/javascript" charset="utf-8" src="../js/search_index.js"></script>
18
- <script type="text/javascript" charset="utf-8" src="../js/search.js"></script>
19
- <script type="text/javascript" charset="utf-8" src="../js/searcher.js"></script>
20
- <script type="text/javascript" charset="utf-8" src="../js/darkfish.js"></script>
16
+ <script src="../js/jquery.js"></script>
17
+ <script src="../js/navigation.js"></script>
18
+ <script src="../js/search_index.js"></script>
19
+ <script src="../js/search.js"></script>
20
+ <script src="../js/searcher.js"></script>
21
+ <script src="../js/darkfish.js"></script>
21
22
 
22
23
 
23
- <body id="top" class="class">
24
- <nav id="metadata">
25
- <nav id="home-section" class="section">
26
- <h3 class="section-header">
27
- <a href="../index.html">Home</a>
24
+ <body id="top" role="document" class="class">
25
+ <nav role="navigation">
26
+ <div id="project-navigation">
27
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
28
+ <h2>
29
+ <a href="../index.html" rel="home">Home</a>
30
+ </h2>
31
+
32
+ <div id="table-of-contents-navigation">
33
+ <a href="../table_of_contents.html#pages">Pages</a>
28
34
  <a href="../table_of_contents.html#classes">Classes</a>
29
35
  <a href="../table_of_contents.html#methods">Methods</a>
30
- </h3>
31
- </nav>
32
-
36
+ </div>
37
+ </div>
33
38
 
34
- <nav id="search-section" class="section project-section" class="initially-hidden">
39
+ <div id="search-section" role="search" class="project-section initially-hidden">
35
40
  <form action="#" method="get" accept-charset="utf-8">
36
- <h3 class="section-header">
37
- <input type="text" name="search" placeholder="Search" id="search-field"
41
+ <div id="search-field-wrapper">
42
+ <input id="search-field" role="combobox" aria-label="Search"
43
+ aria-autocomplete="list" aria-controls="search-results"
44
+ type="text" name="search" placeholder="Search" spellcheck="false"
38
45
  title="Type to search, Up and Down to navigate, Enter to load">
39
- </h3>
40
- </form>
46
+ </div>
41
47
 
42
- <ul id="search-results" class="initially-hidden"></ul>
43
- </nav>
44
-
45
-
46
- <div id="file-metadata">
47
- <nav id="file-list-section" class="section">
48
- <h3 class="section-header">Defined In</h3>
49
- <ul>
50
- <li>lib/ruby-prof/printers/call_stack_printer.rb
51
- </ul>
52
- </nav>
48
+ <ul id="search-results" aria-label="Search Results"
49
+ aria-busy="false" aria-expanded="false"
50
+ aria-atomic="false" class="initially-hidden"></ul>
51
+ </form>
52
+ </div>
53
53
 
54
-
55
54
  </div>
56
55
 
56
+
57
+
57
58
  <div id="class-metadata">
58
59
 
59
- <nav id="parent-class-section" class="section">
60
- <h3 class="section-header">Parent</h3>
60
+ <div id="parent-class-section" class="nav-section">
61
+ <h3>Parent</h3>
62
+
61
63
 
62
64
  <p class="link"><a href="AbstractPrinter.html">RubyProf::AbstractPrinter</a>
63
65
 
64
- </nav>
66
+ </div>
65
67
 
66
- <!-- Included Modules -->
67
- <nav id="includes-section" class="section">
68
- <h3 class="section-header">Included Modules</h3>
68
+ <div id="includes-section" class="nav-section">
69
+ <h3>Included Modules</h3>
69
70
 
70
71
  <ul class="link-list">
71
72
 
@@ -74,145 +75,77 @@
74
75
 
75
76
 
76
77
  </ul>
77
- </nav>
78
+ </div>
78
79
 
80
+
79
81
  <!-- Method Quickref -->
80
- <nav id="method-list-section" class="section">
81
- <h3 class="section-header">Methods</h3>
82
+ <div id="method-list-section" class="nav-section">
83
+ <h3>Methods</h3>
82
84
 
83
- <ul class="link-list">
85
+ <ul class="link-list" role="directory">
84
86
 
85
- <li><a href="#method-i-application">#application</a>
87
+ <li ><a href="#method-i-application">#application</a>
86
88
 
87
- <li><a href="#method-i-arguments">#arguments</a>
89
+ <li ><a href="#method-i-arguments">#arguments</a>
88
90
 
89
- <li><a href="#method-i-color">#color</a>
91
+ <li ><a href="#method-i-color">#color</a>
90
92
 
91
- <li><a href="#method-i-copy_image_files">#copy_image_files</a>
93
+ <li ><a href="#method-i-copy_image_files">#copy_image_files</a>
92
94
 
93
- <li><a href="#method-i-dump">#dump</a>
95
+ <li ><a href="#method-i-dump">#dump</a>
94
96
 
95
- <li><a href="#method-i-expansion">#expansion</a>
97
+ <li ><a href="#method-i-expansion">#expansion</a>
96
98
 
97
- <li><a href="#method-i-graph_link">#graph_link</a>
99
+ <li ><a href="#method-i-graph_link">#graph_link</a>
98
100
 
99
- <li><a href="#method-i-link">#link</a>
101
+ <li ><a href="#method-i-link">#link</a>
100
102
 
101
- <li><a href="#method-i-method_href">#method_href</a>
103
+ <li ><a href="#method-i-method_href">#method_href</a>
102
104
 
103
- <li><a href="#method-i-name">#name</a>
105
+ <li ><a href="#method-i-name">#name</a>
104
106
 
105
- <li><a href="#method-i-print">#print</a>
107
+ <li ><a href="#method-i-print">#print</a>
106
108
 
107
- <li><a href="#method-i-print_commands">#print_commands</a>
109
+ <li ><a href="#method-i-print_commands">#print_commands</a>
108
110
 
109
- <li><a href="#method-i-print_css">#print_css</a>
111
+ <li ><a href="#method-i-print_css">#print_css</a>
110
112
 
111
- <li><a href="#method-i-print_footer">#print_footer</a>
113
+ <li ><a href="#method-i-print_footer">#print_footer</a>
112
114
 
113
- <li><a href="#method-i-print_header">#print_header</a>
115
+ <li ><a href="#method-i-print_header">#print_header</a>
114
116
 
115
- <li><a href="#method-i-print_help">#print_help</a>
117
+ <li ><a href="#method-i-print_help">#print_help</a>
116
118
 
117
- <li><a href="#method-i-print_java_script">#print_java_script</a>
119
+ <li ><a href="#method-i-print_java_script">#print_java_script</a>
118
120
 
119
- <li><a href="#method-i-print_stack">#print_stack</a>
121
+ <li ><a href="#method-i-print_stack">#print_stack</a>
120
122
 
121
- <li><a href="#method-i-print_title_bar">#print_title_bar</a>
123
+ <li ><a href="#method-i-print_title_bar">#print_title_bar</a>
122
124
 
123
- <li><a href="#method-i-sum">#sum</a>
125
+ <li ><a href="#method-i-sum">#sum</a>
124
126
 
125
- <li><a href="#method-i-threshold">#threshold</a>
127
+ <li ><a href="#method-i-threshold">#threshold</a>
126
128
 
127
- <li><a href="#method-i-title">#title</a>
129
+ <li ><a href="#method-i-title">#title</a>
128
130
 
129
- <li><a href="#method-i-total_time">#total_time</a>
131
+ <li ><a href="#method-i-total_time">#total_time</a>
130
132
 
131
133
  </ul>
132
- </nav>
134
+ </div>
133
135
 
134
136
  </div>
135
-
136
- <div id="project-metadata">
137
- <nav id="fileindex-section" class="section project-section">
138
- <h3 class="section-header">Pages</h3>
139
-
140
- <ul>
141
-
142
- <li class="file"><a href="../LICENSE.html">LICENSE</a>
143
-
144
- <li class="file"><a href="../README_rdoc.html">README</a>
145
-
146
- <li class="file"><a href="../examples/flat_txt.html">flat</a>
147
-
148
- <li class="file"><a href="../examples/graph_txt.html">graph</a>
149
-
150
- </ul>
151
137
  </nav>
152
138
 
153
- <nav id="classindex-section" class="section project-section">
154
- <h3 class="section-header">Class and Module Index</h3>
139
+ <main role="main" aria-labelledby="class-RubyProf::CallStackPrinter">
140
+ <h1 id="class-RubyProf::CallStackPrinter" class="class">
141
+ class RubyProf::CallStackPrinter
142
+ </h1>
155
143
 
156
- <ul class="link-list">
157
-
158
- <li><a href="../RubyProf.html">RubyProf</a>
159
-
160
- <li><a href="../RubyProf/AbstractPrinter.html">RubyProf::AbstractPrinter</a>
161
-
162
- <li><a href="../RubyProf/AggregateCallInfo.html">RubyProf::AggregateCallInfo</a>
163
-
164
- <li><a href="../RubyProf/CallInfo.html">RubyProf::CallInfo</a>
165
-
166
- <li><a href="../RubyProf/CallInfoPrinter.html">RubyProf::CallInfoPrinter</a>
167
-
168
- <li><a href="../RubyProf/CallInfoVisitor.html">RubyProf::CallInfoVisitor</a>
169
-
170
- <li><a href="../RubyProf/CallStackPrinter.html">RubyProf::CallStackPrinter</a>
171
-
172
- <li><a href="../RubyProf/CallTreePrinter.html">RubyProf::CallTreePrinter</a>
173
-
174
- <li><a href="../RubyProf/Cmd.html">RubyProf::Cmd</a>
175
-
176
- <li><a href="../RubyProf/DotPrinter.html">RubyProf::DotPrinter</a>
177
-
178
- <li><a href="../RubyProf/FlatPrinter.html">RubyProf::FlatPrinter</a>
179
-
180
- <li><a href="../RubyProf/FlatPrinterWithLineNumbers.html">RubyProf::FlatPrinterWithLineNumbers</a>
181
-
182
- <li><a href="../RubyProf/GraphHtmlPrinter.html">RubyProf::GraphHtmlPrinter</a>
183
-
184
- <li><a href="../RubyProf/GraphPrinter.html">RubyProf::GraphPrinter</a>
185
-
186
- <li><a href="../RubyProf/MethodInfo.html">RubyProf::MethodInfo</a>
187
-
188
- <li><a href="../RubyProf/MultiPrinter.html">RubyProf::MultiPrinter</a>
189
-
190
- <li><a href="../RubyProf/Profile.html">RubyProf::Profile</a>
191
-
192
- <li><a href="../RubyProf/ProfileTask.html">RubyProf::ProfileTask</a>
193
-
194
- <li><a href="../RubyProf/Test.html">RubyProf::Test</a>
195
-
196
- <li><a href="../RubyProf/Thread.html">RubyProf::Thread</a>
197
-
198
- <li><a href="../Rack.html">Rack</a>
199
-
200
- <li><a href="../Rack/RubyProf.html">Rack::RubyProf</a>
201
-
202
- </ul>
203
- </nav>
204
-
205
- </div>
206
- </nav>
207
-
208
- <div id="documentation">
209
- <h1 class="class">class RubyProf::CallStackPrinter</h1>
210
-
211
- <div id="description" class="description">
144
+ <section class="description">
212
145
 
213
146
  <p>prints a HTML visualization of the call tree</p>
214
147
 
215
- </div><!-- description -->
148
+ </section>
216
149
 
217
150
 
218
151
 
@@ -226,10 +159,11 @@
226
159
 
227
160
 
228
161
 
229
- <!-- Methods -->
230
162
 
231
- <section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
232
- <h3 class="section-header">Public Instance Methods</h3>
163
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
164
+ <header>
165
+ <h3>Public Instance Methods</h3>
166
+ </header>
233
167
 
234
168
 
235
169
  <div id="method-i-application" class="method-detail ">
@@ -237,7 +171,9 @@
237
171
  <div class="method-heading">
238
172
  <span class="method-name">application</span><span
239
173
  class="method-args">()</span>
174
+
240
175
  <span class="method-click-advice">click to toggle source</span>
176
+
241
177
  </div>
242
178
 
243
179
 
@@ -245,6 +181,7 @@
245
181
 
246
182
 
247
183
 
184
+
248
185
 
249
186
 
250
187
  <div class="method-source-code" id="application-source">
@@ -252,14 +189,14 @@
252
189
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">application</span>
253
190
  <span class="ruby-ivar">@options</span>[<span class="ruby-value">:application</span>] <span class="ruby-operator">||</span> <span class="ruby-identifier">$PROGRAM_NAME</span>
254
191
  <span class="ruby-keyword">end</span></pre>
255
- </div><!-- application-source -->
192
+ </div>
256
193
 
257
194
  </div>
258
195
 
259
196
 
260
197
 
261
198
 
262
- </div><!-- application-method -->
199
+ </div>
263
200
 
264
201
 
265
202
  <div id="method-i-arguments" class="method-detail ">
@@ -267,7 +204,9 @@
267
204
  <div class="method-heading">
268
205
  <span class="method-name">arguments</span><span
269
206
  class="method-args">()</span>
207
+
270
208
  <span class="method-click-advice">click to toggle source</span>
209
+
271
210
  </div>
272
211
 
273
212
 
@@ -275,6 +214,7 @@
275
214
 
276
215
 
277
216
 
217
+
278
218
 
279
219
 
280
220
  <div class="method-source-code" id="arguments-source">
@@ -282,14 +222,14 @@
282
222
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">arguments</span>
283
223
  <span class="ruby-constant">ARGV</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">&#39; &#39;</span>)
284
224
  <span class="ruby-keyword">end</span></pre>
285
- </div><!-- arguments-source -->
225
+ </div>
286
226
 
287
227
  </div>
288
228
 
289
229
 
290
230
 
291
231
 
292
- </div><!-- arguments-method -->
232
+ </div>
293
233
 
294
234
 
295
235
  <div id="method-i-color" class="method-detail ">
@@ -297,7 +237,9 @@
297
237
  <div class="method-heading">
298
238
  <span class="method-name">color</span><span
299
239
  class="method-args">(p)</span>
240
+
300
241
  <span class="method-click-advice">click to toggle source</span>
242
+
301
243
  </div>
302
244
 
303
245
 
@@ -305,6 +247,7 @@
305
247
 
306
248
 
307
249
 
250
+
308
251
 
309
252
 
310
253
  <div class="method-source-code" id="color-source">
@@ -321,14 +264,14 @@
321
264
  <span class="ruby-node">&quot;#{i/10}&quot;</span>
322
265
  <span class="ruby-keyword">end</span>
323
266
  <span class="ruby-keyword">end</span></pre>
324
- </div><!-- color-source -->
267
+ </div>
325
268
 
326
269
  </div>
327
270
 
328
271
 
329
272
 
330
273
 
331
- </div><!-- color-method -->
274
+ </div>
332
275
 
333
276
 
334
277
  <div id="method-i-copy_image_files" class="method-detail ">
@@ -336,7 +279,9 @@
336
279
  <div class="method-heading">
337
280
  <span class="method-name">copy_image_files</span><span
338
281
  class="method-args">()</span>
282
+
339
283
  <span class="method-click-advice">click to toggle source</span>
284
+
340
285
  </div>
341
286
 
342
287
 
@@ -344,6 +289,7 @@
344
289
 
345
290
 
346
291
 
292
+
347
293
 
348
294
 
349
295
  <div class="method-source-code" id="copy_image_files-source">
@@ -359,14 +305,14 @@
359
305
  <span class="ruby-keyword">end</span>
360
306
  <span class="ruby-keyword">end</span>
361
307
  <span class="ruby-keyword">end</span></pre>
362
- </div><!-- copy_image_files-source -->
308
+ </div>
363
309
 
364
310
  </div>
365
311
 
366
312
 
367
313
 
368
314
 
369
- </div><!-- copy_image_files-method -->
315
+ </div>
370
316
 
371
317
 
372
318
  <div id="method-i-dump" class="method-detail ">
@@ -374,7 +320,9 @@
374
320
  <div class="method-heading">
375
321
  <span class="method-name">dump</span><span
376
322
  class="method-args">(ci)</span>
323
+
377
324
  <span class="method-click-advice">click to toggle source</span>
325
+
378
326
  </div>
379
327
 
380
328
 
@@ -382,6 +330,7 @@
382
330
 
383
331
 
384
332
 
333
+
385
334
 
386
335
 
387
336
  <div class="method-source-code" id="dump-source">
@@ -389,14 +338,14 @@
389
338
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">dump</span>(<span class="ruby-identifier">ci</span>)
390
339
  <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">printf</span> <span class="ruby-string">&quot;%s/%d t:%f s:%f w:%f \n&quot;</span>, <span class="ruby-identifier">ci</span>, <span class="ruby-identifier">ci</span>.<span class="ruby-identifier">object_id</span>, <span class="ruby-identifier">ci</span>.<span class="ruby-identifier">total_time</span>, <span class="ruby-identifier">ci</span>.<span class="ruby-identifier">self_time</span>, <span class="ruby-identifier">ci</span>.<span class="ruby-identifier">wait_time</span>
391
340
  <span class="ruby-keyword">end</span></pre>
392
- </div><!-- dump-source -->
341
+ </div>
393
342
 
394
343
  </div>
395
344
 
396
345
 
397
346
 
398
347
 
399
- </div><!-- dump-method -->
348
+ </div>
400
349
 
401
350
 
402
351
  <div id="method-i-expansion" class="method-detail ">
@@ -404,7 +353,9 @@
404
353
  <div class="method-heading">
405
354
  <span class="method-name">expansion</span><span
406
355
  class="method-args">()</span>
356
+
407
357
  <span class="method-click-advice">click to toggle source</span>
358
+
408
359
  </div>
409
360
 
410
361
 
@@ -412,6 +363,7 @@
412
363
 
413
364
 
414
365
 
366
+
415
367
 
416
368
 
417
369
  <div class="method-source-code" id="expansion-source">
@@ -419,14 +371,14 @@
419
371
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">expansion</span>
420
372
  <span class="ruby-ivar">@options</span>[<span class="ruby-value">:expansion</span>] <span class="ruby-operator">||</span> <span class="ruby-value">10.0</span>
421
373
  <span class="ruby-keyword">end</span></pre>
422
- </div><!-- expansion-source -->
374
+ </div>
423
375
 
424
376
  </div>
425
377
 
426
378
 
427
379
 
428
380
 
429
- </div><!-- expansion-method -->
381
+ </div>
430
382
 
431
383
 
432
384
  <div id="method-i-graph_link" class="method-detail ">
@@ -434,7 +386,9 @@
434
386
  <div class="method-heading">
435
387
  <span class="method-name">graph_link</span><span
436
388
  class="method-args">(call_info)</span>
389
+
437
390
  <span class="method-click-advice">click to toggle source</span>
391
+
438
392
  </div>
439
393
 
440
394
 
@@ -442,6 +396,7 @@
442
396
 
443
397
 
444
398
 
399
+
445
400
 
446
401
 
447
402
  <div class="method-source-code" id="graph_link-source">
@@ -452,14 +407,14 @@
452
407
  <span class="ruby-identifier">totals</span> = <span class="ruby-ivar">@graph_html</span> <span class="ruby-operator">?</span> <span class="ruby-node">&quot;&lt;a href=&#39;#{href}&#39;&gt;#{total_calls}&lt;/a&gt;&quot;</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">total_calls</span>.<span class="ruby-identifier">to_s</span>
453
408
  <span class="ruby-node">&quot;[#{call_info.called} calls, #{totals} total]&quot;</span>
454
409
  <span class="ruby-keyword">end</span></pre>
455
- </div><!-- graph_link-source -->
410
+ </div>
456
411
 
457
412
  </div>
458
413
 
459
414
 
460
415
 
461
416
 
462
- </div><!-- graph_link-method -->
417
+ </div>
463
418
 
464
419
 
465
420
  <div id="method-i-link" class="method-detail ">
@@ -467,7 +422,9 @@
467
422
  <div class="method-heading">
468
423
  <span class="method-name">link</span><span
469
424
  class="method-args">(call_info)</span>
425
+
470
426
  <span class="method-click-advice">click to toggle source</span>
427
+
471
428
  </div>
472
429
 
473
430
 
@@ -475,6 +432,7 @@
475
432
 
476
433
 
477
434
 
435
+
478
436
 
479
437
 
480
438
  <div class="method-source-code" id="link-source">
@@ -482,24 +440,24 @@
482
440
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">link</span>(<span class="ruby-identifier">call_info</span>)
483
441
  <span class="ruby-identifier">method</span> = <span class="ruby-identifier">call_info</span>.<span class="ruby-identifier">target</span>
484
442
  <span class="ruby-identifier">file</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">expand_path</span>(<span class="ruby-identifier">method</span>.<span class="ruby-identifier">source_file</span>)
485
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">file</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%r\/ruby_runtime$/</span>
443
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">file</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">/\/ruby_runtime$/</span>
486
444
  <span class="ruby-identifier">h</span>(<span class="ruby-identifier">name</span>(<span class="ruby-identifier">call_info</span>))
487
445
  <span class="ruby-keyword">else</span>
488
- <span class="ruby-keyword">if</span> <span class="ruby-constant">RUBY_PLATFORM</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">%rdarwin/</span>
446
+ <span class="ruby-keyword">if</span> <span class="ruby-constant">RUBY_PLATFORM</span> <span class="ruby-operator">=~</span> <span class="ruby-regexp">/darwin/</span>
489
447
  <span class="ruby-node">&quot;&lt;a href=\&quot;txmt://open?url=file://#{file}&amp;line=#{method.line}\&quot;&gt;#{h(name(call_info))}&lt;/a&gt;&quot;</span>
490
448
  <span class="ruby-keyword">else</span>
491
449
  <span class="ruby-node">&quot;&lt;a href=\&quot;file://#{file}##{method.line}\&quot;&gt;#{h(name(call_info))}&lt;/a&gt;&quot;</span>
492
450
  <span class="ruby-keyword">end</span>
493
451
  <span class="ruby-keyword">end</span>
494
452
  <span class="ruby-keyword">end</span></pre>
495
- </div><!-- link-source -->
453
+ </div>
496
454
 
497
455
  </div>
498
456
 
499
457
 
500
458
 
501
459
 
502
- </div><!-- link-method -->
460
+ </div>
503
461
 
504
462
 
505
463
  <div id="method-i-method_href" class="method-detail ">
@@ -507,7 +465,9 @@
507
465
  <div class="method-heading">
508
466
  <span class="method-name">method_href</span><span
509
467
  class="method-args">(method)</span>
468
+
510
469
  <span class="method-click-advice">click to toggle source</span>
470
+
511
471
  </div>
512
472
 
513
473
 
@@ -515,21 +475,22 @@
515
475
 
516
476
 
517
477
 
478
+
518
479
 
519
480
 
520
481
  <div class="method-source-code" id="method_href-source">
521
482
  <pre><span class="ruby-comment"># File lib/ruby-prof/printers/call_stack_printer.rb, line 133</span>
522
483
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">method_href</span>(<span class="ruby-identifier">method</span>)
523
- <span class="ruby-identifier">h</span>(<span class="ruby-identifier">method</span>.<span class="ruby-identifier">full_name</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-node">%r[&gt;&lt;#\.\?=:]/</span>,<span class="ruby-string">&quot;_&quot;</span>) <span class="ruby-operator">+</span> <span class="ruby-string">&quot;_&quot;</span> <span class="ruby-operator">+</span> <span class="ruby-ivar">@current_thread_id</span>.<span class="ruby-identifier">to_s</span>)
484
+ <span class="ruby-identifier">h</span>(<span class="ruby-identifier">method</span>.<span class="ruby-identifier">full_name</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-node">/[&gt;&lt;#\.\?=:]/</span>,<span class="ruby-string">&quot;_&quot;</span>) <span class="ruby-operator">+</span> <span class="ruby-string">&quot;_&quot;</span> <span class="ruby-operator">+</span> <span class="ruby-ivar">@current_thread_id</span>.<span class="ruby-identifier">to_s</span>)
524
485
  <span class="ruby-keyword">end</span></pre>
525
- </div><!-- method_href-source -->
486
+ </div>
526
487
 
527
488
  </div>
528
489
 
529
490
 
530
491
 
531
492
 
532
- </div><!-- method_href-method -->
493
+ </div>
533
494
 
534
495
 
535
496
  <div id="method-i-name" class="method-detail ">
@@ -537,7 +498,9 @@
537
498
  <div class="method-heading">
538
499
  <span class="method-name">name</span><span
539
500
  class="method-args">(call_info)</span>
501
+
540
502
  <span class="method-click-advice">click to toggle source</span>
503
+
541
504
  </div>
542
505
 
543
506
 
@@ -545,6 +508,7 @@
545
508
 
546
509
 
547
510
 
511
+
548
512
 
549
513
 
550
514
  <div class="method-source-code" id="name-source">
@@ -553,14 +517,14 @@
553
517
  <span class="ruby-identifier">method</span> = <span class="ruby-identifier">call_info</span>.<span class="ruby-identifier">target</span>
554
518
  <span class="ruby-identifier">method</span>.<span class="ruby-identifier">full_name</span>
555
519
  <span class="ruby-keyword">end</span></pre>
556
- </div><!-- name-source -->
520
+ </div>
557
521
 
558
522
  </div>
559
523
 
560
524
 
561
525
 
562
526
 
563
- </div><!-- name-method -->
527
+ </div>
564
528
 
565
529
 
566
530
  <div id="method-i-print" class="method-detail ">
@@ -568,7 +532,9 @@
568
532
  <div class="method-heading">
569
533
  <span class="method-name">print</span><span
570
534
  class="method-args">(output = STDOUT, options = {})</span>
535
+
571
536
  <span class="method-click-advice">click to toggle source</span>
537
+
572
538
  </div>
573
539
 
574
540
 
@@ -602,6 +568,7 @@
602
568
  :application - a String to overide the name of the application,
603
569
  as it appears on the report.</pre>
604
570
 
571
+
605
572
 
606
573
 
607
574
  <div class="method-source-code" id="print-source">
@@ -642,14 +609,14 @@
642
609
 
643
610
  <span class="ruby-identifier">copy_image_files</span>
644
611
  <span class="ruby-keyword">end</span></pre>
645
- </div><!-- print-source -->
612
+ </div>
646
613
 
647
614
  </div>
648
615
 
649
616
 
650
617
 
651
618
 
652
- </div><!-- print-method -->
619
+ </div>
653
620
 
654
621
 
655
622
  <div id="method-i-print_commands" class="method-detail ">
@@ -657,7 +624,9 @@
657
624
  <div class="method-heading">
658
625
  <span class="method-name">print_commands</span><span
659
626
  class="method-args">()</span>
627
+
660
628
  <span class="method-click-advice">click to toggle source</span>
629
+
661
630
  </div>
662
631
 
663
632
 
@@ -665,12 +634,14 @@
665
634
 
666
635
 
667
636
 
637
+
668
638
 
669
639
 
670
640
  <div class="method-source-code" id="print_commands-source">
671
641
  <pre><span class="ruby-comment"># File lib/ruby-prof/printers/call_stack_printer.rb, line 740</span>
672
642
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">print_commands</span>
673
- <span class="ruby-ivar">@output</span>.<span class="ruby-identifier">puts</span> <span class="ruby-string">&quot;&lt;div id=\&quot;commands\&quot;&gt;
643
+ <span class="ruby-ivar">@output</span>.<span class="ruby-identifier">puts</span> <span class="ruby-value">&lt;&lt;-&quot;end_commands&quot;
644
+ &lt;div id=\&quot;commands\&quot;&gt;
674
645
  &lt;span style=\&quot;font-size: 11pt; font-weight: bold;\&quot;&gt;Threshold:&lt;/span&gt;
675
646
  &lt;input value=\&quot;#{h threshold}\&quot; size=\&quot;3\&quot; id=\&quot;threshold\&quot; type=\&quot;text\&quot;&gt;
676
647
  &lt;input value=\&quot;Apply\&quot; onclick=\&quot;setThreshold();\&quot; type=\&quot;submit\&quot;&gt;
@@ -678,16 +649,16 @@
678
649
  &lt;input value=\&quot;Collapse All\&quot; onclick=\&quot;collapseAll(event);\&quot; type=\&quot;submit\&quot;&gt;
679
650
  &lt;input value=\&quot;Show Help\&quot; onclick=\&quot;toggleHelp(this);\&quot; type=\&quot;submit\&quot;&gt;
680
651
  &lt;/div&gt;
681
- &quot;</span>
652
+ end_commands</span>
682
653
  <span class="ruby-keyword">end</span></pre>
683
- </div><!-- print_commands-source -->
654
+ </div>
684
655
 
685
656
  </div>
686
657
 
687
658
 
688
659
 
689
660
 
690
- </div><!-- print_commands-method -->
661
+ </div>
691
662
 
692
663
 
693
664
  <div id="method-i-print_css" class="method-detail ">
@@ -695,7 +666,9 @@
695
666
  <div class="method-heading">
696
667
  <span class="method-name">print_css</span><span
697
668
  class="method-args">()</span>
669
+
698
670
  <span class="method-click-advice">click to toggle source</span>
671
+
699
672
  </div>
700
673
 
701
674
 
@@ -703,12 +676,14 @@
703
676
 
704
677
 
705
678
 
679
+
706
680
 
707
681
 
708
682
  <div class="method-source-code" id="print_css-source">
709
683
  <pre><span class="ruby-comment"># File lib/ruby-prof/printers/call_stack_printer.rb, line 210</span>
710
684
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">print_css</span>
711
- <span class="ruby-ivar">@output</span>.<span class="ruby-identifier">puts</span> <span class="ruby-string">&quot;&lt;style type=&quot;text/css&quot;&gt;
685
+ <span class="ruby-ivar">@output</span>.<span class="ruby-identifier">puts</span> <span class="ruby-value">&lt;&lt;-&#39;end_css&#39;
686
+ &lt;style type=&quot;text/css&quot;&gt;
712
687
  &lt;!--
713
688
  body {
714
689
  font-size:70%;
@@ -808,16 +783,16 @@ li {
808
783
  input { margin-left:10px; }
809
784
  --&gt;
810
785
  &lt;/style&gt;
811
- &quot;</span>
786
+ end_css</span>
812
787
  <span class="ruby-keyword">end</span></pre>
813
- </div><!-- print_css-source -->
788
+ </div>
814
789
 
815
790
  </div>
816
791
 
817
792
 
818
793
 
819
794
 
820
- </div><!-- print_css-method -->
795
+ </div>
821
796
 
822
797
 
823
798
  <div id="method-i-print_footer" class="method-detail ">
@@ -825,7 +800,9 @@ input { margin-left:10px; }
825
800
  <div class="method-heading">
826
801
  <span class="method-name">print_footer</span><span
827
802
  class="method-args">()</span>
803
+
828
804
  <span class="method-click-advice">click to toggle source</span>
805
+
829
806
  </div>
830
807
 
831
808
 
@@ -833,6 +810,7 @@ input { margin-left:10px; }
833
810
 
834
811
 
835
812
 
813
+
836
814
 
837
815
 
838
816
  <div class="method-source-code" id="print_footer-source">
@@ -840,14 +818,14 @@ input { margin-left:10px; }
840
818
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">print_footer</span>
841
819
  <span class="ruby-ivar">@output</span>.<span class="ruby-identifier">puts</span> <span class="ruby-string">&#39;&lt;div id=&quot;sentinel&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;&#39;</span>
842
820
  <span class="ruby-keyword">end</span></pre>
843
- </div><!-- print_footer-source -->
821
+ </div>
844
822
 
845
823
  </div>
846
824
 
847
825
 
848
826
 
849
827
 
850
- </div><!-- print_footer-method -->
828
+ </div>
851
829
 
852
830
 
853
831
  <div id="method-i-print_header" class="method-detail ">
@@ -855,7 +833,9 @@ input { margin-left:10px; }
855
833
  <div class="method-heading">
856
834
  <span class="method-name">print_header</span><span
857
835
  class="method-args">()</span>
836
+
858
837
  <span class="method-click-advice">click to toggle source</span>
838
+
859
839
  </div>
860
840
 
861
841
 
@@ -863,6 +843,7 @@ input { margin-left:10px; }
863
843
 
864
844
 
865
845
 
846
+
866
847
 
867
848
 
868
849
  <div class="method-source-code" id="print_header-source">
@@ -878,14 +859,14 @@ input { margin-left:10px; }
878
859
  <span class="ruby-identifier">print_commands</span>
879
860
  <span class="ruby-identifier">print_help</span>
880
861
  <span class="ruby-keyword">end</span></pre>
881
- </div><!-- print_header-source -->
862
+ </div>
882
863
 
883
864
  </div>
884
865
 
885
866
 
886
867
 
887
868
 
888
- </div><!-- print_header-method -->
869
+ </div>
889
870
 
890
871
 
891
872
  <div id="method-i-print_help" class="method-detail ">
@@ -893,7 +874,9 @@ input { margin-left:10px; }
893
874
  <div class="method-heading">
894
875
  <span class="method-name">print_help</span><span
895
876
  class="method-args">()</span>
877
+
896
878
  <span class="method-click-advice">click to toggle source</span>
879
+
897
880
  </div>
898
881
 
899
882
 
@@ -901,12 +884,14 @@ input { margin-left:10px; }
901
884
 
902
885
 
903
886
 
887
+
904
888
 
905
889
 
906
890
  <div class="method-source-code" id="print_help-source">
907
891
  <pre><span class="ruby-comment"># File lib/ruby-prof/printers/call_stack_printer.rb, line 753</span>
908
892
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">print_help</span>
909
- <span class="ruby-ivar">@output</span>.<span class="ruby-identifier">puts</span> <span class="ruby-string">&quot;&lt;div style=&quot;display: none;&quot; id=&quot;help&quot;&gt;
893
+ <span class="ruby-ivar">@output</span>.<span class="ruby-identifier">puts</span> <span class="ruby-value">&lt;&lt;-&#39;end_help&#39;
894
+ &lt;div style=&quot;display: none;&quot; id=&quot;help&quot;&gt;
910
895
  &lt;img src=&quot;empty.png&quot;&gt; Enter a decimal value &lt;i&gt;d&lt;/i&gt; into the threshold field and click &quot;Apply&quot;
911
896
  to hide all nodes marked with time values lower than &lt;i&gt;d&lt;/i&gt;.&lt;br&gt;
912
897
  &lt;img src=&quot;empty.png&quot;&gt; Click on &quot;Expand All&quot; for full tree expansion.&lt;br&gt;
@@ -919,16 +904,16 @@ to hide all nodes marked with time values lower than &lt;i&gt;d&lt;/i&gt;.&lt;br
919
904
  &lt;img src=&quot;empty.png&quot;&gt; Use n and p to navigate between threads.&lt;br&gt;
920
905
  &lt;img src=&quot;empty.png&quot;&gt; Click on background to move focus to a subtree.&lt;br&gt;
921
906
  &lt;/div&gt;
922
- &quot;</span>
907
+ end_help</span>
923
908
  <span class="ruby-keyword">end</span></pre>
924
- </div><!-- print_help-source -->
909
+ </div>
925
910
 
926
911
  </div>
927
912
 
928
913
 
929
914
 
930
915
 
931
- </div><!-- print_help-method -->
916
+ </div>
932
917
 
933
918
 
934
919
  <div id="method-i-print_java_script" class="method-detail ">
@@ -936,7 +921,9 @@ to hide all nodes marked with time values lower than &lt;i&gt;d&lt;/i&gt;.&lt;br
936
921
  <div class="method-heading">
937
922
  <span class="method-name">print_java_script</span><span
938
923
  class="method-args">()</span>
924
+
939
925
  <span class="method-click-advice">click to toggle source</span>
926
+
940
927
  </div>
941
928
 
942
929
 
@@ -944,12 +931,14 @@ to hide all nodes marked with time values lower than &lt;i&gt;d&lt;/i&gt;.&lt;br
944
931
 
945
932
 
946
933
 
934
+
947
935
 
948
936
 
949
937
  <div class="method-source-code" id="print_java_script-source">
950
938
  <pre><span class="ruby-comment"># File lib/ruby-prof/printers/call_stack_printer.rb, line 315</span>
951
939
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">print_java_script</span>
952
- <span class="ruby-ivar">@output</span>.<span class="ruby-identifier">puts</span> <span class="ruby-string">&quot;&lt;script type=&quot;text/javascript&quot;&gt;
940
+ <span class="ruby-ivar">@output</span>.<span class="ruby-identifier">puts</span> <span class="ruby-value">&lt;&lt;-&#39;end_java_script&#39;
941
+ &lt;script type=&quot;text/javascript&quot;&gt;
953
942
  /*
954
943
  Copyright (C) 2005,2009 Stefan Kaes
955
944
  skaes@railsexpress.de
@@ -1360,16 +1349,16 @@ window.onload=function(){
1360
1349
  selectNode(currentThread, null);
1361
1350
  }
1362
1351
  &lt;/script&gt;
1363
- &quot;</span>
1352
+ end_java_script</span>
1364
1353
  <span class="ruby-keyword">end</span></pre>
1365
- </div><!-- print_java_script-source -->
1354
+ </div>
1366
1355
 
1367
1356
  </div>
1368
1357
 
1369
1358
 
1370
1359
 
1371
1360
 
1372
- </div><!-- print_java_script-method -->
1361
+ </div>
1373
1362
 
1374
1363
 
1375
1364
  <div id="method-i-print_stack" class="method-detail ">
@@ -1377,7 +1366,9 @@ window.onload=function(){
1377
1366
  <div class="method-heading">
1378
1367
  <span class="method-name">print_stack</span><span
1379
1368
  class="method-args">(call_info, parent_time)</span>
1369
+
1380
1370
  <span class="method-click-advice">click to toggle source</span>
1371
+
1381
1372
  </div>
1382
1373
 
1383
1374
 
@@ -1385,14 +1376,15 @@ window.onload=function(){
1385
1376
 
1386
1377
 
1387
1378
 
1379
+
1388
1380
 
1389
1381
 
1390
1382
  <div class="method-source-code" id="print_stack-source">
1391
1383
  <pre><span class="ruby-comment"># File lib/ruby-prof/printers/call_stack_printer.rb, line 74</span>
1392
1384
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">print_stack</span>(<span class="ruby-identifier">call_info</span>, <span class="ruby-identifier">parent_time</span>)
1393
1385
  <span class="ruby-identifier">total_time</span> = <span class="ruby-identifier">call_info</span>.<span class="ruby-identifier">total_time</span>
1394
- <span class="ruby-identifier">percent_parent</span> = (<span class="ruby-identifier">total_time</span><span class="ruby-operator">/</span><span class="ruby-identifier">parent_time</span>)*<span class="ruby-value">100</span>
1395
- <span class="ruby-identifier">percent_total</span> = (<span class="ruby-identifier">total_time</span><span class="ruby-operator">/</span><span class="ruby-ivar">@overall_time</span>)*<span class="ruby-value">100</span>
1386
+ <span class="ruby-identifier">percent_parent</span> = (<span class="ruby-identifier">total_time</span><span class="ruby-operator">/</span><span class="ruby-identifier">parent_time</span>)<span class="ruby-operator">*</span><span class="ruby-value">100</span>
1387
+ <span class="ruby-identifier">percent_total</span> = (<span class="ruby-identifier">total_time</span><span class="ruby-operator">/</span><span class="ruby-ivar">@overall_time</span>)<span class="ruby-operator">*</span><span class="ruby-value">100</span>
1396
1388
  <span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">percent_total</span> <span class="ruby-operator">&gt;</span> <span class="ruby-identifier">min_percent</span>
1397
1389
  <span class="ruby-identifier">color</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">color</span>(<span class="ruby-identifier">percent_total</span>)
1398
1390
  <span class="ruby-identifier">kids</span> = <span class="ruby-identifier">call_info</span>.<span class="ruby-identifier">children</span>
@@ -1403,7 +1395,7 @@ window.onload=function(){
1403
1395
  <span class="ruby-keyword">if</span> <span class="ruby-identifier">kids</span>.<span class="ruby-identifier">empty?</span>
1404
1396
  <span class="ruby-ivar">@output</span>.<span class="ruby-identifier">print</span> <span class="ruby-string">&quot;&lt;img src=\&quot;empty.png\&quot;&gt;&quot;</span>
1405
1397
  <span class="ruby-keyword">else</span>
1406
- <span class="ruby-identifier">visible_children</span> = <span class="ruby-identifier">kids</span>.<span class="ruby-identifier">any?</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">ci</span><span class="ruby-operator">|</span> (<span class="ruby-identifier">ci</span>.<span class="ruby-identifier">total_time</span><span class="ruby-operator">/</span><span class="ruby-ivar">@overall_time</span>)*<span class="ruby-value">100</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-identifier">threshold</span>}
1398
+ <span class="ruby-identifier">visible_children</span> = <span class="ruby-identifier">kids</span>.<span class="ruby-identifier">any?</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">ci</span><span class="ruby-operator">|</span> (<span class="ruby-identifier">ci</span>.<span class="ruby-identifier">total_time</span><span class="ruby-operator">/</span><span class="ruby-ivar">@overall_time</span>)<span class="ruby-operator">*</span><span class="ruby-value">100</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-identifier">threshold</span>}
1407
1399
  <span class="ruby-identifier">image</span> = <span class="ruby-identifier">visible_children</span> <span class="ruby-operator">?</span> (<span class="ruby-identifier">expanded</span> <span class="ruby-operator">?</span> <span class="ruby-string">&quot;minus&quot;</span> <span class="ruby-operator">:</span> <span class="ruby-string">&quot;plus&quot;</span>) <span class="ruby-operator">:</span> <span class="ruby-string">&quot;empty&quot;</span>
1408
1400
  <span class="ruby-ivar">@output</span>.<span class="ruby-identifier">print</span> <span class="ruby-node">&quot;&lt;img class=\&quot;toggle\&quot; src=\&quot;#{image}.png\&quot;&gt;&quot;</span>
1409
1401
  <span class="ruby-keyword">end</span>
@@ -1421,14 +1413,14 @@ window.onload=function(){
1421
1413
  <span class="ruby-keyword">end</span>
1422
1414
  <span class="ruby-ivar">@output</span>.<span class="ruby-identifier">print</span> <span class="ruby-string">&quot;&lt;/li&gt;&quot;</span>
1423
1415
  <span class="ruby-keyword">end</span></pre>
1424
- </div><!-- print_stack-source -->
1416
+ </div>
1425
1417
 
1426
1418
  </div>
1427
1419
 
1428
1420
 
1429
1421
 
1430
1422
 
1431
- </div><!-- print_stack-method -->
1423
+ </div>
1432
1424
 
1433
1425
 
1434
1426
  <div id="method-i-print_title_bar" class="method-detail ">
@@ -1436,7 +1428,9 @@ window.onload=function(){
1436
1428
  <div class="method-heading">
1437
1429
  <span class="method-name">print_title_bar</span><span
1438
1430
  class="method-args">()</span>
1431
+
1439
1432
  <span class="method-click-advice">click to toggle source</span>
1433
+
1440
1434
  </div>
1441
1435
 
1442
1436
 
@@ -1444,25 +1438,27 @@ window.onload=function(){
1444
1438
 
1445
1439
 
1446
1440
 
1441
+
1447
1442
 
1448
1443
 
1449
1444
  <div class="method-source-code" id="print_title_bar-source">
1450
1445
  <pre><span class="ruby-comment"># File lib/ruby-prof/printers/call_stack_printer.rb, line 731</span>
1451
1446
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">print_title_bar</span>
1452
- <span class="ruby-ivar">@output</span>.<span class="ruby-identifier">puts</span> <span class="ruby-string">&quot;&lt;div id=&quot;titlebar&quot;&gt;
1447
+ <span class="ruby-ivar">@output</span>.<span class="ruby-identifier">puts</span> <span class="ruby-value">&lt;&lt;-&quot;end_title_bar&quot;
1448
+ &lt;div id=&quot;titlebar&quot;&gt;
1453
1449
  Call tree for application &lt;b&gt;#{h application} #{h arguments}&lt;/b&gt;&lt;br/&gt;
1454
1450
  Generated on #{Time.now} with options #{h @options.inspect}&lt;br/&gt;
1455
1451
  &lt;/div&gt;
1456
- &quot;</span>
1452
+ end_title_bar</span>
1457
1453
  <span class="ruby-keyword">end</span></pre>
1458
- </div><!-- print_title_bar-source -->
1454
+ </div>
1459
1455
 
1460
1456
  </div>
1461
1457
 
1462
1458
 
1463
1459
 
1464
1460
 
1465
- </div><!-- print_title_bar-method -->
1461
+ </div>
1466
1462
 
1467
1463
 
1468
1464
  <div id="method-i-sum" class="method-detail ">
@@ -1470,7 +1466,9 @@ Generated on #{Time.now} with options #{h @options.inspect}&lt;br/&gt;
1470
1466
  <div class="method-heading">
1471
1467
  <span class="method-name">sum</span><span
1472
1468
  class="method-args">(a)</span>
1469
+
1473
1470
  <span class="method-click-advice">click to toggle source</span>
1471
+
1474
1472
  </div>
1475
1473
 
1476
1474
 
@@ -1478,6 +1476,7 @@ Generated on #{Time.now} with options #{h @options.inspect}&lt;br/&gt;
1478
1476
 
1479
1477
 
1480
1478
 
1479
+
1481
1480
 
1482
1481
 
1483
1482
  <div class="method-source-code" id="sum-source">
@@ -1485,14 +1484,14 @@ Generated on #{Time.now} with options #{h @options.inspect}&lt;br/&gt;
1485
1484
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">sum</span>(<span class="ruby-identifier">a</span>)
1486
1485
  <span class="ruby-identifier">a</span>.<span class="ruby-identifier">inject</span>(<span class="ruby-value">0.0</span>){<span class="ruby-operator">|</span><span class="ruby-identifier">s</span>,<span class="ruby-identifier">t</span><span class="ruby-operator">|</span> <span class="ruby-identifier">s</span><span class="ruby-operator">+=</span><span class="ruby-identifier">t</span>}
1487
1486
  <span class="ruby-keyword">end</span></pre>
1488
- </div><!-- sum-source -->
1487
+ </div>
1489
1488
 
1490
1489
  </div>
1491
1490
 
1492
1491
 
1493
1492
 
1494
1493
 
1495
- </div><!-- sum-method -->
1494
+ </div>
1496
1495
 
1497
1496
 
1498
1497
  <div id="method-i-threshold" class="method-detail ">
@@ -1500,7 +1499,9 @@ Generated on #{Time.now} with options #{h @options.inspect}&lt;br/&gt;
1500
1499
  <div class="method-heading">
1501
1500
  <span class="method-name">threshold</span><span
1502
1501
  class="method-args">()</span>
1502
+
1503
1503
  <span class="method-click-advice">click to toggle source</span>
1504
+
1504
1505
  </div>
1505
1506
 
1506
1507
 
@@ -1508,6 +1509,7 @@ Generated on #{Time.now} with options #{h @options.inspect}&lt;br/&gt;
1508
1509
 
1509
1510
 
1510
1511
 
1512
+
1511
1513
 
1512
1514
 
1513
1515
  <div class="method-source-code" id="threshold-source">
@@ -1515,14 +1517,14 @@ Generated on #{Time.now} with options #{h @options.inspect}&lt;br/&gt;
1515
1517
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">threshold</span>
1516
1518
  <span class="ruby-ivar">@options</span>[<span class="ruby-value">:threshold</span>] <span class="ruby-operator">||</span> <span class="ruby-value">1.0</span>
1517
1519
  <span class="ruby-keyword">end</span></pre>
1518
- </div><!-- threshold-source -->
1520
+ </div>
1519
1521
 
1520
1522
  </div>
1521
1523
 
1522
1524
 
1523
1525
 
1524
1526
 
1525
- </div><!-- threshold-method -->
1527
+ </div>
1526
1528
 
1527
1529
 
1528
1530
  <div id="method-i-title" class="method-detail ">
@@ -1530,7 +1532,9 @@ Generated on #{Time.now} with options #{h @options.inspect}&lt;br/&gt;
1530
1532
  <div class="method-heading">
1531
1533
  <span class="method-name">title</span><span
1532
1534
  class="method-args">()</span>
1535
+
1533
1536
  <span class="method-click-advice">click to toggle source</span>
1537
+
1534
1538
  </div>
1535
1539
 
1536
1540
 
@@ -1538,6 +1542,7 @@ Generated on #{Time.now} with options #{h @options.inspect}&lt;br/&gt;
1538
1542
 
1539
1543
 
1540
1544
 
1545
+
1541
1546
 
1542
1547
 
1543
1548
  <div class="method-source-code" id="title-source">
@@ -1545,14 +1550,14 @@ Generated on #{Time.now} with options #{h @options.inspect}&lt;br/&gt;
1545
1550
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">title</span>
1546
1551
  <span class="ruby-ivar">@title</span> <span class="ruby-operator">||=</span> <span class="ruby-ivar">@options</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:title</span>) <span class="ruby-operator">||</span> <span class="ruby-string">&quot;ruby-prof call tree&quot;</span>
1547
1552
  <span class="ruby-keyword">end</span></pre>
1548
- </div><!-- title-source -->
1553
+ </div>
1549
1554
 
1550
1555
  </div>
1551
1556
 
1552
1557
 
1553
1558
 
1554
1559
 
1555
- </div><!-- title-method -->
1560
+ </div>
1556
1561
 
1557
1562
 
1558
1563
  <div id="method-i-total_time" class="method-detail ">
@@ -1560,7 +1565,9 @@ Generated on #{Time.now} with options #{h @options.inspect}&lt;br/&gt;
1560
1565
  <div class="method-heading">
1561
1566
  <span class="method-name">total_time</span><span
1562
1567
  class="method-args">(call_infos)</span>
1568
+
1563
1569
  <span class="method-click-advice">click to toggle source</span>
1570
+
1564
1571
  </div>
1565
1572
 
1566
1573
 
@@ -1568,6 +1575,7 @@ Generated on #{Time.now} with options #{h @options.inspect}&lt;br/&gt;
1568
1575
 
1569
1576
 
1570
1577
 
1578
+
1571
1579
 
1572
1580
 
1573
1581
  <div class="method-source-code" id="total_time-source">
@@ -1575,26 +1583,25 @@ Generated on #{Time.now} with options #{h @options.inspect}&lt;br/&gt;
1575
1583
  <span class="ruby-keyword">def</span> <span class="ruby-identifier">total_time</span>(<span class="ruby-identifier">call_infos</span>)
1576
1584
  <span class="ruby-identifier">sum</span>(<span class="ruby-identifier">call_infos</span>.<span class="ruby-identifier">map</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">ci</span><span class="ruby-operator">|</span> <span class="ruby-identifier">ci</span>.<span class="ruby-identifier">total_time</span>})
1577
1585
  <span class="ruby-keyword">end</span></pre>
1578
- </div><!-- total_time-source -->
1586
+ </div>
1579
1587
 
1580
1588
  </div>
1581
1589
 
1582
1590
 
1583
1591
 
1584
1592
 
1585
- </div><!-- total_time-method -->
1593
+ </div>
1586
1594
 
1587
1595
 
1588
- </section><!-- public-instance-method-details -->
1596
+ </section>
1589
1597
 
1590
- </section><!-- 5Buntitled-5D -->
1591
-
1592
- </div><!-- documentation -->
1598
+ </section>
1599
+ </main>
1593
1600
 
1594
1601
 
1595
- <footer id="validator-badges">
1596
- <p><a href="http://validator.w3.org/check/referer">[Validate]</a>
1597
- <p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.1.
1598
- <p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
1602
+ <footer id="validator-badges" role="contentinfo">
1603
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
1604
+ <p>Generated by <a href="http://rdoc.rubyforge.org">RDoc</a> 4.1.0.
1605
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
1599
1606
  </footer>
1600
1607