← Index
NYTProf Performance Profile   « block view • line view • sub view »
For -e
  Run on Wed Nov 17 21:39:01 2010
Reported on Wed Nov 17 22:06:53 2010

Filename/home/doy/perl5/perlbrew/perls/perl-5.10.1/lib/site_perl/5.10.1/KiokuDB/Thunk.pm
StatementsExecuted 12 statements in 1.07ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
11167µs23.0msKiokuDB::Thunk::::BEGIN@4KiokuDB::Thunk::BEGIN@4
11145µs3.54msKiokuDB::Thunk::::BEGIN@6KiokuDB::Thunk::BEGIN@6
0000s0sKiokuDB::Thunk::::_build_valueKiokuDB::Thunk::_build_value
0000s0sKiokuDB::Thunk::::vivifyKiokuDB::Thunk::vivify
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1#!/usr/bin/perl
2
3package KiokuDB::Thunk;
43167µs245.9ms
# spent 23.0ms (67µs+22.9) within KiokuDB::Thunk::BEGIN@4 which was called: # once (67µs+22.9ms) by KiokuDB::TypeMap::Entry::MOP::BEGIN@9 at line 4
use Moose;
# spent 23.0ms making 1 call to KiokuDB::Thunk::BEGIN@4 # spent 22.9ms making 1 call to Moose::Exporter::__ANON__[Moose/Exporter.pm:456]
5
63734µs27.04ms
# spent 3.54ms (45µs+3.50) within KiokuDB::Thunk::BEGIN@6 which was called: # once (45µs+3.50ms) by KiokuDB::TypeMap::Entry::MOP::BEGIN@9 at line 6
use namespace::clean -except => 'meta';
# spent 3.54ms making 1 call to KiokuDB::Thunk::BEGIN@6 # spent 3.50ms making 1 call to namespace::clean::import
7
8113µs17.64mshas collapsed => (
# spent 7.64ms making 1 call to Moose::has
9 isa => "Ref",
10 is => "ro",
11 required => 1,
12);
13
14112µs17.63mshas linker => (
# spent 7.63ms making 1 call to Moose::has
15 isa => "KiokuDB::Linker",
16 is => "ro",
17);
18
19111µs18.22mshas attr => (
# spent 8.22ms making 1 call to Moose::has
20 isa => "Class::MOP::Attribute",
21 is => "ro",
22);
23
24112µs114.6mshas value => (
# spent 14.6ms making 1 call to Moose::has
25 isa => "Ref",
26 is => "ro",
27 lazy_build => 1,
28);
29
30sub _build_value {
31 my $self = shift;
32
33 return $self->linker->expand_object($self->collapsed);
34}
35
36sub vivify {
37 my ( $self, $instance ) = @_;
38
39 my $value = $self->value;
40
41 my $attr = $self->attr;
42
43 $attr->set_raw_value($instance, $value);
44
45 $attr->_weaken_value($instance)
46 if ref $value and $attr->is_weak_ref;
47
48 return $value;
49}
50
51124µs214.8ms__PACKAGE__->meta->make_immutable;
# spent 14.7ms making 1 call to Class::MOP::Class::make_immutable # spent 138µs making 1 call to KiokuDB::Thunk::meta
52
53156µs__PACKAGE__
54
55138µs110.7ms__END__