← Index
NYTProf Performance Profile   « line view »
For ../prof.pl
  Run on Wed Dec 14 15:57:08 2022
Reported on Wed Dec 14 16:00:31 2022

Filename/Users/ether/perl5/perlbrew/perls/36.0/lib/5.36.0/darwin-2level/MIME/Base64.pm
StatementsExecuted 14 statements in 1.04ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
11162µs66µsMIME::Base64::::BEGIN@3MIME::Base64::BEGIN@3
1117µs46µsMIME::Base64::::BEGIN@4MIME::Base64::BEGIN@4
0000s0sMIME::Base64::::decode_base64urlMIME::Base64::decode_base64url
0000s0sMIME::Base64::::encode_base64urlMIME::Base64::encode_base64url
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package MIME::Base64;
2
3234µs270µs
# spent 66µs (62+4) within MIME::Base64::BEGIN@3 which was called: # once (62µs+4µs) by Mojo::Util::BEGIN@16.6 at line 3
use strict;
# spent 66µs making 1 call to MIME::Base64::BEGIN@3 # spent 4µs making 1 call to strict::import
42252µs285µs
# spent 46µs (7+39) within MIME::Base64::BEGIN@4 which was called: # once (7µs+39µs) by Mojo::Util::BEGIN@16.6 at line 4
use warnings;
# spent 46µs making 1 call to MIME::Base64::BEGIN@4 # spent 39µs making 1 call to warnings::import
5
611µsrequire Exporter;
718µsour @ISA = qw(Exporter);
810sour @EXPORT = qw(encode_base64 decode_base64);
911µsour @EXPORT_OK = qw(encode_base64url decode_base64url encoded_base64_length decoded_base64_length);
10
1110sour $VERSION = '3.16';
12
1311µsrequire XSLoader;
141733µs1723µsXSLoader::load('MIME::Base64', $VERSION);
# spent 723µs making 1 call to XSLoader::load
15
1612µs*encode = \&encode_base64;
1711µs*decode = \&decode_base64;
18
19sub encode_base64url {
20 my $e = encode_base64(shift, "");
21 $e =~ s/=+\z//;
22 $e =~ tr[+/][-_];
23 return $e;
24}
25
26sub decode_base64url {
27 my $s = shift;
28 $s =~ tr[-_][+/];
29 $s .= '=' while length($s) % 4;
30 return decode_base64($s);
31}
32
3319µs1;
34
35__END__