← Index
NYTProf Performance Profile   « block view • line view • sub view »
For -e
  Run on Wed Nov 17 21:45:08 2010
Reported on Wed Nov 17 22:11:17 2010

Filename/home/doy/perl5/perlbrew/perls/perl-5.10.1/lib/site_perl/5.10.1/x86_64-linux/Moose/Meta/Role/Application/ToInstance.pm
StatementsExecuted 20 statements in 1.31ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
11174µs94µsMoose::Meta::Role::Application::ToInstance::::BEGIN@3Moose::Meta::Role::Application::ToInstance::BEGIN@3
11157µs332µsMoose::Meta::Role::Application::ToInstance::::BEGIN@13Moose::Meta::Role::Application::ToInstance::BEGIN@13
11142µs205µsMoose::Meta::Role::Application::ToInstance::::BEGIN@7Moose::Meta::Role::Application::ToInstance::BEGIN@7
11139µs109µsMoose::Meta::Role::Application::ToInstance::::BEGIN@4Moose::Meta::Role::Application::ToInstance::BEGIN@4
11137µs3.08msMoose::Meta::Role::Application::ToInstance::::BEGIN@5Moose::Meta::Role::Application::ToInstance::BEGIN@5
0000s0sMoose::Meta::Role::Application::ToInstance::::__ANON__[:17]Moose::Meta::Role::Application::ToInstance::__ANON__[:17]
0000s0sMoose::Meta::Role::Application::ToInstance::::applyMoose::Meta::Role::Application::ToInstance::apply
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package Moose::Meta::Role::Application::ToInstance;
2
33105µs2114µs
# spent 94µs (74+20) within Moose::Meta::Role::Application::ToInstance::BEGIN@3 which was called: # once (74µs+20µs) by Moose::BEGIN@33 at line 3
use strict;
# spent 94µs making 1 call to Moose::Meta::Role::Application::ToInstance::BEGIN@3 # spent 20µs making 1 call to strict::import
4394µs2179µs
# spent 109µs (39+70) within Moose::Meta::Role::Application::ToInstance::BEGIN@4 which was called: # once (39µs+70µs) by Moose::BEGIN@33 at line 4
use warnings;
# spent 109µs making 1 call to Moose::Meta::Role::Application::ToInstance::BEGIN@4 # spent 70µs making 1 call to warnings::import
53153µs26.12ms
# spent 3.08ms (37µs+3.04) within Moose::Meta::Role::Application::ToInstance::BEGIN@5 which was called: # once (37µs+3.04ms) by Moose::BEGIN@33 at line 5
use metaclass;
# spent 3.08ms making 1 call to Moose::Meta::Role::Application::ToInstance::BEGIN@5 # spent 3.04ms making 1 call to metaclass::import
6
73252µs2368µs
# spent 205µs (42+163) within Moose::Meta::Role::Application::ToInstance::BEGIN@7 which was called: # once (42µs+163µs) by Moose::BEGIN@33 at line 7
use Scalar::Util 'blessed';
# spent 205µs making 1 call to Moose::Meta::Role::Application::ToInstance::BEGIN@7 # spent 163µs making 1 call to Exporter::import
8
915µsour $VERSION = '1.19';
101100µs$VERSION = eval $VERSION;
# spent 11µs executing statements in string eval
1113µsour $AUTHORITY = 'cpan:STEVAN';
12
133536µs2607µs
# spent 332µs (57+275) within Moose::Meta::Role::Application::ToInstance::BEGIN@13 which was called: # once (57µs+275µs) by Moose::BEGIN@33 at line 13
use base 'Moose::Meta::Role::Application';
# spent 332µs making 1 call to Moose::Meta::Role::Application::ToInstance::BEGIN@13 # spent 275µs making 1 call to base::import
14
15__PACKAGE__->meta->add_attribute('rebless_params' => (
16 reader => 'rebless_params',
17 default => sub { {} }
18137µs22.31ms));
# spent 2.18ms making 1 call to Class::MOP::Mixin::HasAttributes::add_attribute # spent 128µs making 1 call to Moose::Meta::Role::Application::ToInstance::meta
19
20sub apply {
21 my ( $self, $role, $object, $args ) = @_;
22
23 my $obj_meta = Class::MOP::class_of($object) || 'Moose::Meta::Class';
24
25 # This is a special case to handle the case where the object's metaclass
26 # is a Class::MOP::Class, but _not_ a Moose::Meta::Class (for example,
27 # when applying a role to a Moose::Meta::Attribute object).
28 $obj_meta = 'Moose::Meta::Class'
29 unless $obj_meta->isa('Moose::Meta::Class');
30
31 my $class = $obj_meta->create_anon_class(
32 superclasses => [ blessed($object) ],
33 roles => [ $role, keys(%$args) ? ($args) : () ],
34 cache => 1,
35 );
36
37 $class->rebless_instance( $object, %{ $self->rebless_params } );
38}
39
40127µs1;
41
42__END__