| File | /usr/local/lib/perl5/site_perl/5.10.1/darwin-2level/Moose/Meta/Class/Immutable/Trait.pm |
| Statements Executed | 16 |
| Statement Execution Time | 177µs |
| Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
|---|---|---|---|---|---|
| 1 | 1 | 1 | 14µs | 16µs | Moose::Meta::Class::Immutable::Trait::BEGIN@3 |
| 1 | 1 | 1 | 8µs | 17µs | Moose::Meta::Class::Immutable::Trait::BEGIN@4 |
| 1 | 1 | 1 | 7µs | 51µs | Moose::Meta::Class::Immutable::Trait::BEGIN@12 |
| 1 | 1 | 1 | 4µs | 4µs | Moose::Meta::Class::Immutable::Trait::BEGIN@6 |
| 0 | 0 | 0 | 0s | 0s | Moose::Meta::Class::Immutable::Trait::add_role |
| 0 | 0 | 0 | 0s | 0s | Moose::Meta::Class::Immutable::Trait::calculate_all_roles |
| Line | State ments |
Time on line |
Calls | Time in subs |
Code |
|---|---|---|---|---|---|
| 1 | package Moose::Meta::Class::Immutable::Trait; | ||||
| 2 | |||||
| 3 | 3 | 21µs | 2 | 19µs | # spent 16µs (14+3) within Moose::Meta::Class::Immutable::Trait::BEGIN@3 which was called
# once (14µs+3µs) by Moose::Meta::Class::BEGIN@21 at line 3 # spent 16µs making 1 call to Moose::Meta::Class::Immutable::Trait::BEGIN@3
# spent 3µs making 1 call to strict::import |
| 4 | 3 | 18µs | 2 | 26µs | # spent 17µs (8+9) within Moose::Meta::Class::Immutable::Trait::BEGIN@4 which was called
# once (8µs+9µs) by Moose::Meta::Class::BEGIN@21 at line 4 # spent 17µs making 1 call to Moose::Meta::Class::Immutable::Trait::BEGIN@4
# spent 9µs making 1 call to warnings::import |
| 5 | |||||
| 6 | 3 | 44µs | 1 | 4µs | # spent 4µs within Moose::Meta::Class::Immutable::Trait::BEGIN@6 which was called
# once (4µs+0s) by Moose::Meta::Class::BEGIN@21 at line 6 # spent 4µs making 1 call to Moose::Meta::Class::Immutable::Trait::BEGIN@6 |
| 7 | |||||
| 8 | 1 | 600ns | our $VERSION = '0.98'; | ||
| 9 | 1 | 14µs | $VERSION = eval $VERSION; | ||
| 10 | 1 | 300ns | our $AUTHORITY = 'cpan:STEVAN'; | ||
| 11 | |||||
| 12 | 3 | 76µs | 2 | 96µs | # spent 51µs (7+45) within Moose::Meta::Class::Immutable::Trait::BEGIN@12 which was called
# once (7µs+45µs) by Moose::Meta::Class::BEGIN@21 at line 12 # spent 51µs making 1 call to Moose::Meta::Class::Immutable::Trait::BEGIN@12
# spent 45µs making 1 call to base::import |
| 13 | |||||
| 14 | sub add_role { $_[1]->_immutable_cannot_call } | ||||
| 15 | |||||
| 16 | sub calculate_all_roles { | ||||
| 17 | my $orig = shift; | ||||
| 18 | my $self = shift; | ||||
| 19 | @{ $self->{__immutable}{calculate_all_roles} ||= [ $self->$orig ] }; | ||||
| 20 | } | ||||
| 21 | |||||
| 22 | 1 | 4µs | 1; | ||
| 23 | |||||
| 24 | __END__ | ||||
| 25 | |||||
| 26 | =pod | ||||
| 27 | |||||
| 28 | =head1 NAME | ||||
| 29 | |||||
| 30 | Moose::Meta::Class::Immutable::Trait - Implements immutability for metaclass objects | ||||
| 31 | |||||
| 32 | =head1 DESCRIPTION | ||||
| 33 | |||||
| 34 | This class makes some Moose-specific metaclass methods immutable. This | ||||
| 35 | is deep guts. | ||||
| 36 | |||||
| 37 | =head1 BUGS | ||||
| 38 | |||||
| 39 | See L<Moose/BUGS> for details on reporting bugs. | ||||
| 40 | |||||
| 41 | =head1 AUTHOR | ||||
| 42 | |||||
| 43 | Yuval Kogman E<lt>nothingmuch@cpan.orgE<gt> | ||||
| 44 | |||||
| 45 | =head1 COPYRIGHT AND LICENSE | ||||
| 46 | |||||
| 47 | Copyright 2009 by Infinity Interactive, Inc. | ||||
| 48 | |||||
| 49 | L<http://www.iinteractive.com> | ||||
| 50 | |||||
| 51 | This library is free software; you can redistribute it and/or modify | ||||
| 52 | it under the same terms as Perl itself. | ||||
| 53 | |||||
| 54 | =cut | ||||
| 55 |