Profile of /usr/local/lib/perl5/site_perl/5.10.1/darwin-2level/Moose/Meta/Class/Immutable/Trait.pm

← Index
NYTProf Performance Profile «block view•line view•sub view»
For 05.Domain_and_Item.t
Run on Tue May 4 17:21:41 2010
Reported on Tue May 4 17:22:23 2010

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

Subroutines — ordered by exclusive time
Calls | P | F | Exclusive Time | Inclusive Time | Subroutine
--- | --- | --- | --- | --- | ---
1 | 1 | 1 | 14µs | 16µs | Moose::Meta::Class::Immutable::Trait::::BEGIN@3Moose::Meta::Class::Immutable::Trait::BEGIN@3
1 | 1 | 1 | 8µs | 17µs | Moose::Meta::Class::Immutable::Trait::::BEGIN@4Moose::Meta::Class::Immutable::Trait::BEGIN@4
1 | 1 | 1 | 7µs | 51µs | Moose::Meta::Class::Immutable::Trait::::BEGIN@12Moose::Meta::Class::Immutable::Trait::BEGIN@12
1 | 1 | 1 | 4µs | 4µs | Moose::Meta::Class::Immutable::Trait::::BEGIN@6Moose::Meta::Class::Immutable::Trait::BEGIN@6
0 | 0 | 0 | 0s | 0s | Moose::Meta::Class::Immutable::Trait::::add_roleMoose::Meta::Class::Immutable::Trait::add_role
0 | 0 | 0 | 0s | 0s | Moose::Meta::Class::Immutable::Trait::::calculate_all_rolesMoose::Meta::Class::Immutable::Trait::calculate_all_roles

Call graph for these subroutines as a Graphviz dot language file.

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 use strict; # 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 use warnings; # 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 use Class::MOP; # 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 use base 'Class::MOP::Class::Immutable::Trait'; # 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 |  |  |  |  |