← Index
NYTProf Performance Profile   « line view »
For starman worker -M FindBin --max-requests 50 --workers 2 --user=kohadev-koha --group kohadev-koha --pid /var/run/koha/kohadev/plack.pid --daemonize --access-log /var/log/koha/kohadev/plack.log --error-log /var/log/koha/kohadev/plack-error.log -E deployment --socket /var/run/koha/kohadev/plack.sock /etc/koha/sites/kohadev/plack.psgi
  Run on Fri Jan 8 14:31:06 2016
Reported on Fri Jan 8 14:31:36 2016

Filename/usr/lib/x86_64-linux-gnu/perl5/5.20/Class/XSAccessor/Heavy.pm
StatementsExecuted 15 statements in 409µs
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
11115µs15µsClass::XSAccessor::Heavy::::BEGIN@4Class::XSAccessor::Heavy::BEGIN@4
1119µs23µsClass::XSAccessor::Heavy::::BEGIN@30Class::XSAccessor::Heavy::BEGIN@30
1118µs14µsClass::XSAccessor::Heavy::::BEGIN@27Class::XSAccessor::Heavy::BEGIN@27
1117µs13µsClass::XSAccessor::Heavy::::BEGIN@5Class::XSAccessor::Heavy::BEGIN@5
1117µs29µsClass::XSAccessor::Heavy::::BEGIN@7Class::XSAccessor::Heavy::BEGIN@7
1116µs10µsClass::XSAccessor::Heavy::::BEGIN@6Class::XSAccessor::Heavy::BEGIN@6
0000s0sClass::XSAccessor::Heavy::::check_sub_existenceClass::XSAccessor::Heavy::check_sub_existence
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package # hide from PAUSE
2 Class::XSAccessor::Heavy;
3
4244µs115µs
# spent 15µs within Class::XSAccessor::Heavy::BEGIN@4 which was called: # once (15µs+0s) by Class::XSAccessor::BEGIN@6 at line 4
use 5.008;
# spent 15µs making 1 call to Class::XSAccessor::Heavy::BEGIN@4
5229µs220µs
# spent 13µs (7+7) within Class::XSAccessor::Heavy::BEGIN@5 which was called: # once (7µs+7µs) by Class::XSAccessor::BEGIN@6 at line 5
use strict;
# spent 13µs making 1 call to Class::XSAccessor::Heavy::BEGIN@5 # spent 6µs making 1 call to strict::import
6225µs214µs
# spent 10µs (6+4) within Class::XSAccessor::Heavy::BEGIN@6 which was called: # once (6µs+4µs) by Class::XSAccessor::BEGIN@6 at line 6
use warnings;
# spent 10µs making 1 call to Class::XSAccessor::Heavy::BEGIN@6 # spent 4µs making 1 call to warnings::import
72129µs251µs
# spent 29µs (7+22) within Class::XSAccessor::Heavy::BEGIN@7 which was called: # once (7µs+22µs) by Class::XSAccessor::BEGIN@6 at line 7
use Carp;
# spent 29µs making 1 call to Class::XSAccessor::Heavy::BEGIN@7 # spent 22µs making 1 call to Exporter::import
8
91500nsour $VERSION = '1.19';
101800nsour @CARP_NOT = qw(
11 Class::XSAccessor
12 Class::XSAccessor::Array
13);
14
15# TODO Move more duplicated code from XSA and XSA::Array here
16
17
18sub check_sub_existence {
19 my $subname = shift;
20
21 my $sub_package = $subname;
22 $sub_package =~ s/([^:]+)$// or die;
23 my $bare_subname = $1;
24
25 my $sym;
26 {
27251µs220µs
# spent 14µs (8+6) within Class::XSAccessor::Heavy::BEGIN@27 which was called: # once (8µs+6µs) by Class::XSAccessor::BEGIN@6 at line 27
no strict 'refs';
# spent 14µs making 1 call to Class::XSAccessor::Heavy::BEGIN@27 # spent 6µs making 1 call to strict::unimport
28 $sym = \%{"$sub_package"};
29 }
302127µs237µs
# spent 23µs (9+14) within Class::XSAccessor::Heavy::BEGIN@30 which was called: # once (9µs+14µs) by Class::XSAccessor::BEGIN@6 at line 30
no warnings;
# spent 23µs making 1 call to Class::XSAccessor::Heavy::BEGIN@30 # spent 14µs making 1 call to warnings::unimport
31 local *s = $sym->{$bare_subname};
32 my $coderef = *s{CODE};
33 if ($coderef) {
34 $sub_package =~ s/::$//;
35 Carp::croak("Cannot replace existing subroutine '$bare_subname' in package '$sub_package' with an XS implementation. If you wish to force a replacement, add the 'replace => 1' parameter to the arguments of 'use ".(caller())[0]."'.");
36 }
37}
38
3913µs1;
40
41__END__