The output roughly means the following:
---
<filename>:
<subname>:
called from: <filename>:<subname>: <this many times>
The reason you're seeing odd results is a limitation of static analysis.
If you have two packages with identically named methods, then their usage gets lumped together. That is, One->new and Two->new are grouped, and count as two calls to new.
# file Classone.pm
package Classone;
sub new { }
1;
# file Classtwo.pm
package Classtwo;
sub new { }
sub a_method {
Classone->new;
Classtwo->new;
}
1;
Those two files result in:
Classone.pm:
new:
Classtwo.pm:a_method: 2
Classtwo.pm:
a_method: {}
new:
Classtwo.pm:a_method: 2
I don't think you can get meaningful results unless you have an interactive environment -- like Squeak -- that can track the class of the invocant. Still, this is a nice approximation. As long as you keep the limitations in mind, it can be quite useful.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|