| Filename | /home/doy/coding/src/Moose/blib/lib//Moose/Meta/Role/Application.pm |
| Statements | Executed 2682 statements in 32.9ms |
| Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
|---|---|---|---|---|---|
| 337 | 2 | 2 | 12.0ms | 16.0ms | Moose::Meta::Role::Application::is_method_excluded |
| 334 | 2 | 2 | 9.01ms | 13.2ms | Moose::Meta::Role::Application::is_method_aliased |
| 42 | 3 | 3 | 6.44ms | 650ms | Moose::Meta::Role::Application::apply |
| 42 | 2 | 2 | 1.31ms | 6.47ms | Moose::Meta::Role::Application::new |
| 42 | 1 | 1 | 904µs | 39.1ms | Moose::Meta::Role::Application::apply_around_method_modifiers |
| 42 | 1 | 1 | 881µs | 15.1ms | Moose::Meta::Role::Application::apply_before_method_modifiers |
| 42 | 1 | 1 | 832µs | 6.68ms | Moose::Meta::Role::Application::apply_after_method_modifiers |
| 22 | 1 | 1 | 697µs | 968µs | Moose::Meta::Role::Application::is_aliased_method |
| 42 | 2 | 1 | 473µs | 473µs | Moose::Meta::Role::Application::__ANON__[:20] |
| 33 | 2 | 1 | 326µs | 326µs | Moose::Meta::Role::Application::__ANON__[:14] |
| 1 | 1 | 1 | 72µs | 90µs | Moose::Meta::Role::Application::BEGIN@3 |
| 1 | 1 | 1 | 40µs | 109µs | Moose::Meta::Role::Application::BEGIN@4 |
| 1 | 1 | 1 | 39µs | 2.75ms | Moose::Meta::Role::Application::BEGIN@5 |
| 0 | 0 | 0 | 0s | 0s | Moose::Meta::Role::Application::apply_attributes |
| 0 | 0 | 0 | 0s | 0s | Moose::Meta::Role::Application::apply_method_modifiers |
| 0 | 0 | 0 | 0s | 0s | Moose::Meta::Role::Application::apply_methods |
| 0 | 0 | 0 | 0s | 0s | Moose::Meta::Role::Application::apply_override_method_modifiers |
| 0 | 0 | 0 | 0s | 0s | Moose::Meta::Role::Application::check_required_attributes |
| 0 | 0 | 0 | 0s | 0s | Moose::Meta::Role::Application::check_required_methods |
| 0 | 0 | 0 | 0s | 0s | Moose::Meta::Role::Application::check_role_exclusions |
| Line | State ments |
Time on line |
Calls | Time in subs |
Code |
|---|---|---|---|---|---|
| 1 | package Moose::Meta::Role::Application; | ||||
| 2 | |||||
| 3 | 3 | 99µs | 2 | 108µs | # spent 90µs (72+18) within Moose::Meta::Role::Application::BEGIN@3 which was called:
# once (72µs+18µs) by Moose::BEGIN@29 at line 3 # spent 90µs making 1 call to Moose::Meta::Role::Application::BEGIN@3
# spent 18µs making 1 call to strict::import |
| 4 | 3 | 94µs | 2 | 177µs | # spent 109µs (40+69) within Moose::Meta::Role::Application::BEGIN@4 which was called:
# once (40µs+69µs) by Moose::BEGIN@29 at line 4 # spent 109µs making 1 call to Moose::Meta::Role::Application::BEGIN@4
# spent 69µs making 1 call to warnings::import |
| 5 | 3 | 1.88ms | 2 | 5.47ms | # spent 2.75ms (39µs+2.71) within Moose::Meta::Role::Application::BEGIN@5 which was called:
# once (39µs+2.71ms) by Moose::BEGIN@29 at line 5 # spent 2.75ms making 1 call to Moose::Meta::Role::Application::BEGIN@5
# spent 2.71ms making 1 call to metaclass::import |
| 6 | |||||
| 7 | 1 | 5µs | our $VERSION = '1.19'; | ||
| 8 | 1 | 62µs | $VERSION = eval $VERSION; # spent 11µs executing statements in string eval | ||
| 9 | 1 | 4µs | our $AUTHORITY = 'cpan:STEVAN'; | ||
| 10 | |||||
| 11 | __PACKAGE__->meta->add_attribute('method_exclusions' => ( | ||||
| 12 | init_arg => '-excludes', | ||||
| 13 | reader => 'get_method_exclusions', | ||||
| 14 | 33 | 494µs | # spent 326µs within Moose::Meta::Role::Application::__ANON__[/home/doy/coding/src/Moose/blib/lib//Moose/Meta/Role/Application.pm:14] which was called 33 times, avg 10µs/call:
# 17 times (159µs+0s) by Moose::Meta::Role::Application::ToClass::_new at line 21 of generated method (unknown origin), avg 9µs/call
# 16 times (166µs+0s) by Moose::Meta::Role::Application::RoleSummation::_new or Moose::Meta::Role::Application::ToRole::_new at line 18 of generated method (unknown origin), avg 10µs/call | ||
| 15 | 1 | 44µs | 2 | 2.21ms | )); # spent 2.07ms making 1 call to Class::MOP::Mixin::HasAttributes::add_attribute
# spent 136µ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', | ||||
| 20 | 42 | 660µs | # spent 473µs within Moose::Meta::Role::Application::__ANON__[/home/doy/coding/src/Moose/blib/lib//Moose/Meta/Role/Application.pm:20] which was called 42 times, avg 11µs/call:
# 21 times (261µs+0s) by Moose::Meta::Role::Application::RoleSummation::_new or Moose::Meta::Role::Application::ToRole::_new at line 12 of generated method (unknown origin), avg 12µs/call
# 21 times (213µs+0s) by Moose::Meta::Role::Application::ToClass::_new at line 15 of generated method (unknown origin), avg 10µs/call | ||
| 21 | 1 | 33µs | 2 | 2.03ms | )); # spent 1.94ms making 1 call to Class::MOP::Mixin::HasAttributes::add_attribute
# spent 98µs making 1 call to Moose::Meta::Role::Application::meta |
| 22 | |||||
| 23 | # spent 6.47ms (1.31+5.16) within Moose::Meta::Role::Application::new which was called 42 times, avg 154µs/call:
# 39 times (1.20ms+4.72ms) by Moose::Meta::Role::apply at line 483 of Moose/Meta/Role.pm, avg 152µs/call
# 3 times (111µs+434µs) by Moose::Meta::Role::Composite::apply_params at line 124 of Moose/Meta/Role/Composite.pm, avg 182µs/call | ||||
| 24 | 84 | 1.20ms | my ($class, %params) = @_; | ||
| 25 | 42 | 5.16ms | $class->_new(\%params); # spent 2.49ms making 21 calls to Moose::Meta::Role::Application::ToClass::_new, avg 119µs/call
# spent 2.23ms making 18 calls to Moose::Meta::Role::Application::ToRole::_new, avg 124µs/call
# spent 434µs making 3 calls to Moose::Meta::Role::Application::RoleSummation::_new, avg 145µs/call | ||
| 26 | } | ||||
| 27 | |||||
| 28 | # spent 16.0ms (12.0+3.99) within Moose::Meta::Role::Application::is_method_excluded which was called 337 times, avg 47µs/call:
# 172 times (6.38ms+1.94ms) by Moose::Meta::Role::Application::ToRole::apply_methods at line 86 of Moose/Meta/Role/Application/ToRole.pm, avg 48µs/call
# 165 times (5.60ms+2.05ms) by Moose::Meta::Role::Application::ToClass::apply_methods at line 157 of Moose/Meta/Role/Application/ToClass.pm, avg 46µs/call | ||||
| 29 | 995 | 10.1ms | my ($self, $method_name) = @_; | ||
| 30 | 337 | 3.99ms | foreach (@{$self->get_method_exclusions}) { # spent 3.99ms making 337 calls to Moose::Meta::Role::Application::get_method_exclusions, avg 12µs/call | ||
| 31 | 233 | 1.33ms | return 1 if $_ eq $method_name; | ||
| 32 | } | ||||
| 33 | return 0; | ||||
| 34 | } | ||||
| 35 | |||||
| 36 | # spent 13.2ms (9.01+4.24) within Moose::Meta::Role::Application::is_method_aliased which was called 334 times, avg 40µs/call:
# 172 times (4.54ms+2.11ms) by Moose::Meta::Role::Application::ToRole::apply_methods at line 107 of Moose/Meta/Role/Application/ToRole.pm, avg 39µs/call
# 162 times (4.47ms+2.13ms) by Moose::Meta::Role::Application::ToClass::apply_methods at line 169 of Moose/Meta/Role/Application/ToClass.pm, avg 41µs/call | ||||
| 37 | 668 | 8.29ms | my ($self, $method_name) = @_; | ||
| 38 | 334 | 4.24ms | exists $self->get_method_aliases->{$method_name} ? 1 : 0 # spent 4.24ms making 334 calls to Moose::Meta::Role::Application::get_method_aliases, avg 13µs/call | ||
| 39 | } | ||||
| 40 | |||||
| 41 | # spent 968µs (697+271) within Moose::Meta::Role::Application::is_aliased_method which was called 22 times, avg 44µs/call:
# 22 times (697µs+271µs) by Moose::Meta::Role::Application::ToRole::check_required_methods at line 41 of Moose/Meta/Role/Application/ToRole.pm, avg 44µs/call | ||||
| 42 | 66 | 679µs | my ($self, $method_name) = @_; | ||
| 43 | 22 | 271µs | my %aliased_names = reverse %{$self->get_method_aliases}; # spent 271µs making 22 calls to Moose::Meta::Role::Application::get_method_aliases, avg 12µs/call | ||
| 44 | exists $aliased_names{$method_name} ? 1 : 0; | ||||
| 45 | } | ||||
| 46 | |||||
| 47 | # spent 650ms (6.44+644) within Moose::Meta::Role::Application::apply which was called 42 times, avg 15.5ms/call:
# 21 times (3.20ms+370ms) by Moose::Meta::Role::Application::ToClass::apply at line 31 of Moose/Meta/Role/Application/ToClass.pm, avg 17.8ms/call
# 18 times (2.73ms+203ms) by Moose::Meta::Role::Application::ToRole::apply at line 17 of Moose/Meta/Role/Application/ToRole.pm, avg 11.5ms/call
# 3 times (514µs+69.9ms) by Moose::Meta::Role::Composite::apply_params at line 124 of Moose/Meta/Role/Composite.pm, avg 23.5ms/call | ||||
| 48 | 420 | 5.61ms | my $self = shift; | ||
| 49 | |||||
| 50 | 42 | 35.0ms | $self->check_role_exclusions(@_); # spent 30.9ms making 21 calls to Moose::Meta::Role::Application::ToClass::check_role_exclusions, avg 1.47ms/call
# spent 2.90ms making 18 calls to Moose::Meta::Role::Application::ToRole::check_role_exclusions, avg 161µs/call
# spent 1.17ms making 3 calls to Moose::Meta::Role::Application::RoleSummation::check_role_exclusions, avg 389µs/call | ||
| 51 | 42 | 61.4ms | $self->check_required_methods(@_); # spent 30.3ms making 21 calls to Moose::Meta::Role::Application::ToClass::check_required_methods, avg 1.44ms/call
# spent 15.7ms making 3 calls to Moose::Meta::Role::Application::RoleSummation::check_required_methods, avg 5.25ms/call
# spent 15.3ms making 18 calls to Moose::Meta::Role::Application::ToRole::check_required_methods, avg 853µs/call | ||
| 52 | 42 | 328µs | $self->check_required_attributes(@_); # spent 164µs making 21 calls to Moose::Meta::Role::Application::ToClass::check_required_attributes, avg 8µs/call
# spent 141µs making 18 calls to Moose::Meta::Role::Application::ToRole::check_required_attributes, avg 8µs/call
# spent 23µs making 3 calls to Moose::Meta::Role::Application::RoleSummation::check_required_attributes, avg 8µs/call | ||
| 53 | |||||
| 54 | 42 | 79.3ms | $self->apply_attributes(@_); # spent 72.0ms making 21 calls to Moose::Meta::Role::Application::ToClass::apply_attributes, avg 3.43ms/call
# spent 5.28ms making 18 calls to Moose::Meta::Role::Application::ToRole::apply_attributes, avg 293µs/call
# spent 2.00ms making 3 calls to Moose::Meta::Role::Application::RoleSummation::apply_attributes, avg 666µs/call | ||
| 55 | 42 | 365ms | $self->apply_methods(@_); # spent 161ms making 21 calls to Moose::Meta::Role::Application::ToClass::apply_methods, avg 7.66ms/call
# spent 157ms making 18 calls to Moose::Meta::Role::Application::ToRole::apply_methods, avg 8.74ms/call
# spent 46.5ms making 3 calls to Moose::Meta::Role::Application::RoleSummation::apply_methods, avg 15.5ms/call | ||
| 56 | |||||
| 57 | 42 | 42.2ms | $self->apply_override_method_modifiers(@_); # spent 28.1ms making 21 calls to Moose::Meta::Role::Application::ToClass::apply_override_method_modifiers, avg 1.34ms/call
# spent 12.6ms making 18 calls to Moose::Meta::Role::Application::ToRole::apply_override_method_modifiers, avg 698µs/call
# spent 1.45ms making 3 calls to Moose::Meta::Role::Application::RoleSummation::apply_override_method_modifiers, avg 485µs/call | ||
| 58 | |||||
| 59 | 42 | 15.1ms | $self->apply_before_method_modifiers(@_); # spent 15.1ms making 42 calls to Moose::Meta::Role::Application::apply_before_method_modifiers, avg 360µs/call | ||
| 60 | 42 | 39.1ms | $self->apply_around_method_modifiers(@_); # spent 39.1ms making 42 calls to Moose::Meta::Role::Application::apply_around_method_modifiers, avg 931µs/call | ||
| 61 | 42 | 6.68ms | $self->apply_after_method_modifiers(@_); # spent 6.68ms making 42 calls to Moose::Meta::Role::Application::apply_after_method_modifiers, avg 159µs/call | ||
| 62 | } | ||||
| 63 | |||||
| 64 | sub check_role_exclusions { Carp::croak "Abstract Method" } | ||||
| 65 | sub check_required_methods { Carp::croak "Abstract Method" } | ||||
| 66 | sub check_required_attributes { Carp::croak "Abstract Method" } | ||||
| 67 | |||||
| 68 | sub apply_attributes { Carp::croak "Abstract Method" } | ||||
| 69 | sub apply_methods { Carp::croak "Abstract Method" } | ||||
| 70 | sub apply_override_method_modifiers { Carp::croak "Abstract Method" } | ||||
| 71 | sub apply_method_modifiers { Carp::croak "Abstract Method" } | ||||
| 72 | |||||
| 73 | 42 | 790µs | 42 | 14.3ms | # spent 15.1ms (881µs+14.3) within Moose::Meta::Role::Application::apply_before_method_modifiers which was called 42 times, avg 360µs/call:
# 42 times (881µs+14.3ms) by Moose::Meta::Role::Application::apply at line 59, avg 360µs/call # spent 11.4ms making 21 calls to Moose::Meta::Role::Application::ToClass::apply_method_modifiers, avg 542µs/call
# spent 2.11ms making 18 calls to Moose::Meta::Role::Application::ToRole::apply_method_modifiers, avg 117µs/call
# spent 752µs making 3 calls to Moose::Meta::Role::Application::RoleSummation::apply_method_modifiers, avg 251µs/call |
| 74 | 42 | 767µs | 42 | 38.2ms | # spent 39.1ms (904µs+38.2) within Moose::Meta::Role::Application::apply_around_method_modifiers which was called 42 times, avg 931µs/call:
# 42 times (904µs+38.2ms) by Moose::Meta::Role::Application::apply at line 60, avg 931µs/call # spent 31.7ms making 21 calls to Moose::Meta::Role::Application::ToClass::apply_method_modifiers, avg 1.51ms/call
# spent 5.09ms making 18 calls to Moose::Meta::Role::Application::ToRole::apply_method_modifiers, avg 283µs/call
# spent 1.42ms making 3 calls to Moose::Meta::Role::Application::RoleSummation::apply_method_modifiers, avg 474µs/call |
| 75 | 42 | 712µs | 42 | 5.85ms | # spent 6.68ms (832µs+5.85) within Moose::Meta::Role::Application::apply_after_method_modifiers which was called 42 times, avg 159µs/call:
# 42 times (832µs+5.85ms) by Moose::Meta::Role::Application::apply at line 61, avg 159µs/call # spent 3.50ms making 21 calls to Moose::Meta::Role::Application::ToClass::apply_method_modifiers, avg 167µs/call
# spent 1.70ms making 18 calls to Moose::Meta::Role::Application::ToRole::apply_method_modifiers, avg 94µs/call
# spent 646µs making 3 calls to Moose::Meta::Role::Application::RoleSummation::apply_method_modifiers, avg 215µs/call |
| 76 | |||||
| 77 | 1 | 37µs | 1; | ||
| 78 | |||||
| 79 | __END__ |