Filename | /usr/lib/perl/5.10/Storable.pm |
Statements | Executed 27 statements in 576µs |
Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
---|---|---|---|---|---|
1 | 1 | 1 | 1.99ms | 10.1ms | BEGIN@23 | Storable::
1 | 1 | 1 | 79µs | 79µs | bootstrap (xsub) | Storable::
1 | 1 | 1 | 26µs | 319µs | BEGIN@22 | Storable::
1 | 1 | 1 | 18µs | 110µs | BEGIN@24 | Storable::
1 | 1 | 1 | 17µs | 230µs | BEGIN@44 | Storable::
0 | 0 | 0 | 0s | 0s | CLONE | Storable::
0 | 0 | 0 | 0s | 0s | retrieve_fd | Storable::
Line | State ments |
Time on line |
Calls | Time in subs |
Code |
---|---|---|---|---|---|
1 | # | ||||
2 | # Copyright (c) 1995-2000, Raphael Manfredi | ||||
3 | # | ||||
4 | # You may redistribute only under the same terms as Perl 5, as specified | ||||
5 | # in the README file that comes with the distribution. | ||||
6 | # | ||||
7 | |||||
8 | 1 | 2µs | require DynaLoader; | ||
9 | 1 | 1µs | require Exporter; | ||
10 | 1 | 23µs | package Storable; @ISA = qw(Exporter DynaLoader); | ||
11 | |||||
12 | 1 | 2µs | @EXPORT = qw(store retrieve); | ||
13 | 1 | 5µs | @EXPORT_OK = qw( | ||
14 | nstore store_fd nstore_fd fd_retrieve | ||||
15 | freeze nfreeze thaw | ||||
16 | dclone | ||||
17 | retrieve_fd | ||||
18 | lock_store lock_nstore lock_retrieve | ||||
19 | file_magic read_magic | ||||
20 | ); | ||||
21 | |||||
22 | 3 | 43µs | 2 | 612µs | # spent 319µs (26+293) within Storable::BEGIN@22 which was called:
# once (26µs+293µs) by MARC::Charset::Table::BEGIN@40 at line 22 # spent 319µs making 1 call to Storable::BEGIN@22
# spent 293µs making 1 call to AutoLoader::import |
23 | 3 | 172µs | 2 | 11.2ms | # spent 10.1ms (1.99+8.14) within Storable::BEGIN@23 which was called:
# once (1.99ms+8.14ms) by MARC::Charset::Table::BEGIN@40 at line 23 # spent 10.1ms making 1 call to Storable::BEGIN@23
# spent 1.04ms making 1 call to FileHandle::import |
24 | 3 | 133µs | 2 | 202µs | # spent 110µs (18+92) within Storable::BEGIN@24 which was called:
# once (18µs+92µs) by MARC::Charset::Table::BEGIN@40 at line 24 # spent 110µs making 1 call to Storable::BEGIN@24
# spent 92µs making 1 call to vars::import |
25 | |||||
26 | 1 | 2µs | $VERSION = '2.21'; | ||
27 | 1 | 2µs | *AUTOLOAD = \&AutoLoader::AUTOLOAD; # Grrr... | ||
28 | |||||
29 | # | ||||
30 | # Use of Log::Agent is optional | ||||
31 | # | ||||
32 | |||||
33 | { | ||||
34 | 2 | 7µs | local $SIG{__DIE__}; | ||
35 | 1 | 41µs | eval "use Log::Agent"; # spent 107µs executing statements in string eval # includes 95µs spent executing 1 call to 1 sub defined therein. | ||
36 | } | ||||
37 | |||||
38 | 1 | 1µs | require Carp; | ||
39 | |||||
40 | # | ||||
41 | # They might miss :flock in Fcntl | ||||
42 | # | ||||
43 | |||||
44 | # spent 230µs (17+213) within Storable::BEGIN@44 which was called:
# once (17µs+213µs) by MARC::Charset::Table::BEGIN@40 at line 53 | ||||
45 | 3 | 14µs | 1 | 213µs | if (eval { require Fcntl; 1 } && exists $Fcntl::EXPORT_TAGS{'flock'}) { # spent 213µs making 1 call to Exporter::import |
46 | Fcntl->import(':flock'); | ||||
47 | } else { | ||||
48 | eval q{ | ||||
49 | sub LOCK_SH () {1} | ||||
50 | sub LOCK_EX () {2} | ||||
51 | }; | ||||
52 | } | ||||
53 | 1 | 102µs | 1 | 230µs | } # spent 230µs making 1 call to Storable::BEGIN@44 |
54 | |||||
55 | sub CLONE { | ||||
56 | # clone context under threads | ||||
57 | Storable::init_perinterp(); | ||||
58 | } | ||||
59 | |||||
60 | # Can't Autoload cleanly as this clashes 8.3 with &retrieve | ||||
61 | sub retrieve_fd { &fd_retrieve } # Backward compatibility | ||||
62 | |||||
63 | # By default restricted hashes are downgraded on earlier perls. | ||||
64 | |||||
65 | 1 | 1µs | $Storable::downgrade_restricted = 1; | ||
66 | 1 | 1µs | $Storable::accept_future_minor = 1; | ||
67 | 1 | 10µs | 1 | 409µs | bootstrap Storable; # spent 409µs making 1 call to DynaLoader::bootstrap |
68 | 1 | 14µs | 1; | ||
69 | __END__ | ||||
# spent 79µs within Storable::bootstrap which was called:
# once (79µs+0s) by DynaLoader::bootstrap at line 215 of DynaLoader.pm |