| Filename | /home/doy/coding/src/Moose/blib/lib//Moose/Meta/Role/Application.pm |
| Statements | Executed 8929 statements in 105ms |
| Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
|---|---|---|---|---|---|
| 1136 | 2 | 2 | 41.1ms | 55.0ms | Moose::Meta::Role::Application::is_method_excluded |
| 1136 | 2 | 2 | 31.4ms | 46.8ms | Moose::Meta::Role::Application::is_method_aliased |
| 144 | 3 | 3 | 20.9ms | 1.78s | Moose::Meta::Role::Application::apply |
| 144 | 2 | 2 | 4.12ms | 21.5ms | Moose::Meta::Role::Application::new |
| 144 | 1 | 1 | 3.16ms | 37.2ms | Moose::Meta::Role::Application::apply_before_method_modifiers |
| 144 | 1 | 1 | 2.80ms | 117ms | Moose::Meta::Role::Application::apply_around_method_modifiers |
| 144 | 1 | 1 | 2.74ms | 20.8ms | Moose::Meta::Role::Application::apply_after_method_modifiers |
| 144 | 2 | 1 | 1.58ms | 1.58ms | Moose::Meta::Role::Application::__ANON__[:20] |
| 132 | 2 | 1 | 1.28ms | 1.28ms | Moose::Meta::Role::Application::__ANON__[:14] |
| 30 | 1 | 1 | 961µs | 1.34ms | Moose::Meta::Role::Application::is_aliased_method |
| 1 | 1 | 1 | 72µs | 91µs | Moose::Meta::Role::Application::BEGIN@3 |
| 1 | 1 | 1 | 46µs | 2.72ms | Moose::Meta::Role::Application::BEGIN@5 |
| 1 | 1 | 1 | 40µs | 107µs | Moose::Meta::Role::Application::BEGIN@4 |
| 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 | 103µs | 2 | 109µs | # spent 91µ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 91µs making 1 call to Moose::Meta::Role::Application::BEGIN@3
# spent 18µs making 1 call to strict::import |
| 4 | 3 | 98µs | 2 | 174µs | # spent 107µs (40+67) within Moose::Meta::Role::Application::BEGIN@4 which was called:
# once (40µs+67µs) by Moose::BEGIN@29 at line 4 # spent 107µs making 1 call to Moose::Meta::Role::Application::BEGIN@4
# spent 67µs making 1 call to warnings::import |
| 5 | 3 | 2.66ms | 2 | 5.40ms | # spent 2.72ms (46µs+2.68) within Moose::Meta::Role::Application::BEGIN@5 which was called:
# once (46µs+2.68ms) by Moose::BEGIN@29 at line 5 # spent 2.72ms making 1 call to Moose::Meta::Role::Application::BEGIN@5
# spent 2.68ms making 1 call to metaclass::import |
| 6 | |||||
| 7 | 1 | 6µs | our $VERSION = '1.19'; | ||
| 8 | 1 | 64µs | $VERSION = eval $VERSION; # spent 12µ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 | 132 | 1.84ms | # spent 1.28ms within Moose::Meta::Role::Application::__ANON__[/home/doy/coding/src/Moose/blib/lib//Moose/Meta/Role/Application.pm:14] which was called 132 times, avg 10µs/call:
# 73 times (697µs+0s) by Moose::Meta::Role::Application::ToClass::_new at line 21 of generated method (unknown origin), avg 10µs/call
# 59 times (583µ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 | 45µs | 2 | 2.22ms | )); # spent 2.08ms making 1 call to Class::MOP::Mixin::HasAttributes::add_attribute
# spent 137µ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 | 144 | 2.05ms | # spent 1.58ms within Moose::Meta::Role::Application::__ANON__[/home/doy/coding/src/Moose/blib/lib//Moose/Meta/Role/Application.pm:20] which was called 144 times, avg 11µs/call:
# 73 times (813µs+0s) by Moose::Meta::Role::Application::ToClass::_new at line 15 of generated method (unknown origin), avg 11µs/call
# 71 times (768µ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 11µs/call | ||
| 21 | 1 | 29µs | 2 | 2.05ms | )); # spent 1.96ms making 1 call to Class::MOP::Mixin::HasAttributes::add_attribute
# spent 87µs making 1 call to Moose::Meta::Role::Application::meta |
| 22 | |||||
| 23 | # spent 21.5ms (4.12+17.3) within Moose::Meta::Role::Application::new which was called 144 times, avg 149µs/call:
# 141 times (4.03ms+16.9ms) by Moose::Meta::Role::apply at line 483 of Moose/Meta/Role.pm, avg 149µs/call
# 3 times (99µs+390µs) by Moose::Meta::Role::Composite::apply_params at line 124 of Moose/Meta/Role/Composite.pm, avg 163µs/call | ||||
| 24 | 144 | 777µs | my ($class, %params) = @_; | ||
| 25 | 144 | 3.20ms | 144 | 17.3ms | $class->_new(\%params); # spent 9.09ms making 73 calls to Moose::Meta::Role::Application::ToClass::_new, avg 124µs/call
# spent 7.86ms making 68 calls to Moose::Meta::Role::Application::ToRole::_new, avg 116µs/call
# spent 390µs making 3 calls to Moose::Meta::Role::Application::RoleSummation::_new, avg 130µs/call |
| 26 | } | ||||
| 27 | |||||
| 28 | # spent 55.0ms (41.1+14.0) within Moose::Meta::Role::Application::is_method_excluded which was called 1136 times, avg 48µs/call:
# 672 times (21.8ms+8.15ms) by Moose::Meta::Role::Application::ToClass::apply_methods at line 157 of Moose/Meta/Role/Application/ToClass.pm, avg 45µs/call
# 464 times (19.3ms+5.81ms) by Moose::Meta::Role::Application::ToRole::apply_methods at line 86 of Moose/Meta/Role/Application/ToRole.pm, avg 54µs/call | ||||
| 29 | 1136 | 4.43ms | my ($self, $method_name) = @_; | ||
| 30 | 1136 | 17.2ms | 1136 | 14.0ms | foreach (@{$self->get_method_exclusions}) { # spent 14.0ms making 1136 calls to Moose::Meta::Role::Application::get_method_exclusions, avg 12µs/call |
| 31 | 738 | 3.89ms | return 1 if $_ eq $method_name; | ||
| 32 | } | ||||
| 33 | 1106 | 13.6ms | return 0; | ||
| 34 | } | ||||
| 35 | |||||
| 36 | # spent 46.8ms (31.4+15.4) within Moose::Meta::Role::Application::is_method_aliased which was called 1136 times, avg 41µs/call:
# 672 times (18.2ms+9.13ms) by Moose::Meta::Role::Application::ToClass::apply_methods at line 169 of Moose/Meta/Role/Application/ToClass.pm, avg 41µs/call
# 464 times (13.2ms+6.22ms) by Moose::Meta::Role::Application::ToRole::apply_methods at line 107 of Moose/Meta/Role/Application/ToRole.pm, avg 42µs/call | ||||
| 37 | 1136 | 4.51ms | my ($self, $method_name) = @_; | ||
| 38 | 1136 | 24.0ms | 1136 | 15.4ms | exists $self->get_method_aliases->{$method_name} ? 1 : 0 # spent 15.4ms making 1136 calls to Moose::Meta::Role::Application::get_method_aliases, avg 14µs/call |
| 39 | } | ||||
| 40 | |||||
| 41 | # spent 1.34ms (961µs+382µs) within Moose::Meta::Role::Application::is_aliased_method which was called 30 times, avg 45µs/call:
# 30 times (961µs+382µs) by Moose::Meta::Role::Application::ToRole::check_required_methods at line 41 of Moose/Meta/Role/Application/ToRole.pm, avg 45µs/call | ||||
| 42 | 30 | 119µs | my ($self, $method_name) = @_; | ||
| 43 | 30 | 439µs | 30 | 382µs | my %aliased_names = reverse %{$self->get_method_aliases}; # spent 382µs making 30 calls to Moose::Meta::Role::Application::get_method_aliases, avg 13µs/call |
| 44 | 30 | 373µs | exists $aliased_names{$method_name} ? 1 : 0; | ||
| 45 | } | ||||
| 46 | |||||
| 47 | # spent 1.78s (20.9ms+1.76) within Moose::Meta::Role::Application::apply which was called 144 times, avg 12.3ms/call:
# 73 times (10.3ms+1.18s) by Moose::Meta::Role::Application::ToClass::apply at line 31 of Moose/Meta/Role/Application/ToClass.pm, avg 16.3ms/call
# 68 times (10.1ms+509ms) by Moose::Meta::Role::Application::ToRole::apply at line 17 of Moose/Meta/Role/Application/ToRole.pm, avg 7.64ms/call
# 3 times (502µs+68.2ms) by Moose::Meta::Role::Composite::apply_params at line 124 of Moose/Meta/Role/Composite.pm, avg 22.9ms/call | ||||
| 48 | 144 | 491µs | my $self = shift; | ||
| 49 | |||||
| 50 | 144 | 1.83ms | 144 | 132ms | $self->check_role_exclusions(@_); # spent 121ms making 73 calls to Moose::Meta::Role::Application::ToClass::check_role_exclusions, avg 1.65ms/call
# spent 10.3ms making 68 calls to Moose::Meta::Role::Application::ToRole::check_role_exclusions, avg 151µs/call
# spent 1.18ms making 3 calls to Moose::Meta::Role::Application::RoleSummation::check_role_exclusions, avg 392µs/call |
| 51 | 144 | 1.80ms | 144 | 42.7ms | $self->check_required_methods(@_); # spent 23.1ms making 68 calls to Moose::Meta::Role::Application::ToRole::check_required_methods, avg 340µs/call
# spent 13.1ms making 73 calls to Moose::Meta::Role::Application::ToClass::check_required_methods, avg 180µs/call
# spent 6.43ms making 3 calls to Moose::Meta::Role::Application::RoleSummation::check_required_methods, avg 2.14ms/call |
| 52 | 144 | 1.64ms | 144 | 1.05ms | $self->check_required_attributes(@_); # spent 535µs making 73 calls to Moose::Meta::Role::Application::ToClass::check_required_attributes, avg 7µs/call
# spent 496µs making 68 calls to Moose::Meta::Role::Application::ToRole::check_required_attributes, avg 7µs/call
# spent 22µs making 3 calls to Moose::Meta::Role::Application::RoleSummation::check_required_attributes, avg 7µs/call |
| 53 | |||||
| 54 | 144 | 1.58ms | 144 | 211ms | $self->apply_attributes(@_); # spent 198ms making 73 calls to Moose::Meta::Role::Application::ToClass::apply_attributes, avg 2.71ms/call
# spent 13.3ms making 68 calls to Moose::Meta::Role::Application::ToRole::apply_attributes, avg 195µs/call
# spent 525µs making 3 calls to Moose::Meta::Role::Application::RoleSummation::apply_attributes, avg 175µs/call |
| 55 | 144 | 1.83ms | 144 | 1.10s | $self->apply_methods(@_); # spent 642ms making 73 calls to Moose::Meta::Role::Application::ToClass::apply_methods, avg 8.79ms/call
# spent 402ms making 68 calls to Moose::Meta::Role::Application::ToRole::apply_methods, avg 5.91ms/call
# spent 53.7ms making 3 calls to Moose::Meta::Role::Application::RoleSummation::apply_methods, avg 17.9ms/call |
| 56 | |||||
| 57 | 144 | 1.97ms | 144 | 97.3ms | $self->apply_override_method_modifiers(@_); # spent 66.3ms making 73 calls to Moose::Meta::Role::Application::ToClass::apply_override_method_modifiers, avg 908µs/call
# spent 28.4ms making 68 calls to Moose::Meta::Role::Application::ToRole::apply_override_method_modifiers, avg 418µs/call
# spent 2.64ms making 3 calls to Moose::Meta::Role::Application::RoleSummation::apply_override_method_modifiers, avg 880µs/call |
| 58 | |||||
| 59 | 144 | 1.93ms | 144 | 37.2ms | $self->apply_before_method_modifiers(@_); # spent 37.2ms making 144 calls to Moose::Meta::Role::Application::apply_before_method_modifiers, avg 258µs/call |
| 60 | 144 | 1.78ms | 144 | 117ms | $self->apply_around_method_modifiers(@_); # spent 117ms making 144 calls to Moose::Meta::Role::Application::apply_around_method_modifiers, avg 813µs/call |
| 61 | 144 | 3.06ms | 144 | 20.8ms | $self->apply_after_method_modifiers(@_); # spent 20.8ms making 144 calls to Moose::Meta::Role::Application::apply_after_method_modifiers, avg 144µ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 | 144 | 2.70ms | 144 | 34.0ms | # spent 37.2ms (3.16+34.0) within Moose::Meta::Role::Application::apply_before_method_modifiers which was called 144 times, avg 258µs/call:
# 144 times (3.16ms+34.0ms) by Moose::Meta::Role::Application::apply at line 59, avg 258µs/call # spent 26.1ms making 73 calls to Moose::Meta::Role::Application::ToClass::apply_method_modifiers, avg 358µs/call
# spent 7.26ms making 68 calls to Moose::Meta::Role::Application::ToRole::apply_method_modifiers, avg 107µs/call
# spent 662µs making 3 calls to Moose::Meta::Role::Application::RoleSummation::apply_method_modifiers, avg 221µs/call |
| 74 | 144 | 2.57ms | 144 | 114ms | # spent 117ms (2.80+114) within Moose::Meta::Role::Application::apply_around_method_modifiers which was called 144 times, avg 813µs/call:
# 144 times (2.80ms+114ms) by Moose::Meta::Role::Application::apply at line 60, avg 813µs/call # spent 97.6ms making 73 calls to Moose::Meta::Role::Application::ToClass::apply_method_modifiers, avg 1.34ms/call
# spent 14.4ms making 68 calls to Moose::Meta::Role::Application::ToRole::apply_method_modifiers, avg 212µs/call
# spent 2.25ms making 3 calls to Moose::Meta::Role::Application::RoleSummation::apply_method_modifiers, avg 750µs/call |
| 75 | 144 | 2.42ms | 144 | 18.0ms | # spent 20.8ms (2.74+18.0) within Moose::Meta::Role::Application::apply_after_method_modifiers which was called 144 times, avg 144µs/call:
# 144 times (2.74ms+18.0ms) by Moose::Meta::Role::Application::apply at line 61, avg 144µs/call # spent 11.5ms making 73 calls to Moose::Meta::Role::Application::ToClass::apply_method_modifiers, avg 157µs/call
# spent 5.98ms making 68 calls to Moose::Meta::Role::Application::ToRole::apply_method_modifiers, avg 88µs/call
# spent 596µs making 3 calls to Moose::Meta::Role::Application::RoleSummation::apply_method_modifiers, avg 199µs/call |
| 76 | |||||
| 77 | 1 | 36µs | 1; | ||
| 78 | |||||
| 79 | __END__ |