| Filename | /Users/ether/perl5/perlbrew/perls/36.0/lib/5.36.0/darwin-2level/MIME/Base64.pm |
| Statements | Executed 14 statements in 5.58ms |
| Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
|---|---|---|---|---|---|
| 1 | 1 | 1 | 22µs | 24µs | MIME::Base64::BEGIN@3 |
| 1 | 1 | 1 | 4µs | 35µs | MIME::Base64::BEGIN@4 |
| 0 | 0 | 0 | 0s | 0s | MIME::Base64::decode_base64url |
| 0 | 0 | 0 | 0s | 0s | MIME::Base64::encode_base64url |
| Line | State ments |
Time on line |
Calls | Time in subs |
Code |
|---|---|---|---|---|---|
| 1 | package MIME::Base64; | ||||
| 2 | |||||
| 3 | 2 | 25µs | 2 | 26µs | # spent 24µs (22+2) within MIME::Base64::BEGIN@3 which was called:
# once (22µs+2µs) by Mojo::Util::BEGIN@16.6 at line 3 # spent 24µs making 1 call to MIME::Base64::BEGIN@3
# spent 2µs making 1 call to strict::import |
| 4 | 2 | 169µs | 2 | 66µs | # spent 35µs (4+31) within MIME::Base64::BEGIN@4 which was called:
# once (4µs+31µs) by Mojo::Util::BEGIN@16.6 at line 4 # spent 35µs making 1 call to MIME::Base64::BEGIN@4
# spent 31µs making 1 call to warnings::import |
| 5 | |||||
| 6 | 1 | 1µs | require Exporter; | ||
| 7 | 1 | 5µs | our @ISA = qw(Exporter); | ||
| 8 | 1 | 1µs | our @EXPORT = qw(encode_base64 decode_base64); | ||
| 9 | 1 | 0s | our @EXPORT_OK = qw(encode_base64url decode_base64url encoded_base64_length decoded_base64_length); | ||
| 10 | |||||
| 11 | 1 | 0s | our $VERSION = '3.16'; | ||
| 12 | |||||
| 13 | 1 | 0s | require XSLoader; | ||
| 14 | 1 | 5.36ms | 1 | 5.35ms | XSLoader::load('MIME::Base64', $VERSION); # spent 5.35ms making 1 call to XSLoader::load |
| 15 | |||||
| 16 | 1 | 2µs | *encode = \&encode_base64; | ||
| 17 | 1 | 0s | *decode = \&decode_base64; | ||
| 18 | |||||
| 19 | sub encode_base64url { | ||||
| 20 | my $e = encode_base64(shift, ""); | ||||
| 21 | $e =~ s/=+\z//; | ||||
| 22 | $e =~ tr[+/][-_]; | ||||
| 23 | return $e; | ||||
| 24 | } | ||||
| 25 | |||||
| 26 | sub decode_base64url { | ||||
| 27 | my $s = shift; | ||||
| 28 | $s =~ tr[-_][+/]; | ||||
| 29 | $s .= '=' while length($s) % 4; | ||||
| 30 | return decode_base64($s); | ||||
| 31 | } | ||||
| 32 | |||||
| 33 | 1 | 9µs | 1; | ||
| 34 | |||||
| 35 | __END__ |