ruby-prof 0.15.2 → 0.15.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/doc/LICENSE.html +11 -14
- data/doc/README_rdoc.html +106 -109
- data/doc/Rack.html +6 -9
- data/doc/Rack/RubyProf.html +12 -15
- data/doc/RubyProf.html +11 -13
- data/doc/RubyProf/AbstractPrinter.html +7 -10
- data/doc/RubyProf/AggregateCallInfo.html +6 -9
- data/doc/RubyProf/CallInfo.html +8 -11
- data/doc/RubyProf/CallInfoPrinter.html +7 -10
- data/doc/RubyProf/CallInfoVisitor.html +6 -9
- data/doc/RubyProf/CallStackPrinter.html +48 -51
- data/doc/RubyProf/CallTreePrinter.html +14 -17
- data/doc/RubyProf/Cmd.html +44 -47
- data/doc/RubyProf/DotPrinter.html +8 -11
- data/doc/RubyProf/FlatPrinter.html +6 -9
- data/doc/RubyProf/FlatPrinterWithLineNumbers.html +9 -12
- data/doc/RubyProf/GraphHtmlPrinter.html +14 -18
- data/doc/RubyProf/GraphPrinter.html +6 -9
- data/doc/RubyProf/MethodInfo.html +8 -11
- data/doc/RubyProf/MultiPrinter.html +6 -9
- data/doc/RubyProf/Profile.html +7 -10
- data/doc/RubyProf/ProfileTask.html +18 -20
- data/doc/RubyProf/Thread.html +6 -9
- data/doc/created.rid +4 -4
- data/doc/{fonts.css → css/fonts.css} +0 -0
- data/doc/{rdoc.css → css/rdoc.css} +11 -1
- data/doc/examples/flat_txt.html +8 -11
- data/doc/examples/graph_html.html +8 -10
- data/doc/examples/graph_txt.html +13 -16
- data/doc/index.html +108 -109
- data/doc/js/darkfish.js +32 -11
- data/doc/js/jquery.js +4 -18
- data/doc/js/navigation.js.gz +0 -0
- data/doc/js/search_index.js +1 -1
- data/doc/js/search_index.js.gz +0 -0
- data/doc/js/searcher.js.gz +0 -0
- data/doc/table_of_contents.html +9 -9
- data/ext/ruby_prof/ruby_prof.c +2 -2
- data/lib/ruby-prof/version.rb +1 -1
- data/ruby-prof.gemspec +1 -1
- data/test/aggregate_test.rb +1 -1
- data/test/basic_test.rb +5 -5
- data/test/block_test.rb +74 -0
- data/test/call_info_test.rb +1 -1
- data/test/call_info_visitor_test.rb +1 -1
- data/test/duplicate_names_test.rb +1 -1
- data/test/dynamic_method_test.rb +37 -56
- data/test/enumerable_test.rb +7 -2
- data/test/exceptions_test.rb +2 -2
- data/test/exclude_threads_test.rb +1 -1
- data/test/fiber_test.rb +1 -1
- data/test/line_number_test.rb +1 -1
- data/test/measure_allocations_test.rb +1 -1
- data/test/measure_cpu_time_test.rb +1 -1
- data/test/measure_gc_runs_test.rb +1 -1
- data/test/measure_gc_time_test.rb +1 -1
- data/test/measure_memory_test.rb +2 -2
- data/test/measure_process_time_test.rb +1 -1
- data/test/measure_wall_time_test.rb +2 -2
- data/test/method_elimination_test.rb +1 -1
- data/test/module_test.rb +1 -1
- data/test/multi_printer_test.rb +1 -1
- data/test/pause_resume_test.rb +1 -1
- data/test/printers_test.rb +5 -5
- data/test/rack_test.rb +2 -2
- data/test/recursive_test.rb +1 -1
- data/test/singleton_test.rb +1 -1
- data/test/stack_printer_test.rb +1 -1
- data/test/stack_test.rb +1 -1
- data/test/start_stop_test.rb +4 -4
- data/test/test_helper.rb +8 -1
- data/test/thread_test.rb +1 -1
- data/test/unique_call_path_test.rb +2 -2
- data/test/yarv_test.rb +1 -1
- metadata +64 -71
@@ -6,20 +6,17 @@
|
|
6
6
|
|
7
7
|
<title>class RubyProf::CallTreePrinter - ruby-prof</title>
|
8
8
|
|
9
|
-
<link href="../fonts.css" rel="stylesheet">
|
10
|
-
<link href="../rdoc.css" rel="stylesheet">
|
11
|
-
|
12
9
|
<script type="text/javascript">
|
13
10
|
var rdoc_rel_prefix = "../";
|
14
11
|
</script>
|
15
12
|
|
16
13
|
<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
14
|
<script src="../js/darkfish.js"></script>
|
22
15
|
|
16
|
+
<link href="../css/fonts.css" rel="stylesheet">
|
17
|
+
<link href="../css/rdoc.css" rel="stylesheet">
|
18
|
+
|
19
|
+
|
23
20
|
|
24
21
|
<body id="top" role="document" class="class">
|
25
22
|
<nav role="navigation">
|
@@ -209,7 +206,7 @@ and similar tools.</p>
|
|
209
206
|
for it to be printed out in the report.
|
210
207
|
Default value is 0.
|
211
208
|
|
212
|
-
:print_file - True or false. Specifies if a method
|
209
|
+
:print_file - True or false. Specifies if a method's source
|
213
210
|
file should be printed. Default value if false.</pre>
|
214
211
|
|
215
212
|
|
@@ -226,25 +223,25 @@ and similar tools.</p>
|
|
226
223
|
<span class="ruby-keyword">case</span> <span class="ruby-constant">RubyProf</span>.<span class="ruby-identifier">measure_mode</span>
|
227
224
|
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">PROCESS_TIME</span>
|
228
225
|
<span class="ruby-ivar">@value_scale</span> = <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">CLOCKS_PER_SEC</span>;
|
229
|
-
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string"
|
226
|
+
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">'process_time'</span>
|
230
227
|
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">WALL_TIME</span>
|
231
228
|
<span class="ruby-ivar">@value_scale</span> = <span class="ruby-value">1_000_000</span>
|
232
|
-
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string"
|
229
|
+
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">'wall_time'</span>
|
233
230
|
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span>.<span class="ruby-identifier">const_defined?</span>(<span class="ruby-value">:CPU_TIME</span>) <span class="ruby-operator">&&</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">CPU_TIME</span>
|
234
231
|
<span class="ruby-ivar">@value_scale</span> = <span class="ruby-constant">RubyProf</span>.<span class="ruby-identifier">cpu_frequency</span>
|
235
|
-
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string"
|
232
|
+
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">'cpu_time'</span>
|
236
233
|
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span>.<span class="ruby-identifier">const_defined?</span>(<span class="ruby-value">:ALLOCATIONS</span>) <span class="ruby-operator">&&</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">ALLOCATIONS</span>
|
237
234
|
<span class="ruby-ivar">@value_scale</span> = <span class="ruby-value">1</span>
|
238
|
-
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string"
|
235
|
+
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">'allocations'</span>
|
239
236
|
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span>.<span class="ruby-identifier">const_defined?</span>(<span class="ruby-value">:MEMORY</span>) <span class="ruby-operator">&&</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">MEMORY</span>
|
240
237
|
<span class="ruby-ivar">@value_scale</span> = <span class="ruby-value">1</span>
|
241
|
-
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string"
|
238
|
+
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">'memory'</span>
|
242
239
|
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span>.<span class="ruby-identifier">const_defined?</span>(<span class="ruby-value">:GC_RUNS</span>) <span class="ruby-operator">&&</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">GC_RUNS</span>
|
243
240
|
<span class="ruby-ivar">@value_scale</span> = <span class="ruby-value">1</span>
|
244
|
-
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string"
|
241
|
+
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">'gc_runs'</span>
|
245
242
|
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyProf</span>.<span class="ruby-identifier">const_defined?</span>(<span class="ruby-value">:GC_TIME</span>) <span class="ruby-operator">&&</span> <span class="ruby-constant">RubyProf</span><span class="ruby-operator">::</span><span class="ruby-constant">GC_TIME</span>
|
246
243
|
<span class="ruby-ivar">@value_scale</span> = <span class="ruby-value">1000000</span>
|
247
|
-
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string"
|
244
|
+
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">'gc_time'</span>
|
248
245
|
<span class="ruby-keyword">else</span>
|
249
246
|
<span class="ruby-identifier">raise</span> <span class="ruby-node">"Unknown measure mode: #{RubyProf.measure_mode}"</span>
|
250
247
|
<span class="ruby-keyword">end</span>
|
@@ -356,7 +353,7 @@ and similar tools.</p>
|
|
356
353
|
|
357
354
|
<footer id="validator-badges" role="contentinfo">
|
358
355
|
<p><a href="http://validator.w3.org/check/referer">Validate</a>
|
359
|
-
<p>Generated by <a href="http://
|
360
|
-
<p>Based on <a href="http://deveiate.org/projects/Darkfish-
|
356
|
+
<p>Generated by <a href="http://docs.seattlerb.org/rdoc/">RDoc</a> 4.2.0.
|
357
|
+
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
361
358
|
</footer>
|
362
359
|
|
data/doc/RubyProf/Cmd.html
CHANGED
@@ -6,20 +6,17 @@
|
|
6
6
|
|
7
7
|
<title>class RubyProf::Cmd - ruby-prof</title>
|
8
8
|
|
9
|
-
<link href="../fonts.css" rel="stylesheet">
|
10
|
-
<link href="../rdoc.css" rel="stylesheet">
|
11
|
-
|
12
9
|
<script type="text/javascript">
|
13
10
|
var rdoc_rel_prefix = "../";
|
14
11
|
</script>
|
15
12
|
|
16
13
|
<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
14
|
<script src="../js/darkfish.js"></script>
|
22
15
|
|
16
|
+
<link href="../css/fonts.css" rel="stylesheet">
|
17
|
+
<link href="../css/rdoc.css" rel="stylesheet">
|
18
|
+
|
19
|
+
|
23
20
|
|
24
21
|
<body id="top" role="document" class="class">
|
25
22
|
<nav role="navigation">
|
@@ -285,15 +282,15 @@
|
|
285
282
|
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">separator</span> <span class="ruby-string">""</span>
|
286
283
|
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">separator</span> <span class="ruby-string">"Options:"</span>
|
287
284
|
|
288
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
289
|
-
<span class="ruby-string"
|
290
|
-
<span class="ruby-string"
|
291
|
-
<span class="ruby-string"
|
292
|
-
<span class="ruby-string"
|
293
|
-
<span class="ruby-string"
|
294
|
-
<span class="ruby-string"
|
295
|
-
<span class="ruby-string"
|
296
|
-
<span class="ruby-string"
|
285
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-p printer'</span>, <span class="ruby-string">'--printer=printer'</span>, [<span class="ruby-value">:flat</span>, <span class="ruby-value">:flat_with_line_numbers</span>, <span class="ruby-value">:graph</span>, <span class="ruby-value">:graph_html</span>, <span class="ruby-value">:call_tree</span>, <span class="ruby-value">:call_stack</span>, <span class="ruby-value">:dot</span>],
|
286
|
+
<span class="ruby-string">'Select a printer:'</span>,
|
287
|
+
<span class="ruby-string">' flat - Prints a flat profile as text (default).'</span>,
|
288
|
+
<span class="ruby-string">' flat_with_line_numbers - same as flat, with line numbers.'</span>,
|
289
|
+
<span class="ruby-string">' graph - Prints a graph profile as text.'</span>,
|
290
|
+
<span class="ruby-string">' graph_html - Prints a graph profile as html.'</span>,
|
291
|
+
<span class="ruby-string">' call_tree - format for KCacheGrind'</span>,
|
292
|
+
<span class="ruby-string">' call_stack - prints a HTML visualization of the call tree'</span>,
|
293
|
+
<span class="ruby-string">' dot - Prints a graph profile as a dot file'</span>
|
297
294
|
) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">printer</span><span class="ruby-operator">|</span>
|
298
295
|
|
299
296
|
|
@@ -315,29 +312,29 @@
|
|
315
312
|
<span class="ruby-keyword">end</span>
|
316
313
|
<span class="ruby-keyword">end</span>
|
317
314
|
|
318
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
319
|
-
<span class="ruby-string"
|
320
|
-
<span class="ruby-string"
|
321
|
-
<span class="ruby-string"
|
315
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-m min_percent'</span>, <span class="ruby-string">'--min_percent=min_percent'</span>, <span class="ruby-constant">Float</span>,
|
316
|
+
<span class="ruby-string">'The minimum percent a method must take before '</span>,
|
317
|
+
<span class="ruby-string">' being included in output reports.'</span>,
|
318
|
+
<span class="ruby-string">' this option is not supported for call tree.'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">min_percent</span><span class="ruby-operator">|</span>
|
322
319
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">min_percent</span> = <span class="ruby-identifier">min_percent</span>
|
323
320
|
<span class="ruby-keyword">end</span>
|
324
321
|
|
325
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
326
|
-
<span class="ruby-string"
|
322
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-f path'</span>, <span class="ruby-string">'--file=path'</span>,
|
323
|
+
<span class="ruby-string">'Output results to a file instead of standard out.'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
|
327
324
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">file</span> = <span class="ruby-identifier">file</span>
|
328
325
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">old_wd</span> = <span class="ruby-constant">Dir</span>.<span class="ruby-identifier">pwd</span>
|
329
326
|
<span class="ruby-keyword">end</span>
|
330
327
|
|
331
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
328
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'--mode=measure_mode'</span>,
|
332
329
|
[<span class="ruby-value">:process</span>, <span class="ruby-value">:wall</span>, <span class="ruby-value">:cpu</span>, <span class="ruby-value">:allocations</span>, <span class="ruby-value">:memory</span>, <span class="ruby-value">:gc_runs</span>, <span class="ruby-value">:gc_time</span>],
|
333
|
-
<span class="ruby-string"
|
334
|
-
<span class="ruby-string"
|
335
|
-
<span class="ruby-string"
|
336
|
-
<span class="ruby-string"
|
337
|
-
<span class="ruby-string"
|
338
|
-
<span class="ruby-string"
|
339
|
-
<span class="ruby-string"
|
340
|
-
<span class="ruby-string"
|
330
|
+
<span class="ruby-string">'Select what ruby-prof should measure:'</span>,
|
331
|
+
<span class="ruby-string">' process - Process time (default).'</span>,
|
332
|
+
<span class="ruby-string">' wall - Wall time.'</span>,
|
333
|
+
<span class="ruby-string">' cpu - CPU time (Pentium and PowerPCs only).'</span>,
|
334
|
+
<span class="ruby-string">' allocations - Object allocations (requires patched Ruby interpreter).'</span>,
|
335
|
+
<span class="ruby-string">' memory - Allocated memory in KB (requires patched Ruby interpreter).'</span>,
|
336
|
+
<span class="ruby-string">' gc_runs - Number of garbage collections (requires patched Ruby interpreter).'</span>,
|
337
|
+
<span class="ruby-string">' gc_time - Time spent in garbage collection (requires patched Ruby interpreter).'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">measure_mode</span><span class="ruby-operator">|</span>
|
341
338
|
|
342
339
|
<span class="ruby-keyword">case</span> <span class="ruby-identifier">measure_mode</span>
|
343
340
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:process</span>
|
@@ -357,12 +354,12 @@
|
|
357
354
|
<span class="ruby-keyword">end</span>
|
358
355
|
<span class="ruby-keyword">end</span>
|
359
356
|
|
360
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
361
|
-
<span class="ruby-string"
|
362
|
-
<span class="ruby-string"
|
363
|
-
<span class="ruby-string"
|
364
|
-
<span class="ruby-string"
|
365
|
-
<span class="ruby-string"
|
357
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-s sort_mode'</span>, <span class="ruby-string">'--sort=sort_mode'</span>, [<span class="ruby-value">:total</span>, <span class="ruby-value">:self</span>, <span class="ruby-value">:wait</span>, <span class="ruby-value">:child</span>],
|
358
|
+
<span class="ruby-string">'Select how ruby-prof results should be sorted:'</span>,
|
359
|
+
<span class="ruby-string">' total - Total time'</span>,
|
360
|
+
<span class="ruby-string">' self - Self time'</span>,
|
361
|
+
<span class="ruby-string">' wait - Wait time'</span>,
|
362
|
+
<span class="ruby-string">' child - Child time'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">sort_mode</span><span class="ruby-operator">|</span>
|
366
363
|
|
367
364
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">sort_method</span> = <span class="ruby-keyword">case</span> <span class="ruby-identifier">sort_mode</span>
|
368
365
|
<span class="ruby-keyword">when</span> <span class="ruby-value">:total</span>
|
@@ -397,7 +394,7 @@
|
|
397
394
|
<span class="ruby-keyword">end</span>
|
398
395
|
|
399
396
|
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">"-v"</span>,<span class="ruby-string">"Show version, set $VERBOSE to true, profile script if option given"</span>) <span class="ruby-keyword">do</span>
|
400
|
-
<span class="ruby-identifier">puts</span> <span class="ruby-string">"ruby version: "</span> <span class="ruby-operator">+</span> [<span class="ruby-constant">RUBY_PATCHLEVEL</span>, <span class="ruby-constant">RUBY_PLATFORM</span>, <span class="ruby-constant">RUBY_VERSION</span>].<span class="ruby-identifier">join</span>(<span class="ruby-string"
|
397
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-string">"ruby version: "</span> <span class="ruby-operator">+</span> [<span class="ruby-constant">RUBY_PATCHLEVEL</span>, <span class="ruby-constant">RUBY_PLATFORM</span>, <span class="ruby-constant">RUBY_VERSION</span>].<span class="ruby-identifier">join</span>(<span class="ruby-string">' '</span>)
|
401
398
|
<span class="ruby-identifier">$VERBOSE</span> = <span class="ruby-keyword">true</span>
|
402
399
|
<span class="ruby-keyword">end</span>
|
403
400
|
|
@@ -405,25 +402,25 @@
|
|
405
402
|
<span class="ruby-identifier">$DEBUG</span> = <span class="ruby-keyword">true</span>
|
406
403
|
<span class="ruby-keyword">end</span>
|
407
404
|
|
408
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
405
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-R lib'</span>, <span class="ruby-string">'--require-noprof lib'</span>, <span class="ruby-string">'require a specific library (not profiled)'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">lib</span><span class="ruby-operator">|</span>
|
409
406
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">pre_libs</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">lib</span>
|
410
407
|
<span class="ruby-keyword">end</span>
|
411
408
|
|
412
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
409
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-E code'</span>, <span class="ruby-string">'--eval-noprof code'</span>, <span class="ruby-string">'execute the ruby statements (not profiled)'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">code</span><span class="ruby-operator">|</span>
|
413
410
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">pre_execs</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">code</span>
|
414
411
|
<span class="ruby-keyword">end</span>
|
415
412
|
|
416
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
413
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-x regexp'</span>, <span class="ruby-string">'--exclude regexp'</span>, <span class="ruby-string">'exclude methods by regexp (see method elimination)'</span>) <span class="ruby-keyword">do</span><span class="ruby-operator">|</span><span class="ruby-identifier">meth</span><span class="ruby-operator">|</span>
|
417
414
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">eliminate_methods</span> <span class="ruby-operator">||=</span> []
|
418
415
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">eliminate_methods</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">Regexp</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">meth</span>)
|
419
416
|
<span class="ruby-keyword">end</span>
|
420
417
|
|
421
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
418
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'-X file'</span>, <span class="ruby-string">'--exclude-file file'</span>, <span class="ruby-string">'exclude methods by regexp listed in file (see method elimination)'</span>) <span class="ruby-keyword">do</span><span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
|
422
419
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">eliminate_methods_files</span> <span class="ruby-operator">||=</span> []
|
423
420
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">eliminate_methods_files</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">file</span>
|
424
421
|
<span class="ruby-keyword">end</span>
|
425
422
|
|
426
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
423
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'--exclude-common-cycles'</span>, <span class="ruby-string">'make common iterators like Integer#times appear inlined'</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">meth</span><span class="ruby-operator">|</span>
|
427
424
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">eliminate_methods</span> <span class="ruby-operator">||=</span> []
|
428
425
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">eliminate_methods</span> <span class="ruby-operator">+=</span> <span class="ruby-node">%w{
|
429
426
|
Integer#times
|
@@ -454,10 +451,10 @@
|
|
454
451
|
Enumerable#collect
|
455
452
|
Enumerable#reduce
|
456
453
|
}</span>
|
457
|
-
<span class="ruby-comment">#TODO: may be the whole Enumerable module should be excluded via
|
454
|
+
<span class="ruby-comment">#TODO: may be the whole Enumerable module should be excluded via 'Enumerable#.*', we need feedback on use cases.</span>
|
458
455
|
<span class="ruby-keyword">end</span>
|
459
456
|
|
460
|
-
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string"
|
457
|
+
<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">on</span>(<span class="ruby-string">'--exclude-common-callbacks'</span>, <span class="ruby-string">'make common callbacks invocations like Integer#times appear inlined so you can see call origins in graph'</span>) <span class="ruby-keyword">do</span><span class="ruby-operator">|</span><span class="ruby-identifier">meth</span><span class="ruby-operator">|</span>
|
461
458
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">eliminate_methods</span> <span class="ruby-operator">||=</span> []
|
462
459
|
<span class="ruby-identifier">options</span>.<span class="ruby-identifier">eliminate_methods</span> <span class="ruby-operator">+=</span> <span class="ruby-node">%w{
|
463
460
|
Method#call
|
@@ -621,7 +618,7 @@
|
|
621
618
|
|
622
619
|
<footer id="validator-badges" role="contentinfo">
|
623
620
|
<p><a href="http://validator.w3.org/check/referer">Validate</a>
|
624
|
-
<p>Generated by <a href="http://
|
625
|
-
<p>Based on <a href="http://deveiate.org/projects/Darkfish-
|
621
|
+
<p>Generated by <a href="http://docs.seattlerb.org/rdoc/">RDoc</a> 4.2.0.
|
622
|
+
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
626
623
|
</footer>
|
627
624
|
|
@@ -6,20 +6,17 @@
|
|
6
6
|
|
7
7
|
<title>class RubyProf::DotPrinter - ruby-prof</title>
|
8
8
|
|
9
|
-
<link href="../fonts.css" rel="stylesheet">
|
10
|
-
<link href="../rdoc.css" rel="stylesheet">
|
11
|
-
|
12
9
|
<script type="text/javascript">
|
13
10
|
var rdoc_rel_prefix = "../";
|
14
11
|
</script>
|
15
12
|
|
16
13
|
<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
14
|
<script src="../js/darkfish.js"></script>
|
22
15
|
|
16
|
+
<link href="../css/fonts.css" rel="stylesheet">
|
17
|
+
<link href="../css/rdoc.css" rel="stylesheet">
|
18
|
+
|
19
|
+
|
23
20
|
|
24
21
|
<body id="top" role="document" class="class">
|
25
22
|
<nav role="navigation">
|
@@ -229,12 +226,12 @@ to use the :min_percent option, for example:</p>
|
|
229
226
|
<span class="ruby-ivar">@output</span> = <span class="ruby-identifier">output</span>
|
230
227
|
<span class="ruby-identifier">setup_options</span>(<span class="ruby-identifier">options</span>)
|
231
228
|
|
232
|
-
<span class="ruby-identifier">puts</span> <span class="ruby-string"
|
229
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-string">'digraph "Profile" {'</span>
|
233
230
|
<span class="ruby-comment">#puts "label=\"#{mode_name} >=#{min_percent}%\\nTotal: #{total_time}\";"</span>
|
234
231
|
<span class="ruby-identifier">puts</span> <span class="ruby-string">"labelloc=t;"</span>
|
235
232
|
<span class="ruby-identifier">puts</span> <span class="ruby-string">"labeljust=l;"</span>
|
236
233
|
<span class="ruby-identifier">print_threads</span>
|
237
|
-
<span class="ruby-identifier">puts</span> <span class="ruby-string"
|
234
|
+
<span class="ruby-identifier">puts</span> <span class="ruby-string">'}'</span>
|
238
235
|
<span class="ruby-keyword">end</span></pre>
|
239
236
|
</div>
|
240
237
|
|
@@ -254,7 +251,7 @@ to use the :min_percent option, for example:</p>
|
|
254
251
|
|
255
252
|
<footer id="validator-badges" role="contentinfo">
|
256
253
|
<p><a href="http://validator.w3.org/check/referer">Validate</a>
|
257
|
-
<p>Generated by <a href="http://
|
258
|
-
<p>Based on <a href="http://deveiate.org/projects/Darkfish-
|
254
|
+
<p>Generated by <a href="http://docs.seattlerb.org/rdoc/">RDoc</a> 4.2.0.
|
255
|
+
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
259
256
|
</footer>
|
260
257
|
|
@@ -6,20 +6,17 @@
|
|
6
6
|
|
7
7
|
<title>class RubyProf::FlatPrinter - ruby-prof</title>
|
8
8
|
|
9
|
-
<link href="../fonts.css" rel="stylesheet">
|
10
|
-
<link href="../rdoc.css" rel="stylesheet">
|
11
|
-
|
12
9
|
<script type="text/javascript">
|
13
10
|
var rdoc_rel_prefix = "../";
|
14
11
|
</script>
|
15
12
|
|
16
13
|
<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
14
|
<script src="../js/darkfish.js"></script>
|
22
15
|
|
16
|
+
<link href="../css/fonts.css" rel="stylesheet">
|
17
|
+
<link href="../css/rdoc.css" rel="stylesheet">
|
18
|
+
|
19
|
+
|
23
20
|
|
24
21
|
<body id="top" role="document" class="class">
|
25
22
|
<nav role="navigation">
|
@@ -160,7 +157,7 @@ printer.print(STDOUT, {})</pre>
|
|
160
157
|
|
161
158
|
<footer id="validator-badges" role="contentinfo">
|
162
159
|
<p><a href="http://validator.w3.org/check/referer">Validate</a>
|
163
|
-
<p>Generated by <a href="http://
|
164
|
-
<p>Based on <a href="http://deveiate.org/projects/Darkfish-
|
160
|
+
<p>Generated by <a href="http://docs.seattlerb.org/rdoc/">RDoc</a> 4.2.0.
|
161
|
+
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
165
162
|
</footer>
|
166
163
|
|
@@ -6,20 +6,17 @@
|
|
6
6
|
|
7
7
|
<title>class RubyProf::FlatPrinterWithLineNumbers - ruby-prof</title>
|
8
8
|
|
9
|
-
<link href="../fonts.css" rel="stylesheet">
|
10
|
-
<link href="../rdoc.css" rel="stylesheet">
|
11
|
-
|
12
9
|
<script type="text/javascript">
|
13
10
|
var rdoc_rel_prefix = "../";
|
14
11
|
</script>
|
15
12
|
|
16
13
|
<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
14
|
<script src="../js/darkfish.js"></script>
|
22
15
|
|
16
|
+
<link href="../css/fonts.css" rel="stylesheet">
|
17
|
+
<link href="../css/rdoc.css" rel="stylesheet">
|
18
|
+
|
19
|
+
|
23
20
|
|
24
21
|
<body id="top" role="document" class="class">
|
25
22
|
<nav role="navigation">
|
@@ -162,14 +159,14 @@ printer.print(STDOUT, {})</pre>
|
|
162
159
|
<span class="ruby-identifier">method</span>.<span class="ruby-identifier">recursive?</span> <span class="ruby-operator">?</span> <span class="ruby-string">"*"</span> <span class="ruby-operator">:</span> <span class="ruby-string">" "</span>, <span class="ruby-comment"># cycle</span>
|
163
160
|
<span class="ruby-identifier">method_name</span>(<span class="ruby-identifier">method</span>) <span class="ruby-comment"># name</span>
|
164
161
|
]
|
165
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">method</span>.<span class="ruby-identifier">source_file</span> <span class="ruby-operator">!=</span> <span class="ruby-string"
|
162
|
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">method</span>.<span class="ruby-identifier">source_file</span> <span class="ruby-operator">!=</span> <span class="ruby-string">'ruby_runtime'</span>
|
166
163
|
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">" %s:%s"</span> <span class="ruby-operator">%</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>), <span class="ruby-identifier">method</span>.<span class="ruby-identifier">line</span>]
|
167
164
|
<span class="ruby-keyword">end</span>
|
168
165
|
<span class="ruby-ivar">@output</span> <span class="ruby-operator"><<</span> <span class="ruby-string">"\n\tcalled from: "</span>
|
169
166
|
|
170
|
-
<span class="ruby-comment"># make sure they
|
167
|
+
<span class="ruby-comment"># make sure they're unique</span>
|
171
168
|
<span class="ruby-identifier">method</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>
|
172
|
-
<span class="ruby-keyword">if</span> <span class="ruby-identifier">ci</span>.<span class="ruby-identifier">parent</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">ci</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">target</span>.<span class="ruby-identifier">source_file</span> <span class="ruby-operator">!=</span> <span class="ruby-string"
|
169
|
+
<span class="ruby-keyword">if</span> <span class="ruby-identifier">ci</span>.<span class="ruby-identifier">parent</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">ci</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">target</span>.<span class="ruby-identifier">source_file</span> <span class="ruby-operator">!=</span> <span class="ruby-string">'ruby_runtime'</span>
|
173
170
|
[<span class="ruby-identifier">method_name</span>(<span class="ruby-identifier">ci</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">target</span>), <span class="ruby-constant">File</span>.<span class="ruby-identifier">expand_path</span>(<span class="ruby-identifier">ci</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">target</span>.<span class="ruby-identifier">source_file</span>), <span class="ruby-identifier">ci</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">target</span>.<span class="ruby-identifier">line</span>]
|
174
171
|
<span class="ruby-keyword">else</span>
|
175
172
|
<span class="ruby-keyword">nil</span>
|
@@ -198,7 +195,7 @@ printer.print(STDOUT, {})</pre>
|
|
198
195
|
|
199
196
|
<footer id="validator-badges" role="contentinfo">
|
200
197
|
<p><a href="http://validator.w3.org/check/referer">Validate</a>
|
201
|
-
<p>Generated by <a href="http://
|
202
|
-
<p>Based on <a href="http://deveiate.org/projects/Darkfish-
|
198
|
+
<p>Generated by <a href="http://docs.seattlerb.org/rdoc/">RDoc</a> 4.2.0.
|
199
|
+
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
203
200
|
</footer>
|
204
201
|
|
@@ -6,20 +6,17 @@
|
|
6
6
|
|
7
7
|
<title>class RubyProf::GraphHtmlPrinter - ruby-prof</title>
|
8
8
|
|
9
|
-
<link href="../fonts.css" rel="stylesheet">
|
10
|
-
<link href="../rdoc.css" rel="stylesheet">
|
11
|
-
|
12
9
|
<script type="text/javascript">
|
13
10
|
var rdoc_rel_prefix = "../";
|
14
11
|
</script>
|
15
12
|
|
16
13
|
<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
14
|
<script src="../js/darkfish.js"></script>
|
22
15
|
|
16
|
+
<link href="../css/fonts.css" rel="stylesheet">
|
17
|
+
<link href="../css/rdoc.css" rel="stylesheet">
|
18
|
+
|
19
|
+
|
23
20
|
|
24
21
|
<body id="top" role="document" class="class">
|
25
22
|
<nav role="navigation">
|
@@ -112,13 +109,12 @@
|
|
112
109
|
<p>Generates <a href="../files/examples/graph_html.html">graph</a> profile
|
113
110
|
reports as html. To use the graph html printer:</p>
|
114
111
|
|
115
|
-
<pre
|
116
|
-
[
|
117
|
-
|
112
|
+
<pre>result = RubyProf.profile do
|
113
|
+
[code to profile]
|
114
|
+
end
|
118
115
|
|
119
|
-
|
120
|
-
|
121
|
-
</pre>
|
116
|
+
printer = RubyProf::GraphHtmlPrinter.new(result)
|
117
|
+
printer.print(STDOUT, :min_percent=>0)</pre>
|
122
118
|
|
123
119
|
<p>The Graph printer takes the following options in its print methods:</p>
|
124
120
|
|
@@ -201,7 +197,7 @@ be printed out.</p>
|
|
201
197
|
<span class="ruby-comment"># Just return name</span>
|
202
198
|
<span class="ruby-identifier">h</span> <span class="ruby-identifier">method</span>.<span class="ruby-identifier">full_name</span>
|
203
199
|
<span class="ruby-keyword">else</span>
|
204
|
-
<span class="ruby-identifier">href</span> = <span class="ruby-string"
|
200
|
+
<span class="ruby-identifier">href</span> = <span class="ruby-string">'#'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">method_href</span>(<span class="ruby-identifier">thread</span>, <span class="ruby-identifier">method</span>)
|
205
201
|
<span class="ruby-node">"<a href=\"#{href}\">#{h method.full_name}</a>"</span>
|
206
202
|
<span class="ruby-keyword">end</span>
|
207
203
|
<span class="ruby-keyword">end</span></pre>
|
@@ -389,7 +385,7 @@ be printed out.</p>
|
|
389
385
|
<div class="method-source-code" id="template-source">
|
390
386
|
<pre><span class="ruby-comment"># File lib/ruby-prof/printers/graph_html_printer.rb, line 77</span>
|
391
387
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier">template</span>
|
392
|
-
<span class="ruby-string"
|
388
|
+
<span class="ruby-string">'
|
393
389
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
394
390
|
<html>
|
395
391
|
<head>
|
@@ -553,7 +549,7 @@ be printed out.</p>
|
|
553
549
|
</table>
|
554
550
|
<% end %>
|
555
551
|
</body>
|
556
|
-
</html>
|
552
|
+
</html>'</span>
|
557
553
|
<span class="ruby-keyword">end</span></pre>
|
558
554
|
</div>
|
559
555
|
|
@@ -573,7 +569,7 @@ be printed out.</p>
|
|
573
569
|
|
574
570
|
<footer id="validator-badges" role="contentinfo">
|
575
571
|
<p><a href="http://validator.w3.org/check/referer">Validate</a>
|
576
|
-
<p>Generated by <a href="http://
|
577
|
-
<p>Based on <a href="http://deveiate.org/projects/Darkfish-
|
572
|
+
<p>Generated by <a href="http://docs.seattlerb.org/rdoc/">RDoc</a> 4.2.0.
|
573
|
+
<p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
|
578
574
|
</footer>
|
579
575
|
|