← Index
NYTProf Performance Profile   « block view • line view • sub view »
For -e
  Run on Wed Nov 17 21:45:08 2010
Reported on Wed Nov 17 22:10:07 2010

Filename/home/doy/perl5/perlbrew/perls/perl-5.10.1/lib/site_perl/5.10.1/x86_64-linux/Moose/Meta/Role/Application.pm
StatementsExecuted 15613 statements in 172ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
19212275.3ms97.9msMoose::Meta::Role::Application::::is_method_excludedMoose::Meta::Role::Application::is_method_excluded
19212254.5ms80.5msMoose::Meta::Role::Application::::is_method_aliasedMoose::Meta::Role::Application::is_method_aliased
1933329.7ms3.69sMoose::Meta::Role::Application::::applyMoose::Meta::Role::Application::apply
193225.57ms24.6msMoose::Meta::Role::Application::::newMoose::Meta::Role::Application::new
193114.09ms45.8msMoose::Meta::Role::Application::::apply_before_method_modifiersMoose::Meta::Role::Application::apply_before_method_modifiers
193113.91ms185msMoose::Meta::Role::Application::::apply_around_method_modifiersMoose::Meta::Role::Application::apply_around_method_modifiers
193113.71ms27.6msMoose::Meta::Role::Application::::apply_after_method_modifiersMoose::Meta::Role::Application::apply_after_method_modifiers
76112.49ms3.44msMoose::Meta::Role::Application::::is_aliased_methodMoose::Meta::Role::Application::is_aliased_method
193311.89ms1.89msMoose::Meta::Role::Application::::__ANON__[:20]Moose::Meta::Role::Application::__ANON__[:20]
144311.60ms1.60msMoose::Meta::Role::Application::::__ANON__[:14]Moose::Meta::Role::Application::__ANON__[:14]
11181µs100µsMoose::Meta::Role::Application::::BEGIN@3Moose::Meta::Role::Application::BEGIN@3
11139µs3.09msMoose::Meta::Role::Application::::BEGIN@5Moose::Meta::Role::Application::BEGIN@5
11138µs107µsMoose::Meta::Role::Application::::BEGIN@4Moose::Meta::Role::Application::BEGIN@4
0000s0sMoose::Meta::Role::Application::::apply_attributesMoose::Meta::Role::Application::apply_attributes
0000s0sMoose::Meta::Role::Application::::apply_method_modifiersMoose::Meta::Role::Application::apply_method_modifiers
0000s0sMoose::Meta::Role::Application::::apply_methodsMoose::Meta::Role::Application::apply_methods
0000s0sMoose::Meta::Role::Application::::apply_override_method_modifiersMoose::Meta::Role::Application::apply_override_method_modifiers
0000s0sMoose::Meta::Role::Application::::check_required_attributesMoose::Meta::Role::Application::check_required_attributes
0000s0sMoose::Meta::Role::Application::::check_required_methodsMoose::Meta::Role::Application::check_required_methods
0000s0sMoose::Meta::Role::Application::::check_role_exclusionsMoose::Meta::Role::Application::check_role_exclusions
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package Moose::Meta::Role::Application;
2
33104µs2119µs
# spent 100µs (81+19) within Moose::Meta::Role::Application::BEGIN@3 which was called: # once (81µs+19µs) by Moose::BEGIN@29 at line 3
use strict;
# spent 100µs making 1 call to Moose::Meta::Role::Application::BEGIN@3 # spent 19µs making 1 call to strict::import
4395µs2175µs
# spent 107µs (38+68) within Moose::Meta::Role::Application::BEGIN@4 which was called: # once (38µs+68µs) by Moose::BEGIN@29 at line 4
use warnings;
# spent 107µs making 1 call to Moose::Meta::Role::Application::BEGIN@4 # spent 68µs making 1 call to warnings::import
531.87ms26.15ms
# spent 3.09ms (39µs+3.05) within Moose::Meta::Role::Application::BEGIN@5 which was called: # once (39µs+3.05ms) by Moose::BEGIN@29 at line 5
use metaclass;
# spent 3.09ms making 1 call to Moose::Meta::Role::Application::BEGIN@5 # spent 3.05ms making 1 call to metaclass::import
6
716µsour $VERSION = '1.19';
8165µs$VERSION = eval $VERSION;
# spent 12µs executing statements in string eval
914µsour $AUTHORITY = 'cpan:STEVAN';
10
11__PACKAGE__->meta->add_attribute('method_exclusions' => (
12 init_arg => '-excludes',
13 reader => 'get_method_exclusions',
141442.56ms
# spent 1.60ms within Moose::Meta::Role::Application::__ANON__[/home/doy/perl5/perlbrew/perls/perl-5.10.1/lib/site_perl/5.10.1/x86_64-linux/Moose/Meta/Role/Application.pm:14] which was called 144 times, avg 11µs/call: # 73 times (759µs+0s) by Moose::Meta::Role::Application::ToClass::_new at line 17 of (eval 76)[Class/MOP/Method/Generated.pm:53], avg 10µs/call # 62 times (743µs+0s) by Moose::Meta::Role::Application::ToRole::_new at line 11 of (eval 76)[Class/MOP/Method/Generated.pm:53], avg 12µs/call # 9 times (98µs+0s) by Moose::Meta::Role::Application::RoleSummation::_new at line 16 of (eval 76)[Class/MOP/Method/Generated.pm:53], avg 11µs/call
default => sub { [] }
15144µs22.29ms));
# spent 2.16ms making 1 call to Class::MOP::Mixin::HasAttributes::add_attribute # spent 132µs making 1 call to Moose::Meta::Role::Application::meta
16
17__PACKAGE__->meta->add_attribute('method_aliases' => (
18 init_arg => '-alias',
19 reader => 'get_method_aliases',
201932.73ms
# spent 1.89ms within Moose::Meta::Role::Application::__ANON__[/home/doy/perl5/perlbrew/perls/perl-5.10.1/lib/site_perl/5.10.1/x86_64-linux/Moose/Meta/Role/Application.pm:20] which was called 193 times, avg 10µs/call: # 111 times (1.10ms+0s) by Moose::Meta::Role::Application::ToRole::_new at line 16 of (eval 76)[Class/MOP/Method/Generated.pm:53], avg 10µs/call # 73 times (708µs+0s) by Moose::Meta::Role::Application::ToClass::_new at line 22 of (eval 76)[Class/MOP/Method/Generated.pm:53], avg 10µs/call # 9 times (84µs+0s) by Moose::Meta::Role::Application::RoleSummation::_new at line 21 of (eval 76)[Class/MOP/Method/Generated.pm:53], avg 9µs/call
default => sub { {} }
21130µs22.16ms));
# spent 2.08ms making 1 call to Class::MOP::Mixin::HasAttributes::add_attribute # spent 85µs making 1 call to Moose::Meta::Role::Application::meta
22
23
# spent 24.6ms (5.57+19.0) within Moose::Meta::Role::Application::new which was called 193 times, avg 127µs/call: # 184 times (5.29ms+18.0ms) by Moose::Meta::Role::apply at line 483 of Moose/Meta/Role.pm, avg 127µs/call # 9 times (281µs+1.01ms) by Moose::Meta::Role::Composite::apply_params at line 124 of Moose/Meta/Role/Composite.pm, avg 144µs/call
sub new {
243865.43ms my ($class, %params) = @_;
2519319.0ms $class->_new(\%params);
# spent 10.3ms making 111 calls to Moose::Meta::Role::Application::ToRole::_new, avg 93µs/call # spent 7.66ms making 73 calls to Moose::Meta::Role::Application::ToClass::_new, avg 105µs/call # spent 1.01ms making 9 calls to Moose::Meta::Role::Application::RoleSummation::_new, avg 113µs/call
26}
27
28
# spent 97.9ms (75.3+22.6) within Moose::Meta::Role::Application::is_method_excluded which was called 1921 times, avg 51µs/call: # 1264 times (53.7ms+14.8ms) by Moose::Meta::Role::Application::ToRole::apply_methods at line 86 of Moose/Meta/Role/Application/ToRole.pm, avg 54µs/call # 657 times (21.6ms+7.75ms) by Moose::Meta::Role::Application::ToClass::apply_methods at line 157 of Moose/Meta/Role/Application/ToClass.pm, avg 45µs/call
sub is_method_excluded {
29829671.2ms my ($self, $method_name) = @_;
30192122.6ms foreach (@{$self->get_method_exclusions}) {
# spent 22.6ms making 1921 calls to Moose::Meta::Role::Application::get_method_exclusions, avg 12µs/call
31 return 1 if $_ eq $method_name;
32 }
33 return 0;
34}
35
36
# spent 80.5ms (54.5+26.0) within Moose::Meta::Role::Application::is_method_aliased which was called 1921 times, avg 42µs/call: # 1264 times (36.4ms+16.9ms) by Moose::Meta::Role::Application::ToRole::apply_methods at line 107 of Moose/Meta/Role/Application/ToRole.pm, avg 42µs/call # 657 times (18.1ms+9.06ms) by Moose::Meta::Role::Application::ToClass::apply_methods at line 169 of Moose/Meta/Role/Application/ToClass.pm, avg 41µs/call
sub is_method_aliased {
37384249.5ms my ($self, $method_name) = @_;
38192126.0ms exists $self->get_method_aliases->{$method_name} ? 1 : 0
# spent 26.0ms making 1921 calls to Moose::Meta::Role::Application::get_method_aliases, avg 14µs/call
39}
40
41
# spent 3.44ms (2.49+954µs) within Moose::Meta::Role::Application::is_aliased_method which was called 76 times, avg 45µs/call: # 76 times (2.49ms+954µs) by Moose::Meta::Role::Application::ToRole::check_required_methods at line 41 of Moose/Meta/Role/Application/ToRole.pm, avg 45µs/call
sub is_aliased_method {
422282.37ms my ($self, $method_name) = @_;
4376954µs my %aliased_names = reverse %{$self->get_method_aliases};
# spent 954µs making 76 calls to Moose::Meta::Role::Application::get_method_aliases, avg 13µs/call
44 exists $aliased_names{$method_name} ? 1 : 0;
45}
46
47
# spent 3.69s (29.7ms+3.66) within Moose::Meta::Role::Application::apply which was called 193 times, avg 19.1ms/call: # 111 times (17.9ms+1.86s) by Moose::Meta::Role::Application::ToRole::apply at line 17 of Moose/Meta/Role/Application/ToRole.pm, avg 16.9ms/call # 73 times (10.4ms+1.55s) by Moose::Meta::Role::Application::ToClass::apply at line 31 of Moose/Meta/Role/Application/ToClass.pm, avg 21.4ms/call # 9 times (1.43ms+246ms) by Moose::Meta::Role::Composite::apply_params at line 124 of Moose/Meta/Role/Composite.pm, avg 27.5ms/call
sub apply {
48193025.7ms my $self = shift;
49
50193155ms $self->check_role_exclusions(@_);
# spent 136ms making 73 calls to Moose::Meta::Role::Application::ToClass::check_role_exclusions, avg 1.86ms/call # spent 16.6ms making 111 calls to Moose::Meta::Role::Application::ToRole::check_role_exclusions, avg 150µs/call # spent 2.75ms making 9 calls to Moose::Meta::Role::Application::RoleSummation::check_role_exclusions, avg 305µs/call
5119391.6ms $self->check_required_methods(@_);
# spent 63.8ms making 111 calls to Moose::Meta::Role::Application::ToRole::check_required_methods, avg 575µs/call # spent 14.1ms making 73 calls to Moose::Meta::Role::Application::ToClass::check_required_methods, avg 193µs/call # spent 13.7ms making 9 calls to Moose::Meta::Role::Application::RoleSummation::check_required_methods, avg 1.52ms/call
521931.44ms $self->check_required_attributes(@_);
# spent 824µs making 111 calls to Moose::Meta::Role::Application::ToRole::check_required_attributes, avg 7µs/call # spent 549µs making 73 calls to Moose::Meta::Role::Application::ToClass::check_required_attributes, avg 8µs/call # spent 67µs making 9 calls to Moose::Meta::Role::Application::RoleSummation::check_required_attributes, avg 7µs/call
53
54193292ms $self->apply_attributes(@_);
# spent 274ms making 73 calls to Moose::Meta::Role::Application::ToClass::apply_attributes, avg 3.75ms/call # spent 17.1ms making 111 calls to Moose::Meta::Role::Application::ToRole::apply_attributes, avg 154µs/call # spent 1.50ms making 9 calls to Moose::Meta::Role::Application::RoleSummation::apply_attributes, avg 167µs/call
551932.61s $self->apply_methods(@_);
# spent 1.54s making 111 calls to Moose::Meta::Role::Application::ToRole::apply_methods, avg 13.9ms/call # spent 861ms making 73 calls to Moose::Meta::Role::Application::ToClass::apply_methods, avg 11.8ms/call # spent 203ms making 9 calls to Moose::Meta::Role::Application::RoleSummation::apply_methods, avg 22.5ms/call
56
57193255ms $self->apply_override_method_modifiers(@_);
# spent 148ms making 111 calls to Moose::Meta::Role::Application::ToRole::apply_override_method_modifiers, avg 1.33ms/call # spent 95.5ms making 73 calls to Moose::Meta::Role::Application::ToClass::apply_override_method_modifiers, avg 1.31ms/call # spent 11.5ms making 9 calls to Moose::Meta::Role::Application::RoleSummation::apply_override_method_modifiers, avg 1.28ms/call
58
5919345.8ms $self->apply_before_method_modifiers(@_);
# spent 45.8ms making 193 calls to Moose::Meta::Role::Application::apply_before_method_modifiers, avg 237µs/call
60193185ms $self->apply_around_method_modifiers(@_);
# spent 185ms making 193 calls to Moose::Meta::Role::Application::apply_around_method_modifiers, avg 958µs/call
6119327.6ms $self->apply_after_method_modifiers(@_);
# spent 27.6ms making 193 calls to Moose::Meta::Role::Application::apply_after_method_modifiers, avg 143µs/call
62}
63
64sub check_role_exclusions { Carp::croak "Abstract Method" }
65sub check_required_methods { Carp::croak "Abstract Method" }
66sub check_required_attributes { Carp::croak "Abstract Method" }
67
68sub apply_attributes { Carp::croak "Abstract Method" }
69sub apply_methods { Carp::croak "Abstract Method" }
70sub apply_override_method_modifiers { Carp::croak "Abstract Method" }
71sub apply_method_modifiers { Carp::croak "Abstract Method" }
72
731933.66ms19341.7ms
# spent 45.8ms (4.09+41.7) within Moose::Meta::Role::Application::apply_before_method_modifiers which was called 193 times, avg 237µs/call: # 193 times (4.09ms+41.7ms) by Moose::Meta::Role::Application::apply at line 59, avg 237µs/call
sub apply_before_method_modifiers { (shift)->apply_method_modifiers('before' => @_) }
# spent 29.2ms making 73 calls to Moose::Meta::Role::Application::ToClass::apply_method_modifiers, avg 400µs/call # spent 10.8ms making 111 calls to Moose::Meta::Role::Application::ToRole::apply_method_modifiers, avg 97µs/call # spent 1.70ms making 9 calls to Moose::Meta::Role::Application::RoleSummation::apply_method_modifiers, avg 189µs/call
741933.38ms193181ms
# spent 185ms (3.91+181) within Moose::Meta::Role::Application::apply_around_method_modifiers which was called 193 times, avg 958µs/call: # 193 times (3.91ms+181ms) by Moose::Meta::Role::Application::apply at line 60, avg 958µs/call
sub apply_around_method_modifiers { (shift)->apply_method_modifiers('around' => @_) }
# spent 124ms making 73 calls to Moose::Meta::Role::Application::ToClass::apply_method_modifiers, avg 1.69ms/call # spent 47.1ms making 111 calls to Moose::Meta::Role::Application::ToRole::apply_method_modifiers, avg 425µs/call # spent 10.3ms making 9 calls to Moose::Meta::Role::Application::RoleSummation::apply_method_modifiers, avg 1.15ms/call
751933.28ms19323.9ms
# spent 27.6ms (3.71+23.9) within Moose::Meta::Role::Application::apply_after_method_modifiers which was called 193 times, avg 143µs/call: # 193 times (3.71ms+23.9ms) by Moose::Meta::Role::Application::apply at line 61, avg 143µs/call
sub apply_after_method_modifiers { (shift)->apply_method_modifiers('after' => @_) }
# spent 13.1ms making 73 calls to Moose::Meta::Role::Application::ToClass::apply_method_modifiers, avg 180µs/call # spent 9.06ms making 111 calls to Moose::Meta::Role::Application::ToRole::apply_method_modifiers, avg 82µs/call # spent 1.69ms making 9 calls to Moose::Meta::Role::Application::RoleSummation::apply_method_modifiers, avg 188µs/call
76
77138µs1;
78
79__END__