| Filename | /usr/lib/x86_64-linux-gnu/perl5/5.20/Package/Stash/XS.pm |
| Statements | Executed 13 statements in 465µs |
| Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
|---|---|---|---|---|---|
| 49 | 4 | 1 | 113µs | 132µs | Package::Stash::XS::get_symbol (xsub) |
| 68 | 7 | 1 | 39µs | 42µs | Package::Stash::XS::namespace (xsub) |
| 9 | 2 | 1 | 25µs | 35µs | Package::Stash::XS::has_symbol (xsub) |
| 4 | 4 | 1 | 23µs | 23µs | Package::Stash::XS::new (xsub) |
| 8 | 1 | 1 | 18µs | 20µs | Package::Stash::XS::remove_glob (xsub) |
| 1 | 1 | 1 | 11µs | 11µs | Package::Stash::XS::BEGIN@2 |
| 1 | 1 | 1 | 9µs | 19µs | Package::Stash::XS::list_all_symbols (xsub) |
| 1 | 1 | 1 | 9µs | 9µs | Package::Stash::XS::BEGIN@10 |
| 1 | 1 | 1 | 6µs | 10µs | Package::Stash::XS::BEGIN@9 |
| 1 | 1 | 1 | 6µs | 6µs | Package::Stash::XS::add_symbol (xsub) |
| 1 | 1 | 1 | 6µs | 16µs | Package::Stash::XS::BEGIN@8 |
| 1 | 1 | 1 | 4µs | 4µs | Package::Stash::XS::BEGIN@13 |
| 4 | 4 | 1 | 2µs | 2µs | Package::Stash::XS::name (xsub) |
| Line | State ments |
Time on line |
Calls | Time in subs |
Code |
|---|---|---|---|---|---|
| 1 | package Package::Stash::XS; | ||||
| 2 | # spent 11µs within Package::Stash::XS::BEGIN@2 which was called:
# once (11µs+0s) by Module::Runtime::require_module at line 4 | ||||
| 3 | 1 | 5µs | $Package::Stash::XS::AUTHORITY = 'cpan:DOY'; | ||
| 4 | 1 | 28µs | 1 | 11µs | } # spent 11µs making 1 call to Package::Stash::XS::BEGIN@2 |
| 5 | { | ||||
| 6 | 2 | 600ns | $Package::Stash::XS::VERSION = '0.28'; | ||
| 7 | } | ||||
| 8 | 2 | 20µs | 2 | 26µs | # spent 16µs (6+10) within Package::Stash::XS::BEGIN@8 which was called:
# once (6µs+10µs) by Module::Runtime::require_module at line 8 # spent 16µs making 1 call to Package::Stash::XS::BEGIN@8
# spent 10µs making 1 call to strict::import |
| 9 | 2 | 22µs | 2 | 14µs | # spent 10µs (6+4) within Package::Stash::XS::BEGIN@9 which was called:
# once (6µs+4µs) by Module::Runtime::require_module at line 9 # spent 10µs making 1 call to Package::Stash::XS::BEGIN@9
# spent 4µs making 1 call to warnings::import |
| 10 | 2 | 38µs | 1 | 9µs | # spent 9µs within Package::Stash::XS::BEGIN@10 which was called:
# once (9µs+0s) by Module::Runtime::require_module at line 10 # spent 9µs making 1 call to Package::Stash::XS::BEGIN@10 |
| 11 | # ABSTRACT: faster and more correct implementation of the Package::Stash API | ||||
| 12 | |||||
| 13 | 2 | 46µs | 1 | 4µs | # spent 4µs within Package::Stash::XS::BEGIN@13 which was called:
# once (4µs+0s) by Module::Runtime::require_module at line 13 # spent 4µs making 1 call to Package::Stash::XS::BEGIN@13 |
| 14 | XSLoader::load( | ||||
| 15 | __PACKAGE__, | ||||
| 16 | # we need to be careful not to touch $VERSION at compile time, otherwise | ||||
| 17 | # DynaLoader will assume it's set and check against it, which will cause | ||||
| 18 | # fail when being run in the checkout without dzil having set the actual | ||||
| 19 | # $VERSION | ||||
| 20 | exists $Package::Stash::XS::{VERSION} | ||||
| 21 | 1 | 301µs | 1 | 294µs | ? ${ $Package::Stash::XS::{VERSION} } : (), # spent 294µs making 1 call to XSLoader::load |
| 22 | ); | ||||
| 23 | |||||
| 24 | |||||
| 25 | 1 | 5µs | 1; | ||
| 26 | |||||
| 27 | __END__ | ||||
# spent 6µs (6+300ns) within Package::Stash::XS::add_symbol which was called:
# once (6µs+300ns) by namespace::clean::get_class_store at line 363 of namespace/clean.pm | |||||
# spent 132µs (113+19) within Package::Stash::XS::get_symbol which was called 49 times, avg 3µs/call:
# 32 times (64µs+10µs) by namespace::clean::__ANON__[/usr/share/perl5/namespace/clean.pm:252] at line 237 of namespace/clean.pm, avg 2µs/call
# 8 times (22µs+6µs) by namespace::clean::__ANON__[/usr/share/perl5/namespace/clean.pm:252] at line 213 of namespace/clean.pm, avg 4µs/call
# 8 times (23µs+3µs) by namespace::clean::get_functions at line 381 of namespace/clean.pm, avg 3µs/call
# once (4µs+300ns) by namespace::clean::get_class_store at line 365 of namespace/clean.pm | |||||
# spent 35µs (25+10) within Package::Stash::XS::has_symbol which was called 9 times, avg 4µs/call:
# 8 times (21µs+6µs) by namespace::clean::import at line 308 of namespace/clean.pm, avg 3µs/call
# once (3µs+4µs) by namespace::clean::get_class_store at line 363 of namespace/clean.pm | |||||
# spent 19µs (9+10) within Package::Stash::XS::list_all_symbols which was called:
# once (9µs+10µs) by namespace::clean::get_functions at line 381 of namespace/clean.pm | |||||
# spent 2µs within Package::Stash::XS::name which was called 4 times, avg 525ns/call:
# once (700ns+0s) by Package::Stash::XS::namespace at line 381 of namespace/clean.pm
# once (500ns+0s) by Package::Stash::XS::namespace at line 308 of namespace/clean.pm
# once (500ns+0s) by Package::Stash::XS::namespace at line 213 of namespace/clean.pm
# once (400ns+0s) by Package::Stash::XS::namespace at line 363 of namespace/clean.pm | |||||
# spent 42µs (39+2) within Package::Stash::XS::namespace which was called 68 times, avg 610ns/call:
# 32 times (10µs+0s) by Package::Stash::XS::get_symbol at line 237 of namespace/clean.pm, avg 297ns/call
# 9 times (12µs+700ns) by Package::Stash::XS::get_symbol or Package::Stash::XS::list_all_symbols at line 381 of namespace/clean.pm, avg 1µs/call
# 8 times (6µs+500ns) by Package::Stash::XS::get_symbol at line 213 of namespace/clean.pm, avg 788ns/call
# 8 times (6µs+500ns) by Package::Stash::XS::has_symbol at line 308 of namespace/clean.pm, avg 775ns/call
# 8 times (2µs+0s) by Package::Stash::XS::remove_glob at line 241 of namespace/clean.pm, avg 288ns/call
# 2 times (4µs+400ns) by Package::Stash::XS::add_symbol or Package::Stash::XS::has_symbol at line 363 of namespace/clean.pm, avg 2µs/call
# once (300ns+0s) by Package::Stash::XS::get_symbol at line 365 of namespace/clean.pm | |||||
# spent 23µs within Package::Stash::XS::new which was called 4 times, avg 6µs/call:
# once (12µs+0s) by namespace::clean::get_functions at line 379 of namespace/clean.pm
# once (5µs+0s) by namespace::clean::__ANON__[/usr/share/perl5/namespace/clean.pm:252] at line 204 of namespace/clean.pm
# once (3µs+0s) by namespace::clean::get_class_store at line 361 of namespace/clean.pm
# once (3µs+0s) by namespace::clean::import at line 296 of namespace/clean.pm | |||||
# spent 20µs (18+2) within Package::Stash::XS::remove_glob which was called 8 times, avg 3µs/call:
# 8 times (18µs+2µs) by namespace::clean::__ANON__[/usr/share/perl5/namespace/clean.pm:252] at line 241 of namespace/clean.pm, avg 3µs/call |