Filename | /usr/share/perl5/DBIx/Class.pm |
Statements | Executed 769 statements in 5.45ms |
Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
---|---|---|---|---|---|
184 | 1 | 1 | 2.61ms | 28.8ms | mk_classaccessor | DBIx::Class::
1 | 1 | 1 | 2.29ms | 2.34ms | BEGIN@21 | DBIx::Class::
1 | 1 | 1 | 2.03ms | 16.2ms | BEGIN@18 | DBIx::Class::
184 | 11 | 3 | 1.71ms | 30.5ms | mk_classdata | DBIx::Class::
1 | 1 | 1 | 405µs | 483µs | BEGIN@25 | DBIx::Class::
1 | 1 | 1 | 220µs | 277µs | BEGIN@24 | DBIx::Class::
1 | 1 | 1 | 14µs | 21µs | BEGIN@3 | DBIx::Class::
1 | 1 | 1 | 13µs | 10.5ms | BEGIN@23 | DBIx::Class::
1 | 1 | 1 | 11µs | 17µs | BEGIN@19 | DBIx::Class::
11 | 1 | 1 | 8µs | 8µs | component_base_class | DBIx::Class::
1 | 1 | 1 | 7µs | 11µs | BEGIN@4 | DBIx::Class::
1 | 1 | 1 | 2µs | 2µs | CORE:match (opcode) | DBIx::Class::
0 | 0 | 0 | 0s | 0s | MODIFY_CODE_ATTRIBUTES | DBIx::Class::
0 | 0 | 0 | 0s | 0s | _attr_cache | DBIx::Class::
Line | State ments |
Time on line |
Calls | Time in subs |
Code |
---|---|---|---|---|---|
1 | package DBIx::Class; | ||||
2 | |||||
3 | 2 | 34µs | 2 | 28µs | # spent 21µs (14+7) within DBIx::Class::BEGIN@3 which was called:
# once (14µs+7µs) by base::import at line 3 # spent 21µs making 1 call to DBIx::Class::BEGIN@3
# spent 7µs making 1 call to strict::import |
4 | 2 | 82µ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 | 400ns | $VERSION = '0.082810'; | ||
15 | |||||
16 | 1 | 9µs | 1 | 2µs | $VERSION = eval $VERSION if $VERSION =~ /_/; # numify for warning-free dev releases # spent 2µs making 1 call to DBIx::Class::CORE:match |
17 | |||||
18 | 2 | 158µs | 2 | 16.2ms | # spent 16.2ms (2.03+14.2) within DBIx::Class::BEGIN@18 which was called:
# once (2.03ms+14.2ms) by base::import at line 18 # spent 16.2ms making 1 call to DBIx::Class::BEGIN@18
# spent 17µs making 1 call to Exporter::import |
19 | 2 | 35µs | 2 | 22µs | # spent 17µs (11+5) within DBIx::Class::BEGIN@19 which was called:
# once (11µs+5µs) by base::import at line 19 # spent 17µs making 1 call to DBIx::Class::BEGIN@19
# spent 5µs making 1 call to mro::import |
20 | |||||
21 | 2 | 198µs | 1 | 2.34ms | # spent 2.34ms (2.29+45µs) within DBIx::Class::BEGIN@21 which was called:
# once (2.29ms+45µs) by base::import at line 21 # spent 2.34ms making 1 call to DBIx::Class::BEGIN@21 |
22 | |||||
23 | 2 | 179µs | 2 | 10.5ms | # spent 10.5ms (13µs+10.5) within DBIx::Class::BEGIN@23 which was called:
# once (13µs+10.5ms) by base::import at line 23 # spent 10.5ms making 1 call to DBIx::Class::BEGIN@23
# spent 10.5ms making 1 call to base::import, recursion: max depth 2, sum of overlapping time 10.5ms |
24 | 2 | 213µs | 1 | 277µs | # spent 277µs (220+57) within DBIx::Class::BEGIN@24 which was called:
# once (220µs+57µs) by base::import at line 24 # spent 277µs making 1 call to DBIx::Class::BEGIN@24 |
25 | 2 | 326µs | 1 | 483µs | # spent 483µs (405+78) within DBIx::Class::BEGIN@25 which was called:
# once (405µs+78µs) by base::import at line 25 # spent 483µs making 1 call to DBIx::Class::BEGIN@25 |
26 | |||||
27 | 1 | 10µs | 1 | 391µs | __PACKAGE__->mk_group_accessors(inherited => '_skip_namespace_frames'); # spent 391µs making 1 call to Class::Accessor::Grouped::mk_group_accessors |
28 | 1 | 1µs | 1 | 21µs | __PACKAGE__->_skip_namespace_frames('^DBIx::Class|^SQL::Abstract|^Try::Tiny|^Class::Accessor::Grouped|^Context::Preserve'); # spent 21µs making 1 call to DBIx::Class::_skip_namespace_frames |
29 | |||||
30 | # spent 30.5ms (1.71+28.8) within DBIx::Class::mk_classdata which was called 184 times, avg 166µs/call:
# 174 times (1.67ms+25.6ms) by DBIx::Class::ResultSourceProxy::Table::table at line 99 of DBIx/Class/ResultSourceProxy/Table.pm, avg 157µs/call
# once (5µs+490µs) by Class::C3::Componentised::ensure_class_loaded at line 12 of DBIx/Class/ResultSourceProxy/Table.pm
# once (8µs+432µs) by base::import at line 15 of DBIx/Class/Schema.pm
# once (7µs+357µs) by Class::C3::Componentised::ensure_class_loaded at line 33 of DBIx/Class/ResultSource.pm
# once (3µs+308µs) by Class::C3::Componentised::ensure_class_loaded at line 14 of DBIx/Class/ResultSourceProxy/Table.pm
# once (3µs+283µs) by base::import at line 16 of DBIx/Class/Schema.pm
# once (3µs+272µs) by base::import at line 17 of DBIx/Class/Schema.pm
# once (3µs+261µs) by base::import at line 21 of DBIx/Class/Schema.pm
# once (3µs+257µs) by base::import at line 20 of DBIx/Class/Schema.pm
# once (3µs+256µs) by base::import at line 19 of DBIx/Class/Schema.pm
# once (3µs+254µs) by base::import at line 18 of DBIx/Class/Schema.pm | ||||
31 | 184 | 1.70ms | 184 | 28.8ms | shift->mk_classaccessor(@_); # spent 28.8ms making 184 calls to DBIx::Class::mk_classaccessor, avg 157µs/call |
32 | } | ||||
33 | |||||
34 | # spent 28.8ms (2.61+26.2) within DBIx::Class::mk_classaccessor which was called 184 times, avg 157µs/call:
# 184 times (2.61ms+26.2ms) by DBIx::Class::mk_classdata at line 31, avg 157µs/call | ||||
35 | 184 | 91µs | my $self = shift; | ||
36 | 184 | 1.78ms | 184 | 26.2ms | $self->mk_group_accessors('inherited', $_[0]); # spent 26.2ms making 184 calls to Class::Accessor::Grouped::mk_group_accessors, avg 142µs/call |
37 | 184 | 598µs | 7 | 29µs | $self->set_inherited(@_) if @_ > 1; # spent 29µs making 7 calls to Class::Accessor::Grouped::set_inherited, avg 4µs/call |
38 | } | ||||
39 | |||||
40 | 11 | 17µs | # spent 8µs within DBIx::Class::component_base_class which was called 11 times, avg 764ns/call:
# 11 times (8µs+0s) by Class::C3::Componentised::load_components at line 71 of Class/C3/Componentised.pm, avg 764ns/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 | 10µs | 1; | ||
67 | |||||
68 | __END__ | ||||
# spent 2µs within DBIx::Class::CORE:match which was called:
# once (2µs+0s) by base::import at line 16 |