Filename | /usr/local/lib/perl/5.14.2/Package/Stash/XS.pm |
Statements | Executed 14 statements in 341µs |
Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
---|---|---|---|---|---|
505 | 1 | 1 | 5.28ms | 5.92ms | add_symbol (xsub) | Package::Stash::XS::
816 | 1 | 1 | 2.50ms | 2.94ms | get_symbol (xsub) | Package::Stash::XS::
1692 | 5 | 1 | 1.24ms | 1.29ms | namespace (xsub) | Package::Stash::XS::
237 | 1 | 1 | 659µs | 792µs | has_symbol (xsub) | Package::Stash::XS::
128 | 1 | 1 | 555µs | 966µs | get_or_add_symbol (xsub) | Package::Stash::XS::
80 | 1 | 1 | 511µs | 511µs | new (xsub) | Package::Stash::XS::
585 | 3 | 1 | 383µs | 383µs | name (xsub) | Package::Stash::XS::
6 | 1 | 1 | 49µs | 53µs | list_all_symbols (xsub) | Package::Stash::XS::
1 | 1 | 1 | 12µs | 12µs | BEGIN@10 | Package::Stash::XS::
1 | 1 | 1 | 9µs | 9µs | BEGIN@2 | Package::Stash::XS::
1 | 1 | 1 | 7µs | 13µs | BEGIN@8 | Package::Stash::XS::
1 | 1 | 1 | 6µs | 11µs | BEGIN@9 | Package::Stash::XS::
1 | 1 | 1 | 4µs | 4µs | BEGIN@13 | Package::Stash::XS::
Line | State ments |
Time on line |
Calls | Time in subs |
Code |
---|---|---|---|---|---|
1 | package Package::Stash::XS; | ||||
2 | # spent 9µs within Package::Stash::XS::BEGIN@2 which was called:
# once (9µs+0s) by Module::Runtime::require_module at line 4 | ||||
3 | 1 | 5µs | $Package::Stash::XS::AUTHORITY = 'cpan:DOY'; | ||
4 | 1 | 29µs | 1 | 9µs | } # spent 9µs making 1 call to Package::Stash::XS::BEGIN@2 |
5 | { | ||||
6 | 2 | 900ns | $Package::Stash::XS::VERSION = '0.28'; | ||
7 | } | ||||
8 | 2 | 21µs | 2 | 18µs | # spent 13µs (7+6) within Package::Stash::XS::BEGIN@8 which was called:
# once (7µs+6µs) by Module::Runtime::require_module at line 8 # spent 13µs making 1 call to Package::Stash::XS::BEGIN@8
# spent 6µs making 1 call to strict::import |
9 | 2 | 24µs | 2 | 16µs | # spent 11µs (6+5) within Package::Stash::XS::BEGIN@9 which was called:
# once (6µs+5µs) by Module::Runtime::require_module at line 9 # spent 11µs making 1 call to Package::Stash::XS::BEGIN@9
# spent 5µs making 1 call to warnings::import |
10 | 2 | 40µs | 1 | 12µs | # spent 12µs within Package::Stash::XS::BEGIN@10 which was called:
# once (12µs+0s) by Module::Runtime::require_module at line 10 # spent 12µ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 | 45µ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 | 2 | 169µs | 1 | 160µs | ? ${ $Package::Stash::XS::{VERSION} } : (), # spent 160µs making 1 call to XSLoader::load |
22 | ); | ||||
23 | |||||
24 | |||||
25 | 1 | 5µs | 1; | ||
26 | |||||
27 | __END__ | ||||
# spent 5.92ms (5.28+638µs) within Package::Stash::XS::add_symbol which was called 505 times, avg 12µs/call:
# 505 times (5.28ms+638µs) by Class::MOP::Package::add_package_symbol at line 221 of Class/MOP/Package.pm, avg 12µs/call | |||||
# spent 966µs (555+411) within Package::Stash::XS::get_or_add_symbol which was called 128 times, avg 8µs/call:
# 128 times (555µs+411µs) by Class::MOP::Package::get_or_add_package_symbol at line 243 of Class/MOP/Package.pm, avg 8µs/call | |||||
# spent 2.94ms (2.50+441µs) within Package::Stash::XS::get_symbol which was called 816 times, avg 4µs/call:
# 816 times (2.50ms+441µs) by Class::MOP::Package::get_package_symbol at line 238 of Class/MOP/Package.pm, avg 4µs/call | |||||
# spent 792µs (659+133) within Package::Stash::XS::has_symbol which was called 237 times, avg 3µs/call:
# 237 times (659µs+133µs) by Class::MOP::Package::has_package_symbol at line 233 of Class/MOP/Package.pm, avg 3µs/call | |||||
# spent 53µs (49+4) within Package::Stash::XS::list_all_symbols which was called 6 times, avg 9µs/call:
# 6 times (49µs+4µs) by Class::MOP::Package::list_all_package_symbols at line 253 of Class/MOP/Package.pm, avg 9µs/call | |||||
# spent 383µs within Package::Stash::XS::name which was called 585 times, avg 655ns/call:
# 505 times (337µs+0s) by Package::Stash::XS::add_symbol at line 221 of Class/MOP/Package.pm, avg 667ns/call
# 78 times (45µs+0s) by Package::Stash::XS::namespace at line 243 of Class/MOP/Package.pm, avg 576ns/call
# 2 times (1µs+0s) by Package::Stash::XS::namespace at line 233 of Class/MOP/Package.pm, avg 700ns/call | |||||
# spent 1.29ms (1.24+46µs) within Package::Stash::XS::namespace which was called 1692 times, avg 762ns/call:
# 816 times (441µs+0s) by Package::Stash::XS::get_symbol at line 238 of Class/MOP/Package.pm, avg 541ns/call
# 505 times (301µs+0s) by Package::Stash::XS::add_symbol at line 221 of Class/MOP/Package.pm, avg 596ns/call
# 237 times (132µs+1µs) by Package::Stash::XS::has_symbol at line 233 of Class/MOP/Package.pm, avg 562ns/call
# 128 times (366µs+45µs) by Package::Stash::XS::get_or_add_symbol at line 243 of Class/MOP/Package.pm, avg 3µs/call
# 6 times (4µs+0s) by Package::Stash::XS::list_all_symbols at line 253 of Class/MOP/Package.pm, avg 633ns/call | |||||
# spent 511µs within Package::Stash::XS::new which was called 80 times, avg 6µs/call:
# 80 times (511µs+0s) by Class::MOP::Package::_package_stash at line 209 of Class/MOP/Package.pm, avg 6µs/call |