Filename | /Users/timbo/perl5/perlbrew/perls/perl-5.18.2/lib/site_perl/5.18.2/Role/Tiny/With.pm |
Statements | Executed 40 statements in 326µs |
Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
---|---|---|---|---|---|
1 | 1 | 1 | 2.43ms | 2.53ms | BEGIN@9 | Role::Tiny::With::
14 | 14 | 14 | 75µs | 10.6ms | with | Role::Tiny::With::
1 | 1 | 1 | 11µs | 23µs | BEGIN@3 | Role::Tiny::With::
1 | 1 | 1 | 9µs | 17µs | BEGIN@11 | Role::Tiny::With::
1 | 1 | 1 | 7µs | 10µs | BEGIN@4 | Role::Tiny::With::
Line | State ments |
Time on line |
Calls | Time in subs |
Code |
---|---|---|---|---|---|
1 | package Role::Tiny::With; | ||||
2 | |||||
3 | 2 | 20µs | 2 | 35µs | # spent 23µs (11+12) within Role::Tiny::With::BEGIN@3 which was called:
# once (11µs+12µs) by Path::IsDev::HeuristicSet::Basic::BEGIN@24 at line 3 # spent 23µs making 1 call to Role::Tiny::With::BEGIN@3
# spent 12µs making 1 call to strict::import |
4 | 2 | 34µs | 2 | 14µs | # spent 10µs (7+4) within Role::Tiny::With::BEGIN@4 which was called:
# once (7µs+4µs) by Path::IsDev::HeuristicSet::Basic::BEGIN@24 at line 4 # spent 10µs making 1 call to Role::Tiny::With::BEGIN@4
# spent 4µs making 1 call to warnings::import |
5 | |||||
6 | 1 | 500ns | our $VERSION = '2.000001'; | ||
7 | 1 | 9µs | $VERSION = eval $VERSION; # spent 2µs executing statements in string eval | ||
8 | |||||
9 | 2 | 115µs | 1 | 2.53ms | # spent 2.53ms (2.43+102µs) within Role::Tiny::With::BEGIN@9 which was called:
# once (2.43ms+102µs) by Path::IsDev::HeuristicSet::Basic::BEGIN@24 at line 9 # spent 2.53ms making 1 call to Role::Tiny::With::BEGIN@9 |
10 | |||||
11 | 2 | 63µs | 2 | 24µs | # spent 17µs (9+7) within Role::Tiny::With::BEGIN@11 which was called:
# once (9µs+7µs) by Path::IsDev::HeuristicSet::Basic::BEGIN@24 at line 11 # spent 17µs making 1 call to Role::Tiny::With::BEGIN@11
# spent 7µs making 1 call to Exporter::import |
12 | 1 | 900ns | our @EXPORT = qw( with ); | ||
13 | |||||
14 | # spent 10.6ms (75µs+10.5) within Role::Tiny::With::with which was called 14 times, avg 756µs/call:
# once (5µs+2.00ms) by Module::Runtime::require_module at line 50 of Path/IsDev/NegativeHeuristic/IsDev/IgnoreFile.pm
# once (8µs+1.50ms) by Module::Runtime::require_module at line 29 of Path/IsDev/Heuristic/TestDir.pm
# once (4µs+1.45ms) by Module::Runtime::require_module at line 40 of Path/IsDev/Heuristic/Changelog.pm
# once (6µs+1.41ms) by Module::Runtime::require_module at line 25 of Path/IsDev/HeuristicSet/Basic.pm
# once (5µs+926µs) by Module::Runtime::require_module at line 34 of Path/IsDev/NegativeHeuristic/HomeDir.pm
# once (4µs+803µs) by Module::Runtime::require_module at line 28 of Path/IsDev/Heuristic/Tool/Dzil.pm
# once (6µs+345µs) by Module::Runtime::require_module at line 37 of Path/IsDev/Heuristic/MYMETA.pm
# once (6µs+344µs) by Module::Runtime::require_module at line 29 of Path/IsDev/Heuristic/VCS/Git.pm
# once (6µs+344µs) by Module::Runtime::require_module at line 41 of Path/IsDev/Heuristic/DevDirMarker.pm
# once (6µs+343µs) by Module::Runtime::require_module at line 28 of Path/IsDev/Heuristic/Makefile.pm
# once (7µs+298µs) by Module::Runtime::require_module at line 36 of Path/IsDev/NegativeHeuristic/PerlINC.pm
# once (4µs+247µs) by Module::Runtime::require_module at line 28 of Path/IsDev/Heuristic/Tool/ModuleBuild.pm
# once (4µs+246µs) by Module::Runtime::require_module at line 28 of Path/IsDev/Heuristic/Tool/MakeMaker.pm
# once (4µs+245µs) by Module::Runtime::require_module at line 28 of Path/IsDev/Heuristic/META.pm | ||||
15 | 14 | 9µs | my $target = caller; | ||
16 | 14 | 73µs | 14 | 10.5ms | Role::Tiny->apply_roles_to_package($target, @_) # spent 10.5ms making 14 calls to Role::Tiny::apply_roles_to_package, avg 750µs/call |
17 | } | ||||
18 | |||||
19 | 1 | 2µs | 1; | ||
20 | |||||
21 | =head1 NAME | ||||
22 | |||||
23 | Role::Tiny::With - Neat interface for consumers of Role::Tiny roles | ||||
24 | |||||
25 | =head1 SYNOPSIS | ||||
26 | |||||
27 | package Some::Class; | ||||
28 | |||||
29 | use Role::Tiny::With; | ||||
30 | |||||
31 | with 'Some::Role'; | ||||
32 | |||||
33 | # The role is now mixed in | ||||
34 | |||||
35 | =head1 DESCRIPTION | ||||
36 | |||||
37 | C<Role::Tiny> is a minimalist role composition tool. C<Role::Tiny::With> | ||||
38 | provides a C<with> function to compose such roles. | ||||
39 | |||||
40 | =head1 AUTHORS | ||||
41 | |||||
42 | See L<Role::Tiny> for authors. | ||||
43 | |||||
44 | =head1 COPYRIGHT AND LICENSE | ||||
45 | |||||
46 | See L<Role::Tiny> for the copyright and license. | ||||
47 | |||||
48 | =cut | ||||
49 | |||||
50 |