| Filename | /usr/share/perl5/DBIx/Class.pm |
| Statements | Executed 769 statements in 6.01ms |
| Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
|---|---|---|---|---|---|
| 1 | 1 | 1 | 4.45ms | 4.53ms | DBIx::Class::BEGIN@21 |
| 1 | 1 | 1 | 2.96ms | 24.9ms | DBIx::Class::BEGIN@18 |
| 184 | 1 | 1 | 2.51ms | 34.7ms | DBIx::Class::mk_classaccessor |
| 184 | 11 | 3 | 1.77ms | 36.5ms | DBIx::Class::mk_classdata |
| 1 | 1 | 1 | 681µs | 818µs | DBIx::Class::BEGIN@25 |
| 1 | 1 | 1 | 258µs | 325µs | DBIx::Class::BEGIN@24 |
| 1 | 1 | 1 | 22µs | 18.0ms | DBIx::Class::BEGIN@23 |
| 1 | 1 | 1 | 18µs | 26µs | DBIx::Class::BEGIN@19 |
| 1 | 1 | 1 | 17µs | 24µs | DBIx::Class::BEGIN@3 |
| 11 | 1 | 1 | 9µs | 9µs | DBIx::Class::component_base_class |
| 1 | 1 | 1 | 7µs | 11µs | DBIx::Class::BEGIN@4 |
| 1 | 1 | 1 | 5µs | 5µs | DBIx::Class::CORE:match (opcode) |
| 0 | 0 | 0 | 0s | 0s | DBIx::Class::MODIFY_CODE_ATTRIBUTES |
| 0 | 0 | 0 | 0s | 0s | DBIx::Class::_attr_cache |
| Line | State ments |
Time on line |
Calls | Time in subs |
Code |
|---|---|---|---|---|---|
| 1 | package DBIx::Class; | ||||
| 2 | |||||
| 3 | 2 | 35µs | 2 | 31µs | # spent 24µs (17+7) within DBIx::Class::BEGIN@3 which was called:
# once (17µs+7µs) by base::import at line 3 # spent 24µs making 1 call to DBIx::Class::BEGIN@3
# spent 7µs making 1 call to strict::import |
| 4 | 2 | 95µs | 2 | 15µs | # spent 11µs (7+4) within DBIx::Class::BEGIN@4 which was called:
# once (7µs+4µs) by base::import at line 4 # spent 11µs making 1 call to DBIx::Class::BEGIN@4
# spent 4µs making 1 call to warnings::import |
| 5 | |||||
| 6 | 1 | 200ns | our $VERSION; | ||
| 7 | # Always remember to do all digits for the version even if they're 0 | ||||
| 8 | # i.e. first release of 0.XX *must* be 0.XX000. This avoids fBSD ports | ||||
| 9 | # brain damage and presumably various other packaging systems too | ||||
| 10 | |||||
| 11 | # $VERSION declaration must stay up here, ahead of any other package | ||||
| 12 | # declarations, as to not confuse various modules attempting to determine | ||||
| 13 | # this ones version, whether that be s.c.o. or Module::Metadata, etc | ||||
| 14 | 1 | 500ns | $VERSION = '0.082810'; | ||
| 15 | |||||
| 16 | 1 | 18µs | 1 | 5µs | $VERSION = eval $VERSION if $VERSION =~ /_/; # numify for warning-free dev releases # spent 5µs making 1 call to DBIx::Class::CORE:match |
| 17 | |||||
| 18 | 2 | 242µs | 2 | 25.0ms | # spent 24.9ms (2.96+22.0) within DBIx::Class::BEGIN@18 which was called:
# once (2.96ms+22.0ms) by base::import at line 18 # spent 24.9ms making 1 call to DBIx::Class::BEGIN@18
# spent 37µs making 1 call to Exporter::import |
| 19 | 2 | 62µs | 2 | 35µs | # spent 26µs (18+8) within DBIx::Class::BEGIN@19 which was called:
# once (18µs+8µs) by base::import at line 19 # spent 26µs making 1 call to DBIx::Class::BEGIN@19
# spent 8µs making 1 call to mro::import |
| 20 | |||||
| 21 | 2 | 358µs | 1 | 4.53ms | # spent 4.53ms (4.45+80µs) within DBIx::Class::BEGIN@21 which was called:
# once (4.45ms+80µs) by base::import at line 21 # spent 4.53ms making 1 call to DBIx::Class::BEGIN@21 |
| 22 | |||||
| 23 | 2 | 336µs | 2 | 18.0ms | # spent 18.0ms (22µs+17.9) within DBIx::Class::BEGIN@23 which was called:
# once (22µs+17.9ms) by base::import at line 23 # spent 18.0ms making 1 call to DBIx::Class::BEGIN@23
# spent 17.9ms making 1 call to base::import, recursion: max depth 2, sum of overlapping time 17.9ms |
| 24 | 2 | 248µs | 1 | 325µs | # spent 325µs (258+67) within DBIx::Class::BEGIN@24 which was called:
# once (258µs+67µs) by base::import at line 24 # spent 325µs making 1 call to DBIx::Class::BEGIN@24 |
| 25 | 2 | 544µs | 1 | 818µs | # spent 818µs (681+137) within DBIx::Class::BEGIN@25 which was called:
# once (681µs+137µs) by base::import at line 25 # spent 818µs making 1 call to DBIx::Class::BEGIN@25 |
| 26 | |||||
| 27 | 1 | 23µs | 1 | 688µs | __PACKAGE__->mk_group_accessors(inherited => '_skip_namespace_frames'); # spent 688µs making 1 call to Class::Accessor::Grouped::mk_group_accessors |
| 28 | 1 | 3µs | 1 | 33µs | __PACKAGE__->_skip_namespace_frames('^DBIx::Class|^SQL::Abstract|^Try::Tiny|^Class::Accessor::Grouped|^Context::Preserve'); # spent 33µs making 1 call to DBIx::Class::_skip_namespace_frames |
| 29 | |||||
| 30 | # spent 36.5ms (1.77+34.7) within DBIx::Class::mk_classdata which was called 184 times, avg 198µs/call:
# 174 times (1.71ms+30.6ms) by DBIx::Class::ResultSourceProxy::Table::table at line 99 of DBIx/Class/ResultSourceProxy/Table.pm, avg 186µs/call
# once (11µs+648µs) by base::import at line 15 of DBIx/Class/Schema.pm
# once (6µs+451µs) by base::import at line 16 of DBIx/Class/Schema.pm
# once (4µs+417µs) by base::import at line 17 of DBIx/Class/Schema.pm
# once (10µs+397µs) by Class::C3::Componentised::ensure_class_loaded at line 33 of DBIx/Class/ResultSource.pm
# once (5µs+400µs) by base::import at line 21 of DBIx/Class/Schema.pm
# once (5µs+400µs) by base::import at line 19 of DBIx/Class/Schema.pm
# once (4µs+394µs) by base::import at line 20 of DBIx/Class/Schema.pm
# once (5µs+389µs) by base::import at line 18 of DBIx/Class/Schema.pm
# once (5µs+343µs) by Class::C3::Componentised::ensure_class_loaded at line 12 of DBIx/Class/ResultSourceProxy/Table.pm
# once (4µs+308µs) by Class::C3::Componentised::ensure_class_loaded at line 14 of DBIx/Class/ResultSourceProxy/Table.pm | ||||
| 31 | 184 | 1.65ms | 184 | 34.7ms | shift->mk_classaccessor(@_); # spent 34.7ms making 184 calls to DBIx::Class::mk_classaccessor, avg 189µs/call |
| 32 | } | ||||
| 33 | |||||
| 34 | # spent 34.7ms (2.51+32.2) within DBIx::Class::mk_classaccessor which was called 184 times, avg 189µs/call:
# 184 times (2.51ms+32.2ms) by DBIx::Class::mk_classdata at line 31, avg 189µs/call | ||||
| 35 | 184 | 96µs | my $self = shift; | ||
| 36 | 184 | 1.61ms | 184 | 32.2ms | $self->mk_group_accessors('inherited', $_[0]); # spent 32.2ms making 184 calls to Class::Accessor::Grouped::mk_group_accessors, avg 175µs/call |
| 37 | 184 | 657µs | 7 | 51µs | $self->set_inherited(@_) if @_ > 1; # spent 51µs making 7 calls to Class::Accessor::Grouped::set_inherited, avg 7µs/call |
| 38 | } | ||||
| 39 | |||||
| 40 | 11 | 17µs | # spent 9µs within DBIx::Class::component_base_class which was called 11 times, avg 791ns/call:
# 11 times (9µs+0s) by Class::C3::Componentised::load_components at line 71 of Class/C3/Componentised.pm, avg 791ns/call | ||
| 41 | |||||
| 42 | sub MODIFY_CODE_ATTRIBUTES { | ||||
| 43 | my ($class,$code,@attrs) = @_; | ||||
| 44 | $class->mk_classdata('__attr_cache' => {}) | ||||
| 45 | unless $class->can('__attr_cache'); | ||||
| 46 | $class->__attr_cache->{$code} = [@attrs]; | ||||
| 47 | return (); | ||||
| 48 | } | ||||
| 49 | |||||
| 50 | sub _attr_cache { | ||||
| 51 | my $self = shift; | ||||
| 52 | my $cache = $self->can('__attr_cache') ? $self->__attr_cache : {}; | ||||
| 53 | |||||
| 54 | return { | ||||
| 55 | %$cache, | ||||
| 56 | %{ $self->maybe::next::method || {} }, | ||||
| 57 | }; | ||||
| 58 | } | ||||
| 59 | |||||
| 60 | # *DO NOT* change this URL nor the identically named =head1 below | ||||
| 61 | # it is linked throughout the ecosystem | ||||
| 62 | sub DBIx::Class::_ENV_::HELP_URL () { | ||||
| 63 | 'http://p3rl.org/DBIx::Class#GETTING_HELP/SUPPORT' | ||||
| 64 | } | ||||
| 65 | |||||
| 66 | 1 | 12µs | 1; | ||
| 67 | |||||
| 68 | __END__ | ||||
# spent 5µs within DBIx::Class::CORE:match which was called:
# once (5µs+0s) by base::import at line 16 |