← Index
NYTProf Performance Profile   « line view »
For /Users/timbo/perl5/perlbrew/perls/perl-5.18.2/bin/perlcritic
  Run on Sat Mar 19 22:12:22 2016
Reported on Sat Mar 19 22:14:10 2016

Filename/Users/timbo/perl5/perlbrew/perls/perl-5.18.2/lib/site_perl/5.18.2/darwin-2level/List/MoreUtils/XS.pm
StatementsExecuted 16 statements in 372µs
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
111861µs3.49msList::MoreUtils::XS::::BEGIN@10List::MoreUtils::XS::BEGIN@10
11115µs15µsList::MoreUtils::XS::::BEGIN@3List::MoreUtils::XS::BEGIN@3
11110µs40µsList::MoreUtils::XS::::BEGIN@7List::MoreUtils::XS::BEGIN@7
1117µs11µsList::MoreUtils::XS::::BEGIN@5List::MoreUtils::XS::BEGIN@5
1116µs18µsList::MoreUtils::XS::::BEGIN@4List::MoreUtils::XS::BEGIN@4
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package List::MoreUtils::XS;
2
3243µs115µs
# spent 15µs within List::MoreUtils::XS::BEGIN@3 which was called: # once (15µs+0s) by List::MoreUtils::BEGIN@13 at line 3
use 5.006;
# spent 15µs making 1 call to List::MoreUtils::XS::BEGIN@3
4219µs229µs
# spent 18µs (6+11) within List::MoreUtils::XS::BEGIN@4 which was called: # once (6µs+11µs) by List::MoreUtils::BEGIN@13 at line 4
use strict;
# spent 18µs making 1 call to List::MoreUtils::XS::BEGIN@4 # spent 11µs making 1 call to strict::import
5221µs215µs
# spent 11µs (7+4) within List::MoreUtils::XS::BEGIN@5 which was called: # once (7µs+4µs) by List::MoreUtils::BEGIN@13 at line 5
use warnings;
# spent 11µs making 1 call to List::MoreUtils::XS::BEGIN@5 # spent 4µs making 1 call to warnings::import
6
72124µs271µs
# spent 40µs (10+31) within List::MoreUtils::XS::BEGIN@7 which was called: # once (10µs+31µs) by List::MoreUtils::BEGIN@13 at line 7
use vars qw{$VERSION @ISA};
# spent 40µs making 1 call to List::MoreUtils::XS::BEGIN@7 # spent 31µs making 1 call to vars::import
8
9BEGIN
10
# spent 3.49ms (861µs+2.62) within List::MoreUtils::XS::BEGIN@10 which was called: # once (861µs+2.62ms) by List::MoreUtils::BEGIN@13 at line 42
{
111500ns $VERSION = '0.408';
12
13 # Load the XS at compile-time so that redefinition warnings will be
14 # thrown correctly if the XS versions of part or indexes loaded
151900ns my $ldr = <<EOLDR;
16 package List::MoreUtils;
17
18 # PERL_DL_NONLAZY must be false, or any errors in loading will just
19 # cause the perl code to be tested
20 local \$ENV{PERL_DL_NONLAZY} = 0 if \$ENV{PERL_DL_NONLAZY};
21
22 use XSLoader ();
23 XSLoader::load("List::MoreUtils", "$VERSION");
24
25 1;
26EOLDR
27
28141µs eval $ldr unless $ENV{LIST_MOREUTILS_PP};
# spent 116µs executing statements in string eval
# includes 8µs spent executing 1 call to 1 sub defined therein.
29
30 # ensure to catch even PP only subs
31125µs my @pp_imp = map { "List::MoreUtils->can(\"$_\") or *$_ = \\&List::MoreUtils::PP::$_;" }
32 qw(any all none notall one any_u all_u none_u notall_u one_u true false
33 firstidx firstval firstres lastidx lastval lastres onlyidx onlyval onlyres
34 insert_after insert_after_string
35 apply after after_incl before before_incl
36 each_array each_arrayref pairwise
37 natatime mesh uniq singleton minmax part indexes bsearch bsearchidx
38 sort_by nsort_by _XScompiled);
3918µs my $pp_stuff = join( "\n", "use List::MoreUtils::PP;", "package List::MoreUtils;", @pp_imp );
40144µs eval $pp_stuff;
# spent 793µs executing statements in string eval
# includes 2.05ms spent executing 1 call to 1 sub defined therein.
4118µs die $@ if $@;
42137µs13.49ms}
# spent 3.49ms making 1 call to List::MoreUtils::XS::BEGIN@10
43
44=pod
45
46=head1 NAME
47
48List::MoreUtils::XS - Provide compiled List::MoreUtils functions
49
50=head1 SYNOPSIS
51
52 BEGIN { delete $ENV{LIST_MOREUTILS_PP}; }
53 use List::MoreUtils ...;
54
55=head1 SEE ALSO
56
57L<List::Util>, L<List::AllUtils>
58
59=head1 AUTHOR
60
61Jens Rehsack E<lt>rehsack AT cpan.orgE<gt>
62
63Adam Kennedy E<lt>adamk@cpan.orgE<gt>
64
65Tassilo von Parseval E<lt>tassilo.von.parseval@rwth-aachen.deE<gt>
66
67=head1 COPYRIGHT AND LICENSE
68
69Some parts copyright 2011 Aaron Crane.
70
71Copyright 2004 - 2010 by Tassilo von Parseval
72
73Copyright 2013 - 2015 by Jens Rehsack
74
75This library is free software; you can redistribute it and/or modify
76it under the same terms as Perl itself, either Perl version 5.8.4 or,
77at your option, any later version of Perl 5 you may have available.
78
79=cut
80
8112µs1;