← Index
NYTProf Performance Profile   « line view »
For fastest.pl
  Run on Fri Jan 31 20:48:16 2014
Reported on Fri Jan 31 20:49:41 2014

Filename/opt/perl-5.18.1/lib/site_perl/5.18.1/darwin-thread-multi-2level/Moose/Error/Util.pm
StatementsExecuted 7 statements in 317µs
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
11120µs36µsMoose::Error::Util::::BEGIN@4Moose::Error::Util::BEGIN@4
11110µs14µsMoose::Error::Util::::BEGIN@5Moose::Error::Util::BEGIN@5
1115µs5µsMoose::Error::Util::::BEGIN@10Moose::Error::Util::BEGIN@10
0000s0sMoose::Error::Util::::_create_error_carpmessMoose::Error::Util::_create_error_carpmess
0000s0sMoose::Error::Util::::create_errorMoose::Error::Util::create_error
0000s0sMoose::Error::Util::::create_error_confessMoose::Error::Util::create_error_confess
0000s0sMoose::Error::Util::::create_error_croakMoose::Error::Util::create_error_croak
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package # pretend this doesn't exist, because it shouldn't
2 Moose::Error::Util;
3
4232µs252µs
# spent 36µs (20+16) within Moose::Error::Util::BEGIN@4 which was called: # once (20µs+16µs) by Moose::Error::Default::BEGIN@15 at line 4
use strict;
# spent 36µs making 1 call to Moose::Error::Util::BEGIN@4 # spent 16µs making 1 call to strict::import
5232µs219µs
# spent 14µs (10+5) within Moose::Error::Util::BEGIN@5 which was called: # once (10µs+5µs) by Moose::Error::Default::BEGIN@15 at line 5
use warnings;
# spent 14µs making 1 call to Moose::Error::Util::BEGIN@5 # spent 5µs making 1 call to warnings::import
6
7# this intentionally exists to have a place to put this logic that doesn't
8# involve loading Class::MOP, so... don't do that
9
102250µs15µs
# spent 5µs within Moose::Error::Util::BEGIN@10 which was called: # once (5µs+0s) by Moose::Error::Default::BEGIN@15 at line 10
use Carp::Heavy;
# spent 5µs making 1 call to Moose::Error::Util::BEGIN@10
11
12sub _create_error_carpmess {
13 my %args = @_;
14
15 my $carp_level = 3 + ( $args{depth} || 0 );
16 local $Carp::MaxArgNums = 20; # default is 8, usually we use named args which gets messier though
17
18 my @args = exists $args{message} ? $args{message} : ();
19
20 if ( $args{longmess} || $Carp::Verbose ) {
21 local $Carp::CarpLevel = ( $Carp::CarpLevel || 0 ) + $carp_level;
22 return Carp::longmess(@args);
23 } else {
24 return Carp::ret_summary($carp_level, @args);
25 }
26}
27
28sub create_error_croak {
29 _create_error_carpmess(@_);
30}
31
32sub create_error_confess {
33 _create_error_carpmess(@_, longmess => 1);
34}
35
36sub create_error {
37 if (defined $ENV{MOOSE_ERROR_STYLE} && $ENV{MOOSE_ERROR_STYLE} eq 'croak') {
38 create_error_croak(@_);
39 }
40 else {
41 create_error_confess(@_);
42 }
43}
44
4513µs1;
46
47__END__