← Index
NYTProf Performance Profile   « line view »
For examples/Atom-timer.pl
  Run on Mon Aug 12 14:45:28 2013
Reported on Mon Aug 12 14:46:14 2013

Filename/Users/dde/perl5/perlbrew/perls/5.18.0t/lib/site_perl/5.18.0/darwin-thread-multi-2level/Moose.pm
StatementsExecuted 275 statements in 3.00ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
1113.73ms20.1msMoose::::BEGIN@27Moose::BEGIN@27
1113.24ms81.8msMoose::::BEGIN@18Moose::BEGIN@18
1113.04ms18.3msMoose::::BEGIN@35Moose::BEGIN@35
1112.03ms7.27msMoose::::BEGIN@28Moose::BEGIN@28
1111.39ms2.13msMoose::::BEGIN@38Moose::BEGIN@38
1111.10ms4.90msMoose::::BEGIN@39Moose::BEGIN@39
1111.03ms12.6msMoose::::BEGIN@15Moose::BEGIN@15
111817µs2.82msMoose::::BEGIN@33Moose::BEGIN@33
111812µs1.26msMoose::::BEGIN@40Moose::BEGIN@40
111754µs2.05msMoose::::BEGIN@36Moose::BEGIN@36
111631µs89.2msMoose::::BEGIN@29Moose::BEGIN@29
111591µs1.51msMoose::::BEGIN@37Moose::BEGIN@37
111499µs757µsMoose::::BEGIN@13Moose::BEGIN@13
111361µs1.14msMoose::::BEGIN@41Moose::BEGIN@41
111315µs1.37msMoose::::BEGIN@46Moose::BEGIN@46
111197µs1.14msMoose::::BEGIN@31Moose::BEGIN@31
111196µs196µsMoose::::bootstrapMoose::bootstrap (xsub)
111187µs2.04msMoose::::BEGIN@17Moose::BEGIN@17
1893171µs137msMoose::::hasMoose::has
411116µs14.5msMoose::::init_metaMoose::init_meta
43324µs514msMoose::::withMoose::with
22214µs1.08msMoose::::extendsMoose::extends
1118µs8µsMoose::::BEGIN@11Moose::BEGIN@11
1117µs1.23msMoose::::BEGIN@43Moose::BEGIN@43
1117µs7µsMoose::::BEGIN@2Moose::BEGIN@2
1116µs39µsMoose::::BEGIN@14Moose::BEGIN@14
1116µs16µsMoose::::BEGIN@8Moose::BEGIN@8
1115µs8µsMoose::::BEGIN@9Moose::BEGIN@9
1114µs4µsMoose::::BEGIN@30Moose::BEGIN@30
1114µs4µsMoose::::BEGIN@20Moose::BEGIN@20
1113µs3µsMoose::::BEGIN@44Moose::BEGIN@44
1113µs3µsMoose::::BEGIN@22Moose::BEGIN@22
0000s0sMoose::::_get_callerMoose::_get_caller
0000s0sMoose::::afterMoose::after
0000s0sMoose::::aroundMoose::around
0000s0sMoose::::augmentMoose::augment
0000s0sMoose::::beforeMoose::before
0000s0sMoose::::innerMoose::inner
0000s0sMoose::::overrideMoose::override
0000s0sMoose::::superMoose::super
0000s0sMoose::::throw_errorMoose::throw_error
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package Moose;
2
# spent 7µs within Moose::BEGIN@2 which was called: # once (7µs+0s) by Atom::BEGIN@2 at line 4
BEGIN {
314µs $Moose::AUTHORITY = 'cpan:STEVAN';
4124µs17µs}
# spent 7µs making 1 call to Moose::BEGIN@2
5{
62900ns $Moose::VERSION = '2.1005';
7}
8219µs226µs
# spent 16µs (6+10) within Moose::BEGIN@8 which was called: # once (6µs+10µs) by Atom::BEGIN@2 at line 8
use strict;
# spent 16µs making 1 call to Moose::BEGIN@8 # spent 10µs making 1 call to strict::import
9218µs212µs
# spent 8µs (5+3) within Moose::BEGIN@9 which was called: # once (5µs+3µs) by Atom::BEGIN@2 at line 9
use warnings;
# spent 8µs making 1 call to Moose::BEGIN@9 # spent 3µs making 1 call to warnings::import
10
11236µs18µs
# spent 8µs within Moose::BEGIN@11 which was called: # once (8µs+0s) by Atom::BEGIN@2 at line 11
use 5.008;
# spent 8µs making 1 call to Moose::BEGIN@11
12
13298µs2798µs
# spent 757µs (499+258) within Moose::BEGIN@13 which was called: # once (499µs+258µs) by Atom::BEGIN@2 at line 13
use Scalar::Util 'blessed';
# spent 757µs making 1 call to Moose::BEGIN@13 # spent 41µs making 1 call to Exporter::import
14221µs272µs
# spent 39µs (6+33) within Moose::BEGIN@14 which was called: # once (6µs+33µs) by Atom::BEGIN@2 at line 14
use Carp 'carp', 'confess';
# spent 39µs making 1 call to Moose::BEGIN@14 # spent 33µs making 1 call to Exporter::import
15290µs212.6ms
# spent 12.6ms (1.03+11.5) within Moose::BEGIN@15 which was called: # once (1.03ms+11.5ms) by Atom::BEGIN@2 at line 15
use Class::Load 'is_class_loaded';
# spent 12.6ms making 1 call to Moose::BEGIN@15 # spent 31µs making 1 call to Exporter::import
16
17281µs22.05ms
# spent 2.04ms (187µs+1.86) within Moose::BEGIN@17 which was called: # once (187µs+1.86ms) by Atom::BEGIN@2 at line 17
use Moose::Deprecated;
# spent 2.04ms making 1 call to Moose::BEGIN@17 # spent 4µs making 1 call to Package::DeprecationManager::__ANON__[Package/DeprecationManager.pm:61]
18288µs281.8ms
# spent 81.8ms (3.24+78.6) within Moose::BEGIN@18 which was called: # once (3.24ms+78.6ms) by Atom::BEGIN@2 at line 18
use Moose::Exporter;
# spent 81.8ms making 1 call to Moose::BEGIN@18 # spent 26µs making 1 call to Moose::Exporter::import
19
20237µs14µs
# spent 4µs within Moose::BEGIN@20 which was called: # once (4µs+0s) by Atom::BEGIN@2 at line 20
use Class::MOP;
# spent 4µs making 1 call to Moose::BEGIN@20
21
22
# spent 3µs within Moose::BEGIN@22 which was called: # once (3µs+0s) by Atom::BEGIN@2 at line 25
BEGIN {
2313µs die "Class::MOP version $Moose::VERSION required--this is version $Class::MOP::VERSION"
24 if $Moose::VERSION && $Class::MOP::VERSION ne $Moose::VERSION;
25116µs13µs}
# spent 3µs making 1 call to Moose::BEGIN@22
26
27293µs120.1ms
# spent 20.1ms (3.73+16.3) within Moose::BEGIN@27 which was called: # once (3.73ms+16.3ms) by Atom::BEGIN@2 at line 27
use Moose::Meta::Class;
# spent 20.1ms making 1 call to Moose::BEGIN@27
28292µs17.27ms
# spent 7.27ms (2.03+5.24) within Moose::BEGIN@28 which was called: # once (2.03ms+5.24ms) by Atom::BEGIN@2 at line 28
use Moose::Meta::TypeConstraint;
# spent 7.27ms making 1 call to Moose::BEGIN@28
292107µs189.2ms
# spent 89.2ms (631µs+88.6) within Moose::BEGIN@29 which was called: # once (631µs+88.6ms) by Atom::BEGIN@2 at line 29
use Moose::Meta::TypeCoercion;
# spent 89.2ms making 1 call to Moose::BEGIN@29
30219µs14µs
# spent 4µs within Moose::BEGIN@30 which was called: # once (4µs+0s) by Atom::BEGIN@2 at line 30
use Moose::Meta::Attribute;
# spent 4µs making 1 call to Moose::BEGIN@30
31299µs11.14ms
# spent 1.14ms (197µs+939µs) within Moose::BEGIN@31 which was called: # once (197µs+939µs) by Atom::BEGIN@2 at line 31
use Moose::Meta::Instance;
# spent 1.14ms making 1 call to Moose::BEGIN@31
32
33293µs12.82ms
# spent 2.82ms (817µs+2.00) within Moose::BEGIN@33 which was called: # once (817µs+2.00ms) by Atom::BEGIN@2 at line 33
use Moose::Object;
# spent 2.82ms making 1 call to Moose::BEGIN@33
34
35292µs118.3ms
# spent 18.3ms (3.04+15.3) within Moose::BEGIN@35 which was called: # once (3.04ms+15.3ms) by Atom::BEGIN@2 at line 35
use Moose::Meta::Role;
# spent 18.3ms making 1 call to Moose::BEGIN@35
36292µs12.05ms
# spent 2.05ms (754µs+1.29) within Moose::BEGIN@36 which was called: # once (754µs+1.29ms) by Atom::BEGIN@2 at line 36
use Moose::Meta::Role::Composite;
# spent 2.05ms making 1 call to Moose::BEGIN@36
37293µs11.51ms
# spent 1.51ms (591µs+922µs) within Moose::BEGIN@37 which was called: # once (591µs+922µs) by Atom::BEGIN@2 at line 37
use Moose::Meta::Role::Application;
# spent 1.51ms making 1 call to Moose::BEGIN@37
38297µs12.13ms
# spent 2.13ms (1.39+741µs) within Moose::BEGIN@38 which was called: # once (1.39ms+741µs) by Atom::BEGIN@2 at line 38
use Moose::Meta::Role::Application::RoleSummation;
# spent 2.13ms making 1 call to Moose::BEGIN@38
39296µs14.90ms
# spent 4.90ms (1.10+3.79) within Moose::BEGIN@39 which was called: # once (1.10ms+3.79ms) by Atom::BEGIN@2 at line 39
use Moose::Meta::Role::Application::ToClass;
# spent 4.90ms making 1 call to Moose::BEGIN@39
40295µs11.26ms
# spent 1.26ms (812µs+445µs) within Moose::BEGIN@40 which was called: # once (812µs+445µs) by Atom::BEGIN@2 at line 40
use Moose::Meta::Role::Application::ToRole;
# spent 1.26ms making 1 call to Moose::BEGIN@40
41291µs11.14ms
# spent 1.14ms (361µs+777µs) within Moose::BEGIN@41 which was called: # once (361µs+777µs) by Atom::BEGIN@2 at line 41
use Moose::Meta::Role::Application::ToInstance;
# spent 1.14ms making 1 call to Moose::BEGIN@41
42
43225µs22.45ms
# spent 1.23ms (7µs+1.22) within Moose::BEGIN@43 which was called: # once (7µs+1.22ms) by Atom::BEGIN@2 at line 43
use Moose::Util::TypeConstraints;
# spent 1.23ms making 1 call to Moose::BEGIN@43 # spent 1.22ms making 1 call to Moose::Exporter::__ANON__[Moose/Exporter.pm:519]
44219µs13µs
# spent 3µs within Moose::BEGIN@44 which was called: # once (3µs+0s) by Atom::BEGIN@2 at line 44
use Moose::Util ();
# spent 3µs making 1 call to Moose::BEGIN@44
45
462918µs11.37ms
# spent 1.37ms (315µs+1.06) within Moose::BEGIN@46 which was called: # once (315µs+1.06ms) by Atom::BEGIN@2 at line 46
use Moose::Meta::Attribute::Native;
# spent 1.37ms making 1 call to Moose::BEGIN@46
47
48sub throw_error {
49 # FIXME This
50 shift;
51 goto \&confess
52}
53
54
# spent 1.08ms (14µs+1.07) within Moose::extends which was called 2 times, avg 542µs/call: # once (8µs+543µs) by MooseX::Storage::BEGIN@12 at line 10 of MooseX/Storage/Meta/Attribute/DoNotSerialize.pm # once (5µs+528µs) by Moose::extends at line 409 of Moose/Exporter.pm
sub extends {
551300ns my $meta = shift;
56
571400ns Moose->throw_error("Must derive at least one class") unless @_;
58
59 # this checks the metaclass to make sure
60 # it is correct, sometimes it can get out
61 # of sync when the classes are being built
6214µs1528µs $meta->superclasses(@_);
# spent 528µs making 1 call to Moose::Meta::Class::superclasses
63}
64
65
# spent 514ms (24µs+514) within Moose::with which was called 4 times, avg 129ms/call: # 2 times (10µs+257ms) by Moose::with at line 409 of Moose/Exporter.pm, avg 129ms/call # once (6µs+246ms) by main::BEGIN@5 at line 7 of lib/HackaMol/Atom.pm # once (8µs+10.6ms) by MooseX::Storage::BEGIN@12 at line 11 of MooseX/Storage/Meta/Attribute/DoNotSerialize.pm
sub with {
6629µs2257ms Moose::Util::apply_all_roles(shift, @_);
# spent 257ms making 2 calls to Moose::Util::apply_all_roles, avg 129ms/call
67}
68
69
# spent 137ms (171µs+137) within Moose::has which was called 18 times, avg 7.61ms/call: # 9 times (123µs+68.4ms) by Moose::has at line 409 of Moose/Exporter.pm, avg 7.61ms/call # 2 times (9µs+9.10ms) by main::BEGIN@5 at line 44 of lib/HackaMol/Atom.pm, avg 4.56ms/call # once (6µs+38.2ms) by main::BEGIN@5 at line 63 of lib/HackaMol/Atom.pm # once (4µs+6.37ms) by MooseX::Storage::Basic::BEGIN@10 at line 27 of MooseX/Storage/Engine.pm # once (8µs+6.32ms) by main::BEGIN@5 at line 10 of lib/HackaMol/Atom.pm # once (4µs+2.68ms) by MooseX::Storage::Basic::BEGIN@10 at line 25 of MooseX/Storage/Engine.pm # once (4µs+2.54ms) by main::BEGIN@5 at line 24 of lib/HackaMol/Atom.pm # once (8µs+1.91ms) by MooseX::Storage::Basic::BEGIN@10 at line 19 of MooseX/Storage/Engine.pm # once (4µs+1.42ms) by MooseX::Storage::Basic::BEGIN@10 at line 28 of MooseX/Storage/Engine.pm
sub has {
7091µs my $meta = shift;
7192µs my $name = shift;
72
7394µs Moose->throw_error('Usage: has \'name\' => ( key => value, ... )')
74 if @_ % 2 == 1;
75
76916µs954µs my %context = Moose::Util::_caller_info;
# spent 54µs making 9 calls to Moose::Util::_caller_info, avg 6µs/call
7794µs $context{context} = 'has declaration';
7893µs $context{type} = 'class';
79917µs my %options = ( definition_context => \%context, @_ );
8097µs my $attrs = ( ref($name) eq 'ARRAY' ) ? $name : [ ($name) ];
81949µs968.3ms $meta->add_attribute( $_, %options ) for @$attrs;
# spent 68.3ms making 9 calls to Moose::Meta::Class::add_attribute, avg 7.59ms/call
82}
83
84sub before {
85 Moose::Util::add_method_modifier(shift, 'before', \@_);
86}
87
88sub after {
89 Moose::Util::add_method_modifier(shift, 'after', \@_);
90}
91
92sub around {
93 Moose::Util::add_method_modifier(shift, 'around', \@_);
94}
95
9610sour $SUPER_PACKAGE;
9710sour $SUPER_BODY;
981100nsour @SUPER_ARGS;
99
100sub super {
101 if (@_) {
102 carp 'Arguments passed to super() are ignored';
103 }
104
105 # This check avoids a recursion loop - see
106 # t/bugs/super_recursion.t
107 return if defined $SUPER_PACKAGE && $SUPER_PACKAGE ne caller();
108 return unless $SUPER_BODY; $SUPER_BODY->(@SUPER_ARGS);
109}
110
111sub override {
112 my $meta = shift;
113 my ( $name, $method ) = @_;
114 $meta->add_override_method_modifier( $name => $method );
115}
116
117sub inner {
118 my $pkg = caller();
119 our ( %INNER_BODY, %INNER_ARGS );
120
121 if ( my $body = $INNER_BODY{$pkg} ) {
122 my @args = @{ $INNER_ARGS{$pkg} };
123 local $INNER_ARGS{$pkg};
124 local $INNER_BODY{$pkg};
125 return $body->(@args);
126 } else {
127 return;
128 }
129}
130
131sub augment {
132 my $meta = shift;
133 my ( $name, $method ) = @_;
134 $meta->add_augment_method_modifier( $name => $method );
135}
136
13715µs1655µsMoose::Exporter->setup_import_methods(
# spent 655µs making 1 call to Moose::Exporter::setup_import_methods
138 with_meta => [
139 qw( extends with has before after around override augment )
140 ],
141 as_is => [
142 qw( super inner ),
143 \&Carp::confess,
144 \&Scalar::Util::blessed,
145 ],
146);
147
148
# spent 14.5ms (116µs+14.4) within Moose::init_meta which was called 4 times, avg 3.64ms/call: # 4 times (116µs+14.4ms) by Moose::Exporter::__ANON__[/Users/dde/perl5/perlbrew/perls/5.18.0t/lib/site_perl/5.18.0/darwin-thread-multi-2level/Moose/Exporter.pm:519] at line 474 of Moose/Exporter.pm, avg 3.64ms/call
sub init_meta {
1494200ns shift;
15045µs my %args = @_;
151
15241µs my $class = $args{for_class}
153 or Moose->throw_error("Cannot call init_meta without specifying a for_class");
15441µs my $base_class = $args{base_class} || 'Moose::Object';
1554700ns my $metaclass = $args{metaclass} || 'Moose::Meta::Class';
15641µs my $meta_name = exists $args{meta_name} ? $args{meta_name} : 'meta';
157
158414µs46µs Moose->throw_error("The Metaclass $metaclass must be loaded. (Perhaps you forgot to 'use $metaclass'?)")
# spent 6µs making 4 calls to Class::Load::XS::is_class_loaded, avg 2µs/call
159 unless is_class_loaded($metaclass);
160
161411µs44µs Moose->throw_error("The Metaclass $metaclass must be a subclass of Moose::Meta::Class.")
# spent 4µs making 4 calls to UNIVERSAL::isa, avg 925ns/call
162 unless $metaclass->isa('Moose::Meta::Class');
163
164 # make a subtype for each Moose class
16548µs81.93ms class_type($class)
# spent 1.89ms making 4 calls to Moose::Util::TypeConstraints::class_type, avg 472µs/call # spent 46µs making 4 calls to Moose::Util::TypeConstraints::find_type_constraint, avg 11µs/call
166 unless find_type_constraint($class);
167
1684300ns my $meta;
169
17045µs44µs if ( $meta = Class::MOP::get_metaclass_by_name($class) ) {
# spent 4µs making 4 calls to Class::MOP::get_metaclass_by_name, avg 1µs/call
171 unless ( $meta->isa("Moose::Meta::Class") ) {
172 my $error_message = "$class already has a metaclass, but it does not inherit $metaclass ($meta).";
173 if ( $meta->isa('Moose::Meta::Role') ) {
174 Moose->throw_error($error_message . ' You cannot make the same thing a role and a class. Remove either Moose or Moose::Role.');
175 } else {
176 Moose->throw_error($error_message);
177 }
178 }
179 } else {
180 # no metaclass
181
182 # now we check whether our ancestors have metaclass, and if so borrow that
183417µs49µs my ( undef, @isa ) = @{ mro::get_linear_isa($class) };
# spent 9µs making 4 calls to mro::get_linear_isa, avg 2µs/call
184
18542µs foreach my $ancestor ( @isa ) {
186 my $ancestor_meta = Class::MOP::get_metaclass_by_name($ancestor) || next;
187
188 my $ancestor_meta_class = $ancestor_meta->_real_ref_name;
189
190 # if we have an ancestor metaclass that inherits $metaclass, we use
191 # that. This is like _fix_metaclass_incompatibility, but we can do it now.
192
193 # the case of having an ancestry is not very common, but arises in
194 # e.g. Reaction
195 unless ( $metaclass->isa( $ancestor_meta_class ) ) {
196 if ( $ancestor_meta_class->isa($metaclass) ) {
197 $metaclass = $ancestor_meta_class;
198 }
199 }
200 }
201
20246µs45.19ms $meta = $metaclass->initialize($class);
# spent 5.19ms making 4 calls to Moose::Meta::Class::initialize, avg 1.30ms/call
203 }
204
20542µs if (defined $meta_name) {
206 # also check for inherited non moose 'meta' method?
20744µs474µs my $existing = $meta->get_method($meta_name);
# spent 74µs making 4 calls to Class::MOP::Mixin::HasMethods::get_method, avg 18µs/call
2084100ns if ($existing && !$existing->isa('Class::MOP::Method::Meta')) {
209 Carp::cluck "Moose is overwriting an existing method named "
210 . "$meta_name in class $class with a method "
211 . "which returns the class's metaclass. If this is "
212 . "actually what you want, you should remove the "
213 . "existing method, otherwise, you should rename or "
214 . "disable this generated method using the "
215 . "'-meta_name' option to 'use Moose'.";
216 }
21744µs44.77ms $meta->_add_meta_method($meta_name);
# spent 4.77ms making 4 calls to Class::MOP::Mixin::HasMethods::_add_meta_method, avg 1.19ms/call
218 }
219
220 # make sure they inherit from Moose::Object
22148µs82.44ms $meta->superclasses($base_class)
# spent 2.44ms making 8 calls to Moose::Meta::Class::superclasses, avg 305µs/call
222 unless $meta->superclasses();
223
224411µs return $meta;
225}
226
227# This may be used in some older MooseX extensions.
228sub _get_caller {
229 goto &Moose::Exporter::_get_caller;
230}
231
232## make 'em all immutable
233
2342112µs219µs$_->make_immutable(
# spent 9µs making 21 calls to Class::MOP::Class::is_mutable, avg 433ns/call
235 inline_constructor => 1,
236 constructor_name => "_new",
237 # these are Class::MOP accessors, so they need inlining
238 inline_accessors => 1
2392274µs4270.6ms ) for grep { $_->is_mutable }
# spent 69.1ms making 21 calls to Class::MOP::Class::make_immutable, avg 3.29ms/call # spent 1.36ms making 9 calls to Class::MOP::Object::meta, avg 152µs/call # spent 14µs making 2 calls to Moose::Meta::Role::Method::Required::meta, avg 7µs/call # spent 10µs making 1 call to Moose::Meta::TypeCoercion::Union::meta # spent 8µs making 1 call to Moose::Meta::Role::Application::ToRole::meta # spent 8µs making 1 call to Moose::Meta::Role::meta # spent 7µs making 1 call to Moose::Meta::TypeCoercion::meta # spent 7µs making 1 call to Class::MOP::Mixin::meta # spent 7µs making 1 call to Moose::Meta::Role::Application::ToInstance::meta # spent 6µs making 1 call to Moose::Meta::Role::Application::ToClass::meta # spent 6µs making 1 call to Moose::Meta::Role::Application::meta # spent 6µs making 1 call to Moose::Meta::Role::Application::RoleSummation::meta # spent 6µs making 1 call to Moose::Meta::Role::Composite::meta
240 map { $_->meta }
241 qw(
242 Moose::Meta::Attribute
243 Moose::Meta::Class
244 Moose::Meta::Instance
245
246 Moose::Meta::TypeCoercion
247 Moose::Meta::TypeCoercion::Union
248
249 Moose::Meta::Method
250 Moose::Meta::Method::Constructor
251 Moose::Meta::Method::Destructor
252 Moose::Meta::Method::Overridden
253 Moose::Meta::Method::Augmented
254
255 Moose::Meta::Role
256 Moose::Meta::Role::Attribute
257 Moose::Meta::Role::Method
258 Moose::Meta::Role::Method::Required
259 Moose::Meta::Role::Method::Conflicting
260
261 Moose::Meta::Role::Composite
262
263 Moose::Meta::Role::Application
264 Moose::Meta::Role::Application::RoleSummation
265 Moose::Meta::Role::Application::ToClass
266 Moose::Meta::Role::Application::ToRole
267 Moose::Meta::Role::Application::ToInstance
268);
269
27032µs32µs$_->make_immutable(
# spent 2µs making 3 calls to Class::MOP::Class::is_mutable, avg 533ns/call
271 inline_constructor => 0,
272 constructor_name => undef,
273 # these are Class::MOP accessors, so they need inlining
274 inline_accessors => 1
275416µs610.3ms ) for grep { $_->is_mutable }
# spent 9.94ms making 3 calls to Class::MOP::Class::make_immutable, avg 3.31ms/call # spent 376µs making 2 calls to Class::MOP::Object::meta, avg 188µs/call # spent 9µs making 1 call to Class::MOP::Mixin::meta
276 map { $_->meta }
277 qw(
278 Moose::Meta::Method::Accessor
279 Moose::Meta::Method::Delegation
280 Moose::Meta::Mixin::AttributeCore
281);
282
283114µs1;
284
285# ABSTRACT: A postmodern object system for Perl 5
286
287__END__
 
# spent 196µs within Moose::bootstrap which was called: # once (196µs+0s) by DynaLoader::bootstrap at line 217 of DynaLoader.pm
sub Moose::bootstrap; # xsub