Filename | /usr/lib/perl/5.10/Storable.pm |
Statements | Executed 27 statements in 553µs |
Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
---|---|---|---|---|---|
1 | 1 | 1 | 2.03ms | 4.99ms | BEGIN@23 | Storable::
1 | 1 | 1 | 78µs | 78µs | bootstrap (xsub) | Storable::
1 | 1 | 1 | 25µs | 356µs | BEGIN@22 | Storable::
1 | 1 | 1 | 20µs | 114µs | BEGIN@24 | Storable::
1 | 1 | 1 | 16µs | 223µ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 | 1µs | require DynaLoader; | ||
9 | 1 | 2µs | require Exporter; | ||
10 | 1 | 15µ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 | 44µs | 2 | 687µs | # spent 356µs (25+331) within Storable::BEGIN@22 which was called:
# once (25µs+331µs) by MARC::Charset::Table::BEGIN@40 at line 22 # spent 356µs making 1 call to Storable::BEGIN@22
# spent 331µs making 1 call to AutoLoader::import |
23 | 3 | 158µs | 2 | 5.96ms | # spent 4.99ms (2.03+2.96) within Storable::BEGIN@23 which was called:
# once (2.03ms+2.96ms) by MARC::Charset::Table::BEGIN@40 at line 23 # spent 4.99ms making 1 call to Storable::BEGIN@23
# spent 964µs making 1 call to FileHandle::import |
24 | 3 | 133µs | 2 | 208µs | # spent 114µs (20+94) within Storable::BEGIN@24 which was called:
# once (20µs+94µs) by MARC::Charset::Table::BEGIN@40 at line 24 # spent 114µs making 1 call to Storable::BEGIN@24
# spent 94µ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 | 6µs | local $SIG{__DIE__}; | ||
35 | 1 | 40µs | eval "use Log::Agent"; # spent 104µs executing statements in string eval # includes 93µ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 223µs (16+207) within Storable::BEGIN@44 which was called:
# once (16µs+207µs) by MARC::Charset::Table::BEGIN@40 at line 53 | ||||
45 | 3 | 13µs | 1 | 207µs | if (eval { require Fcntl; 1 } && exists $Fcntl::EXPORT_TAGS{'flock'}) { # spent 207µ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 | 100µs | 1 | 223µs | } # spent 223µ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 | 2µs | $Storable::downgrade_restricted = 1; | ||
66 | 1 | 1µs | $Storable::accept_future_minor = 1; | ||
67 | 1 | 11µs | 1 | 424µs | bootstrap Storable; # spent 424µs making 1 call to DynaLoader::bootstrap |
68 | 1 | 15µs | 1; | ||
69 | __END__ | ||||
# spent 78µs within Storable::bootstrap which was called:
# once (78µs+0s) by DynaLoader::bootstrap at line 215 of DynaLoader.pm |