← Index
NYTProf Performance Profile   « line view »
For examples/Atom-timer.pl
  Run on Mon Aug 12 14:45:28 2013
Reported on Mon Aug 12 14:46:14 2013

Filename/Users/dde/perl5/perlbrew/perls/5.18.0t/lib/site_perl/5.18.0/darwin-thread-multi-2level/Moose/Error/Util.pm
StatementsExecuted 7 statements in 233µs
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
11110µs21µsMoose::Error::Util::::BEGIN@4Moose::Error::Util::BEGIN@4
1116µs9µsMoose::Error::Util::::BEGIN@5Moose::Error::Util::BEGIN@5
1114µs4µ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
4221µs232µs
# spent 21µs (10+11) within Moose::Error::Util::BEGIN@4 which was called: # once (10µs+11µs) by Moose::Error::Default::BEGIN@15 at line 4
use strict;
# spent 21µs making 1 call to Moose::Error::Util::BEGIN@4 # spent 11µs making 1 call to strict::import
5225µs212µs
# spent 9µs (6+3) within Moose::Error::Util::BEGIN@5 which was called: # once (6µs+3µs) by Moose::Error::Default::BEGIN@15 at line 5
use warnings;
# spent 9µs making 1 call to Moose::Error::Util::BEGIN@5 # spent 3µ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
102185µs14µs
# spent 4µs within Moose::Error::Util::BEGIN@10 which was called: # once (4µs+0s) by Moose::Error::Default::BEGIN@15 at line 10
use Carp::Heavy;
# spent 4µ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
4512µs1;
46
47__END__