← Index
NYTProf Performance Profile   « line view »
For /Users/timbo/perl5/perlbrew/perls/perl-5.18.2/bin/perlcritic
  Run on Sat Mar 19 22:12:22 2016
Reported on Sat Mar 19 22:14:12 2016

Filename/Users/timbo/perl5/perlbrew/perls/perl-5.18.2/lib/site_perl/5.18.2/Path/IsDev/Role/HeuristicSet.pm
StatementsExecuted 1509 statements in 3.04ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
11111.15ms93.8msPath::IsDev::Role::HeuristicSet::::matchesPath::IsDev::Role::HeuristicSet::matches
12211601┬Ás23.0msPath::IsDev::Role::HeuristicSet::::_load_modulePath::IsDev::Role::HeuristicSet::_load_module
11011516┬Ás4.11msPath::IsDev::Role::HeuristicSet::::_expand_heuristicPath::IsDev::Role::HeuristicSet::_expand_heuristic
14321184┬Ás184┬ÁsPath::IsDev::Role::HeuristicSet::::_com_mnPath::IsDev::Role::HeuristicSet::_com_mn
12211174┬Ás174┬ÁsPath::IsDev::Role::HeuristicSet::::_use_modulePath::IsDev::Role::HeuristicSet::_use_module
3311169┬Ás1.36msPath::IsDev::Role::HeuristicSet::::_expand_negative_heuristicPath::IsDev::Role::HeuristicSet::_expand_negative_heuristic
11115┬Ás15┬ÁsRole::Tiny::::BEGIN@1.17 Role::Tiny::BEGIN@1.17
11110┬Ás22┬ÁsRole::Tiny::::BEGIN@2.18 Role::Tiny::BEGIN@2.18
1117┬Ás84┬ÁsPath::IsDev::Role::HeuristicSet::::BEGIN@28Path::IsDev::Role::HeuristicSet::BEGIN@28
1117┬Ás10┬ÁsRole::Tiny::::BEGIN@3.19 Role::Tiny::BEGIN@3.19
1116┬Ás8┬ÁsRole::Tiny::::BEGIN@4.20 Role::Tiny::BEGIN@4.20
2114┬Ás4┬ÁsPath::IsDev::Role::HeuristicSet::::_debugPath::IsDev::Role::HeuristicSet::_debug
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1239┬Ás115┬Ás
# spent 15┬Ás within Role::Tiny::BEGIN@1.17 which was called: # once (15┬Ás+0s) by Role::Tiny::_load_module at line 1
use 5.008; # utf8;
# spent 15┬Ás making 1 call to Role::Tiny::BEGIN@1.17
2219┬Ás233┬Ás
# spent 22┬Ás (10+11) within Role::Tiny::BEGIN@2.18 which was called: # once (10┬Ás+11┬Ás) by Role::Tiny::_load_module at line 2
use strict;
# spent 22┬Ás making 1 call to Role::Tiny::BEGIN@2.18 # spent 11┬Ás making 1 call to strict::import
3217┬Ás214┬Ás
# spent 10┬Ás (7+4) within Role::Tiny::BEGIN@3.19 which was called: # once (7┬Ás+4┬Ás) by Role::Tiny::_load_module at line 3
use warnings;
# spent 10┬Ás making 1 call to Role::Tiny::BEGIN@3.19 # spent 4┬Ás making 1 call to warnings::import
42115┬Ás29┬Ás
# spent 8┬Ás (6+1) within Role::Tiny::BEGIN@4.20 which was called: # once (6┬Ás+1┬Ás) by Role::Tiny::_load_module at line 4
use utf8;
# spent 8┬Ás making 1 call to Role::Tiny::BEGIN@4.20 # spent 1┬Ás making 1 call to utf8::import
5
6package Path::IsDev::Role::HeuristicSet;
71600ns$Path::IsDev::Role::HeuristicSet::VERSION = '1.001000';
8# ABSTRACT: Role for sets of Heuristics.
9
101200nsour $AUTHORITY = 'cpan:KENTNL'; # AUTHORITY
11
- -
23244378┬Ás12222.2ms
# spent 174┬Ás within Path::IsDev::Role::HeuristicSet::_use_module which was called 122 times, avg 1┬Ás/call: # 122 times (174┬Ás+0s) by Path::IsDev::Role::HeuristicSet::_load_module at line 50, avg 1┬Ás/call
sub _use_module { require Module::Runtime; goto &Module::Runtime::use_module }
# spent 22.2ms making 122 calls to Module::Runtime::use_module, avg 182┬Ás/call
24286440┬Ás1434.60ms
# spent 184┬Ás within Path::IsDev::Role::HeuristicSet::_com_mn which was called 143 times, avg 1┬Ás/call: # 110 times (135┬Ás+0s) by Path::IsDev::Role::HeuristicSet::_expand_heuristic at line 40, avg 1┬Ás/call # 33 times (49┬Ás+0s) by Path::IsDev::Role::HeuristicSet::_expand_negative_heuristic at line 45, avg 1┬Ás/call
sub _com_mn { require Module::Runtime; goto &Module::Runtime::compose_module_name; }
# spent 4.60ms making 143 calls to Module::Runtime::compose_module_name, avg 32┬Ás/call
25## no critic (Subroutines::ProhibitCallsToUnexportedSubs)
2649┬Ás28┬Ás
# spent 4┬Ás within Path::IsDev::Role::HeuristicSet::_debug which was called 2 times, avg 2┬Ás/call: # 2 times (4┬Ás+0s) by Path::IsDev::Role::HeuristicSet::matches at line 69, avg 2┬Ás/call
sub _debug { require Path::IsDev; goto &Path::IsDev::debug }
# spent 8┬Ás making 2 calls to Path::IsDev::Object::__ANON__[Path/IsDev/Object.pm:156], avg 4┬Ás/call
27
282212┬Ás2162┬Ás
# spent 84┬Ás (7+77) within Path::IsDev::Role::HeuristicSet::BEGIN@28 which was called: # once (7┬Ás+77┬Ás) by Role::Tiny::_load_module at line 28
use Role::Tiny qw( requires );
# spent 84┬Ás making 1 call to Path::IsDev::Role::HeuristicSet::BEGIN@28 # spent 77┬Ás making 1 call to Role::Tiny::import
29
- -
3612┬Ás14┬Ásrequires 'modules';
# spent 4┬Ás making 1 call to Role::Tiny::__ANON__[Role/Tiny.pm:63]
37
38
# spent 4.11ms (516┬Ás+3.60) within Path::IsDev::Role::HeuristicSet::_expand_heuristic which was called 110 times, avg 37┬Ás/call: # 110 times (516┬Ás+3.60ms) by Path::IsDev::Role::HeuristicSet::Simple::modules at line 65 of Path/IsDev/Role/HeuristicSet/Simple.pm, avg 37┬Ás/call
sub _expand_heuristic {
3911036┬Ás my ( undef, $hn ) = @_;
40110227┬Ás110135┬Ás return _com_mn( 'Path::IsDev::Heuristic', $hn );
# spent 135┬Ás making 110 calls to Path::IsDev::Role::HeuristicSet::_com_mn, avg 1┬Ás/call
41}
42
43
# spent 1.36ms (169┬Ás+1.19) within Path::IsDev::Role::HeuristicSet::_expand_negative_heuristic which was called 33 times, avg 41┬Ás/call: # 33 times (169┬Ás+1.19ms) by Path::IsDev::Role::HeuristicSet::Simple::modules at line 62 of Path/IsDev/Role/HeuristicSet/Simple.pm, avg 41┬Ás/call
sub _expand_negative_heuristic {
443312┬Ás my ( undef, $hn ) = @_;
453385┬Ás3349┬Ás return _com_mn( 'Path::IsDev::NegativeHeuristic', $hn );
# spent 49┬Ás making 33 calls to Path::IsDev::Role::HeuristicSet::_com_mn, avg 1┬Ás/call
46}
47
48
# spent 23.0ms (601┬Ás+22.4) within Path::IsDev::Role::HeuristicSet::_load_module which was called 122 times, avg 188┬Ás/call: # 122 times (601┬Ás+22.4ms) by Path::IsDev::Role::HeuristicSet::matches at line 66, avg 188┬Ás/call
sub _load_module {
4912255┬Ás my ( undef, $module ) = @_;
50122266┬Ás122174┬Ás return _use_module($module);
# spent 174┬Ás making 122 calls to Path::IsDev::Role::HeuristicSet::_use_module, avg 1┬Ás/call
51}
52
- -
63
# spent 93.8ms (1.15+92.6) within Path::IsDev::Role::HeuristicSet::matches which was called 11 times, avg 8.53ms/call: # 11 times (1.15ms+92.6ms) by Path::IsDev::Object::__ANON__[/Users/timbo/perl5/perlbrew/perls/perl-5.18.2/lib/site_perl/5.18.2/Path/IsDev/Object.pm:201] at line 200 of Path/IsDev/Object.pm, avg 8.53ms/call
sub matches {
64113┬Ás my ( $self, $result_object ) = @_;
651149┬Ás116.01msTESTS: for my $module ( $self->modules ) {
# spent 6.01ms making 11 calls to Path::IsDev::Role::HeuristicSet::Simple::modules, avg 547┬Ás/call
66122171┬Ás12223.0ms $self->_load_module($module);
# spent 23.0ms making 122 calls to Path::IsDev::Role::HeuristicSet::_load_module, avg 188┬Ás/call
67122652┬Ás122211┬Ás if ( $module->can('excludes') ) {
# spent 211┬Ás making 122 calls to UNIVERSAL::can, avg 2┬Ás/call
683245┬Ás3234.3ms if ( $module->excludes($result_object) ) {
# spent 22.9ms making 11 calls to Path::IsDev::NegativeHeuristic::HomeDir::excludes, avg 2.08ms/call # spent 10.1ms making 10 calls to Path::IsDev::NegativeHeuristic::PerlINC::excludes, avg 1.01ms/call # spent 1.31ms making 11 calls to Path::IsDev::NegativeHeuristic::IsDev::IgnoreFile::excludes, avg 120┬Ás/call
69212┬Ás829┬Ás _debug( $module->name . q[ excludes path ] . $result_object->path );
# spent 19┬Ás making 2 calls to Path::IsDev::Role::NegativeHeuristic::name, avg 9┬Ás/call # spent 4┬Ás making 2 calls to Path::IsDev::Role::HeuristicSet::_debug, avg 2┬Ás/call # spent 3┬Ás making 2 calls to Path::IsDev::Result::path, avg 1┬Ás/call # spent 3┬Ás making 2 calls to Path::Tiny::__ANON__[Path/Tiny.pm:31], avg 1┬Ás/call
7024┬Ás return;
71 }
723018┬Ás next TESTS;
73 }
7490147┬Ás9029.2ms next unless $module->matches($result_object);
# spent 16.5ms making 9 calls to Path::IsDev::Heuristic::Changelog::matches, avg 1.83ms/call # spent 2.62ms making 9 calls to Path::IsDev::Heuristic::Makefile::matches, avg 291┬Ás/call # spent 1.83ms making 9 calls to Path::IsDev::Heuristic::TestDir::matches, avg 204┬Ás/call # spent 1.79ms making 9 calls to Path::IsDev::Heuristic::MYMETA::matches, avg 199┬Ás/call # spent 1.68ms making 9 calls to Path::IsDev::Heuristic::META::matches, avg 187┬Ás/call # spent 988┬Ás making 9 calls to Path::IsDev::Heuristic::Tool::Dzil::matches, avg 110┬Ás/call # spent 968┬Ás making 9 calls to Path::IsDev::Heuristic::VCS::Git::matches, avg 108┬Ás/call # spent 962┬Ás making 9 calls to Path::IsDev::Heuristic::DevDirMarker::matches, avg 107┬Ás/call # spent 922┬Ás making 9 calls to Path::IsDev::Heuristic::Tool::ModuleBuild::matches, avg 102┬Ás/call # spent 907┬Ás making 9 calls to Path::IsDev::Heuristic::Tool::MakeMaker::matches, avg 101┬Ás/call
75 my $name = $module->name;
76 _debug( $name . q[ matched path ] . $result_object->path );
77 return 1;
78 }
79919┬Ás return;
80}
81
8213┬Ás1;
83
84__END__