← Index
NYTProf Performance Profile   « line view »
For /home/ss5/perl5/perlbrew/perls/perl-5.22.0/bin/benchmarkanything-storage
  Run on Mon Jan 29 16:55:34 2018
Reported on Mon Jan 29 16:57:07 2018

Filename/home/ss5/perl5/perlbrew/perls/perl-5.22.0/lib/site_perl/5.22.0/Any/URI/Escape.pm
StatementsExecuted 19 statements in 159µs
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
11138µs38µsAny::URI::Escape::::BEGIN@17Any::URI::Escape::BEGIN@17
1118µs9µsAny::URI::Escape::::BEGIN@3Any::URI::Escape::BEGIN@3
1115µs54µsAny::URI::Escape::::BEGIN@14Any::URI::Escape::BEGIN@14
1114µs7µsAny::URI::Escape::::BEGIN@4Any::URI::Escape::BEGIN@4
1114µs15µsAny::URI::Escape::::BEGIN@33Any::URI::Escape::BEGIN@33
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package Any::URI::Escape;
2
3213µs210µs
# spent 9µs (8+1) within Any::URI::Escape::BEGIN@3 which was called: # once (8µs+1µs) by Search::Elasticsearch::Role::Client::Direct::BEGIN@9 at line 3
use strict;
# spent 9µs making 1 call to Any::URI::Escape::BEGIN@3 # spent 1µs making 1 call to strict::import
4222µs210µs
# spent 7µs (4+3) within Any::URI::Escape::BEGIN@4 which was called: # once (4µs+3µs) by Search::Elasticsearch::Role::Client::Direct::BEGIN@9 at line 4
use warnings;
# spent 7µs making 1 call to Any::URI::Escape::BEGIN@4 # spent 3µs making 1 call to warnings::import
5
61100nsour $VERSION = 0.01;
7
8=head1 NAME
9
10Any::URI::Escape - Load URI::Escape::XS preferentially over URI::Escape
11
12=cut
13
14244µs2104µs
# spent 54µs (5+49) within Any::URI::Escape::BEGIN@14 which was called: # once (5µs+49µs) by Search::Elasticsearch::Role::Client::Direct::BEGIN@9 at line 14
use base 'Exporter';
# spent 54µs making 1 call to Any::URI::Escape::BEGIN@14 # spent 49µs making 1 call to base::import
151700nsour @EXPORT = qw( uri_escape uri_unescape );
16
17
# spent 38µs within Any::URI::Escape::BEGIN@17 which was called: # once (38µs+0s) by Search::Elasticsearch::Role::Client::Direct::BEGIN@9 at line 37
BEGIN {
18
19112µs eval 'require URI::Escape::XS';
# spent 17µs executing statements in string eval
20
211100ns my $pkg;
221200ns if ($@) {
23
24 # xs version not installed, use URI::Escape
251600ns require URI::Escape;
261200ns $pkg = 'URI::Escape';
27
28 }
29 else {
30
31 $pkg = 'URI::Escape::XS';
32 }
33234µs226µs
# spent 15µs (4+11) within Any::URI::Escape::BEGIN@33 which was called: # once (4µs+11µs) by Search::Elasticsearch::Role::Client::Direct::BEGIN@9 at line 33
no strict 'refs';
# spent 15µs making 1 call to Any::URI::Escape::BEGIN@33 # spent 11µs making 1 call to strict::unimport
341200ns my $class = __PACKAGE__;
3514µs *{"$class\::uri_escape"} = *{"$pkg\::uri_escape"};
3615µs *{"$class\::uri_unescape"} = *{"$pkg\::uri_unescape"};
37121µs138µs}
# spent 38µs making 1 call to Any::URI::Escape::BEGIN@17
38
39
4012µs1;
41
42=head1 SYNOPSIS
43
44 use Any::URI::Escape;
45 $escaped_url = uri_escape($url);
46
47 # URI::Escape::XS will be used instead of URI::Escape if it is installed.
48
49=head1 DESCRIPTION
50
51URI::Escape is great, but URI::Escape::XS is faster. This module loads
52URI::Escape::XS and imports the two most common methods if XS is installed.
53
54The insides of this module aren't completely shaken out yet, so patches
55welcome.
56
57=head1 SEE ALSO
58
59L<URI::Escape>
60
61L<URI::Escape::XS>
62
63=head1 AUTHOR
64
65Fred Moyer, E<lt>fred@redhotpenguin.comE<gt>
66
67=head1 COPYRIGHT AND LICENSE
68
69Copyright (C) 2010 by Fred Moyer
70
71This library is free software; you can redistribute it and/or modify
72it under the same terms as Perl itself, either Perl version 5.12.0 or,
73at your option, any later version of Perl 5 you may have available.
74
75
76=cut