← Index
NYTProf Performance Profile   « block view • line view • sub view »
For bin/pan_genome_post_analysis
  Run on Fri Mar 27 11:43:32 2015
Reported on Fri Mar 27 11:45:39 2015

Filename/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm
StatementsExecuted 838 statements in 5.10ms
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
184111.12ms6.26msMoose::Util::TypeConstraints::Builtins::::__ANON__[:60]Moose::Util::TypeConstraints::Builtins::__ANON__[:60]
12511858µs8.36msMoose::Util::TypeConstraints::Builtins::::__ANON__[:77]Moose::Util::TypeConstraints::Builtins::__ANON__[:77]
111475µs7.98msMoose::Util::TypeConstraints::Builtins::::define_builtinsMoose::Util::TypeConstraints::Builtins::define_builtins
18511326µs326µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:40]Moose::Util::TypeConstraints::Builtins::__ANON__[:40]
3611183µs2.40msMoose::Util::TypeConstraints::Builtins::::__ANON__[:114]Moose::Util::TypeConstraints::Builtins::__ANON__[:114]
4511135µs135µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:52]Moose::Util::TypeConstraints::Builtins::__ANON__[:52]
5511122µs122µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:252]Moose::Util::TypeConstraints::Builtins::__ANON__[:252]
2211112µs1.37msMoose::Util::TypeConstraints::Builtins::::__ANON__[:106]Moose::Util::TypeConstraints::Builtins::__ANON__[:106]
401193µs93µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:217]Moose::Util::TypeConstraints::Builtins::__ANON__[:217]
61147µs368µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:292]Moose::Util::TypeConstraints::Builtins::__ANON__[:292]
21122µs27µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:284]Moose::Util::TypeConstraints::Builtins::__ANON__[:284]
11121µs38µsMoose::Util::TypeConstraints::Builtins::::BEGIN@4Moose::Util::TypeConstraints::Builtins::BEGIN@4
1616120µs20µsMoose::Util::TypeConstraints::Builtins::::whereMoose::Util::TypeConstraints::Builtins::where
1616117µs17µsMoose::Util::TypeConstraints::Builtins::::subtypeMoose::Util::TypeConstraints::Builtins::subtype
1717117µs17µsMoose::Util::TypeConstraints::Builtins::::inline_asMoose::Util::TypeConstraints::Builtins::inline_as
1616116µs16µsMoose::Util::TypeConstraints::Builtins::::asMoose::Util::TypeConstraints::Builtins::as
11112µs26µsMoose::Util::TypeConstraints::Builtins::::BEGIN@8Moose::Util::TypeConstraints::Builtins::BEGIN@8
11111µs37µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:170]Moose::Util::TypeConstraints::Builtins::__ANON__[:170]
11111µs45µsMoose::Util::TypeConstraints::Builtins::::BEGIN@7Moose::Util::TypeConstraints::Builtins::BEGIN@7
11110µs18µsMoose::Util::TypeConstraints::Builtins::::BEGIN@5Moose::Util::TypeConstraints::Builtins::BEGIN@5
11110µs32µsMoose::Util::TypeConstraints::Builtins::::BEGIN@9Moose::Util::TypeConstraints::Builtins::BEGIN@9
2114µs4µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:157]Moose::Util::TypeConstraints::Builtins::__ANON__[:157]
1114µs4µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:146]Moose::Util::TypeConstraints::Builtins::__ANON__[:146]
1113µs3µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:119]Moose::Util::TypeConstraints::Builtins::__ANON__[:119]
1113µs3µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:189]Moose::Util::TypeConstraints::Builtins::__ANON__[:189]
2112µs2µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:22]Moose::Util::TypeConstraints::Builtins::__ANON__[:22]
1112µs2µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:131]Moose::Util::TypeConstraints::Builtins::__ANON__[:131]
1112µs2µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:151]Moose::Util::TypeConstraints::Builtins::__ANON__[:151]
1112µs2µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:126]Moose::Util::TypeConstraints::Builtins::__ANON__[:126]
1112µs2µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:66]Moose::Util::TypeConstraints::Builtins::__ANON__[:66]
1112µs2µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:285]Moose::Util::TypeConstraints::Builtins::__ANON__[:285]
1112µs2µsMoose::Util::TypeConstraints::Builtins::::__ANON__[:33]Moose::Util::TypeConstraints::Builtins::__ANON__[:33]
1111µs1µsMoose::Util::TypeConstraints::Builtins::::typeMoose::Util::TypeConstraints::Builtins::type
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:110]Moose::Util::TypeConstraints::Builtins::__ANON__[:110]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:118]Moose::Util::TypeConstraints::Builtins::__ANON__[:118]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:130]Moose::Util::TypeConstraints::Builtins::__ANON__[:130]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:140]Moose::Util::TypeConstraints::Builtins::__ANON__[:140]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:150]Moose::Util::TypeConstraints::Builtins::__ANON__[:150]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:155]Moose::Util::TypeConstraints::Builtins::__ANON__[:155]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:163]Moose::Util::TypeConstraints::Builtins::__ANON__[:163]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:178]Moose::Util::TypeConstraints::Builtins::__ANON__[:178]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:184]Moose::Util::TypeConstraints::Builtins::__ANON__[:184]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:185]Moose::Util::TypeConstraints::Builtins::__ANON__[:185]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:196]Moose::Util::TypeConstraints::Builtins::__ANON__[:196]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:206]Moose::Util::TypeConstraints::Builtins::__ANON__[:206]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:215]Moose::Util::TypeConstraints::Builtins::__ANON__[:215]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:216]Moose::Util::TypeConstraints::Builtins::__ANON__[:216]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:21]Moose::Util::TypeConstraints::Builtins::__ANON__[:21]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:231]Moose::Util::TypeConstraints::Builtins::__ANON__[:231]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:241]Moose::Util::TypeConstraints::Builtins::__ANON__[:241]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:250]Moose::Util::TypeConstraints::Builtins::__ANON__[:250]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:251]Moose::Util::TypeConstraints::Builtins::__ANON__[:251]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:266]Moose::Util::TypeConstraints::Builtins::__ANON__[:266]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:26]Moose::Util::TypeConstraints::Builtins::__ANON__[:26]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:276]Moose::Util::TypeConstraints::Builtins::__ANON__[:276]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:283]Moose::Util::TypeConstraints::Builtins::__ANON__[:283]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:30]Moose::Util::TypeConstraints::Builtins::__ANON__[:30]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:37]Moose::Util::TypeConstraints::Builtins::__ANON__[:37]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:44]Moose::Util::TypeConstraints::Builtins::__ANON__[:44]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:56]Moose::Util::TypeConstraints::Builtins::__ANON__[:56]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:64]Moose::Util::TypeConstraints::Builtins::__ANON__[:64]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:70]Moose::Util::TypeConstraints::Builtins::__ANON__[:70]
0000s0sMoose::Util::TypeConstraints::Builtins::::__ANON__[:91]Moose::Util::TypeConstraints::Builtins::__ANON__[:91]
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1package Moose::Util::TypeConstraints::Builtins;
21800nsour $VERSION = '2.1403';
3
4227µs256µs
# spent 38µs (21+18) within Moose::Util::TypeConstraints::Builtins::BEGIN@4 which was called: # once (21µs+18µs) by Moose::Meta::Attribute::BEGIN@16 at line 4
use strict;
# spent 38µs making 1 call to Moose::Util::TypeConstraints::Builtins::BEGIN@4 # spent 18µs making 1 call to strict::import
5227µs226µs
# spent 18µs (10+8) within Moose::Util::TypeConstraints::Builtins::BEGIN@5 which was called: # once (10µs+8µs) by Moose::Meta::Attribute::BEGIN@16 at line 5
use warnings;
# spent 18µs making 1 call to Moose::Util::TypeConstraints::Builtins::BEGIN@5 # spent 8µs making 1 call to warnings::import
6
7230µs279µs
# spent 45µs (11+34) within Moose::Util::TypeConstraints::Builtins::BEGIN@7 which was called: # once (11µs+34µs) by Moose::Meta::Attribute::BEGIN@16 at line 7
use Class::Load qw( is_class_loaded );
# spent 45µs making 1 call to Moose::Util::TypeConstraints::Builtins::BEGIN@7 # spent 34µs making 1 call to Exporter::import
8345µs241µs
# spent 26µs (12+14) within Moose::Util::TypeConstraints::Builtins::BEGIN@8 which was called: # once (12µs+14µs) by Moose::Meta::Attribute::BEGIN@16 at line 8
use List::Util 1.33 ();
# spent 26µs making 1 call to Moose::Util::TypeConstraints::Builtins::BEGIN@8 # spent 14µs making 1 call to UNIVERSAL::VERSION
921.90ms255µs
# spent 32µs (10+23) within Moose::Util::TypeConstraints::Builtins::BEGIN@9 which was called: # once (10µs+23µs) by Moose::Meta::Attribute::BEGIN@16 at line 9
use Scalar::Util qw( blessed );
# spent 32µs making 1 call to Moose::Util::TypeConstraints::Builtins::BEGIN@9 # spent 23µs making 1 call to Exporter::import
10
1114µs1442µs
# spent 1µs within Moose::Util::TypeConstraints::Builtins::type which was called: # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 22
sub type { goto &Moose::Util::TypeConstraints::type }
# spent 442µs making 1 call to Moose::Util::TypeConstraints::type
121656µs165.71ms
# spent 17µs within Moose::Util::TypeConstraints::Builtins::subtype which was called 16 times, avg 1µs/call: # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 26 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 33 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 119 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 52 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 170 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 131 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 77 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 106 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 157 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 126 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 40 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 146 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 114 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 60 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 66 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 151
sub subtype { goto &Moose::Util::TypeConstraints::subtype }
# spent 5.71ms making 16 calls to Moose::Util::TypeConstraints::subtype, avg 357µs/call
131653µs1629µs
# spent 16µs within Moose::Util::TypeConstraints::Builtins::as which was called 16 times, avg 1µs/call: # once (2µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 26 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 33 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 131 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 119 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 106 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 146 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 52 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 66 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 151 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 170 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 77 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 157 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 126 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 40 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 114 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 60
sub as { goto &Moose::Util::TypeConstraints::as }
# spent 29µs making 16 calls to Moose::Util::TypeConstraints::as, avg 2µs/call
141672µs1624µs
# spent 20µs within Moose::Util::TypeConstraints::Builtins::where which was called 16 times, avg 1µs/call: # once (2µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 22 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 52 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 33 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 119 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 170 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 131 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 77 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 157 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 126 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 40 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 146 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 114 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 60 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 151 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 106 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 66
sub where (&) { goto &Moose::Util::TypeConstraints::where }
# spent 24µs making 16 calls to Moose::Util::TypeConstraints::where, avg 2µs/call
151760µs1722µs
# spent 17µs within Moose::Util::TypeConstraints::Builtins::inline_as which was called 17 times, avg 976ns/call: # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 26 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 22 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 170 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 119 # once (1µs+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 60 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 131 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 33 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 77 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 106 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 157 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 126 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 40 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 146 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 114 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 52 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 66 # once (900ns+0s) by Moose::Util::TypeConstraints::Builtins::define_builtins at line 151
sub inline_as (&) { goto &Moose::Util::TypeConstraints::inline_as }
# spent 22µs making 17 calls to Moose::Util::TypeConstraints::inline_as, avg 1µs/call
16
17
# spent 7.98ms (475µs+7.50) within Moose::Util::TypeConstraints::Builtins::define_builtins which was called: # once (475µs+7.50ms) by Moose::Meta::Attribute::BEGIN@16 at line 732 of Moose/Util/TypeConstraints.pm
sub define_builtins {
1823198µs my $registry = shift;
19
20 type 'Any' # meta-type including all
21 => where {1}
2229µs35µs
# spent 2µs within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:22] which was called 2 times, avg 1µs/call: # 2 times (2µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm, avg 1µs/call
=> inline_as { '1' };
# spent 2µs making 1 call to Moose::Util::TypeConstraints::Builtins::where # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::inline_as # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::type
23
24 subtype 'Item' # base type
25 => as 'Any'
2634µs => inline_as { '1' };
# spent 2µs making 1 call to Moose::Util::TypeConstraints::Builtins::as # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::inline_as # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::subtype
27
28 subtype 'Undef'
29 => as 'Item'
30 => where { !defined($_) }
31
# spent 2µs within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:33] which was called: # once (2µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm
=> inline_as {
3214µs '!defined(' . $_[1] . ')'
3345µs };
# spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::as # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::where # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::subtype # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::inline_as
34
35 subtype 'Defined'
36 => as 'Item'
37 => where { defined($_) }
38
# spent 326µs within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:40] which was called 185 times, avg 2µs/call: # 185 times (326µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm, avg 2µs/call
=> inline_as {
39185463µs 'defined(' . $_[1] . ')'
4044µs };
# spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::where # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::subtype # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::as # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::inline_as
41
42 subtype 'Bool'
43 => as 'Item'
44 => where { !defined($_) || $_ eq "" || "$_" eq '1' || "$_" eq '0' }
45
# spent 135µs within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:52] which was called 45 times, avg 3µs/call: # 45 times (135µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm, avg 3µs/call
=> inline_as {
4645160µs '('
47 . '!defined(' . $_[1] . ') '
48 . '|| ' . $_[1] . ' eq "" '
49 . '|| (' . $_[1] . '."") eq "1" '
50 . '|| (' . $_[1] . '."") eq "0"'
51 . ')'
5244µs };
# spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::where # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::subtype # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::as # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::inline_as
53
54 subtype 'Value'
55 => as 'Defined'
56 => where { !ref($_) }
57
# spent 6.26ms (1.12+5.13) within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:60] which was called 184 times, avg 34µs/call: # 184 times (1.12ms+5.13ms) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm, avg 34µs/call
=> inline_as {
58184768µs368227µs $_[0]->parent()->_inline_check($_[1])
# spent 227µs making 184 calls to Moose::Meta::TypeConstraint::parent, avg 1µs/call # spent 4.91ms making 184 calls to Moose::Meta::TypeConstraint::_inline_check, avg 27µs/call, recursion: max depth 2, sum of overlapping time 4.91ms
59 . ' && !ref(' . $_[1] . ')'
6044µs };
# spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::where # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::inline_as # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::subtype # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::as
61
62 subtype 'Ref'
63 => as 'Defined'
64 => where { ref($_) }
65 # no need to call parent - ref also checks for definedness
6614µs44µs
# spent 2µs within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:66] which was called: # once (2µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm
=> inline_as { 'ref(' . $_[1] . ')' };
# spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::where # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::as # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::subtype # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::inline_as
67
68 subtype 'Str'
69 => as 'Value'
70 => where { ref(\$_) eq 'SCALAR' || ref(\(my $val = $_)) eq 'SCALAR' }
71
# spent 8.36ms (858µs+7.50) within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:77] which was called 125 times, avg 67µs/call: # 125 times (858µs+7.50ms) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm, avg 67µs/call
=> inline_as {
72125610µs250183µs $_[0]->parent()->_inline_check($_[1])
# spent 183µs making 125 calls to Moose::Meta::TypeConstraint::parent, avg 1µs/call # spent 7.32ms making 125 calls to Moose::Meta::TypeConstraint::_inline_check, avg 59µs/call, recursion: max depth 1, sum of overlapping time 7.32ms
73 . ' && ('
74 . 'ref(\\' . $_[1] . ') eq "SCALAR"'
75 . ' || ref(\\(my $val = ' . $_[1] . ')) eq "SCALAR"'
76 . ')'
7744µs };
# spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::where # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::subtype # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::as # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::inline_as
78
79116µs my $value_type = Moose::Util::TypeConstraints::find_type_constraint('Value');
80 subtype 'Num'
81 => as 'Str'
82 => where {
83 my $val = $_;
84 ($val =~ /\A[+-]?[0-9]+\z/) ||
85 ( $val =~ /\A(?:[+-]?) #matches optional +- in the beginning
86 (?=[0-9]|\.[0-9]) #matches previous +- only if there is something like 3 or .3
87 [0-9]* #matches 0-9 zero or more times
88 (?:\.[0-9]+)? #matches optional .89 or nothing
89 (?:[Ee](?:[+-]?[0-9]+))? #matches E1 or e1 or e-1 or e+1 etc
90 \z/x );
91 }
92
# spent 1.37ms (112µs+1.26) within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:106] which was called 22 times, avg 62µs/call: # 22 times (112µs+1.26ms) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm, avg 62µs/call
=> inline_as {
93 # the long Str tests are redundant here
94 #storing $_[1] in a temporary value,
95 #so that $_[1] won't get converted to a string for regex match
96 #see t/attributes/numeric_defaults.t for more details
972294µs220s 'my $val = '.$_[1].';'.
# spent 1.26ms making 22 calls to Moose::Meta::TypeConstraint::_inline_check, avg 57µs/call, recursion: max depth 1, sum of overlapping time 1.26ms
98 $value_type->_inline_check('$val')
99 .' && ( $val =~ /\A[+-]?[0-9]+\z/ || '
100 . '$val =~ /\A(?:[+-]?) #matches optional +- in the beginning
101 (?=[0-9]|\.[0-9]) #matches previous +- only if there is something like 3 or .3
102 [0-9]* #matches 0-9 zero or more times
103 (?:\.[0-9]+)? #matches optional .89 or nothing
104 (?:[Ee](?:[+-]?[0-9]+))? #matches E1 or e1 or e-1 or e+1 etc
105 \z/x ); '
10644µs };
# spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::where # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::as # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::subtype # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::inline_as
107
108 subtype 'Int'
109 => as 'Num'
110 => where { (my $val = $_) =~ /\A-?[0-9]+\z/ }
111
# spent 2.40ms (183µs+2.21) within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:114] which was called 36 times, avg 67µs/call: # 36 times (183µs+2.21ms) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm, avg 67µs/call
=> inline_as {
11236144µs360s $value_type->_inline_check($_[1])
# spent 2.21ms making 36 calls to Moose::Meta::TypeConstraint::_inline_check, avg 61µs/call, recursion: max depth 1, sum of overlapping time 2.21ms
113 . ' && (my $val = ' . $_[1] . ') =~ /\A-?[0-9]+\z/'
11444µs };
# spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::where # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::subtype # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::as # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::inline_as
115
116 subtype 'CodeRef'
117 => as 'Ref'
118 => where { ref($_) eq 'CODE' }
11915µs44µs
# spent 3µs within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:119] which was called: # once (3µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm
=> inline_as { 'ref(' . $_[1] . ') eq "CODE"' };
# spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::where # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::subtype # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::as # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::inline_as
120
121 subtype 'RegexpRef'
122 => as 'Ref'
123 => where( \&_RegexpRef )
124
# spent 2µs within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:126] which was called: # once (2µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm
=> inline_as {
12514µs 'Moose::Util::TypeConstraints::Builtins::_RegexpRef(' . $_[1] . ')'
12644µs };
# spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::where # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::subtype # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::as # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::inline_as
127
128 subtype 'GlobRef'
129 => as 'Ref'
130 => where { ref($_) eq 'GLOB' }
13114µs44µs
# spent 2µs within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:131] which was called: # once (2µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm
=> inline_as { 'ref(' . $_[1] . ') eq "GLOB"' };
# spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::where # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::as # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::subtype # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::inline_as
132
133 # NOTE: scalar filehandles are GLOB refs, but a GLOB ref is not always a
134 # filehandle
135 subtype 'FileHandle'
136 => as 'Ref'
137 => where {
138 (ref($_) eq "GLOB" && Scalar::Util::openhandle($_))
139 || (blessed($_) && $_->isa("IO::Handle"));
140 }
141
# spent 4µs within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:146] which was called: # once (4µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm
=> inline_as {
14216µs '(ref(' . $_[1] . ') eq "GLOB" '
143 . '&& Scalar::Util::openhandle(' . $_[1] . ')) '
144 . '|| (Scalar::Util::blessed(' . $_[1] . ') '
145 . '&& ' . $_[1] . '->isa("IO::Handle"))'
14644µs };
# spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::where # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::as # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::subtype # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::inline_as
147
148 subtype 'Object'
149 => as 'Ref'
150 => where { blessed($_) }
15114µs44µs
# spent 2µs within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:151] which was called: # once (2µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm
=> inline_as { 'Scalar::Util::blessed(' . $_[1] . ')' };
# spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::where # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::as # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::subtype # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::inline_as
152
153 subtype 'ClassName'
154 => as 'Str'
155 => where { is_class_loaded($_) }
156 # the long Str tests are redundant here
15727µs44µs
# spent 4µs within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:157] which was called 2 times, avg 2µs/call: # 2 times (4µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm, avg 2µs/call
=> inline_as { 'Class::Load::is_class_loaded(' . $_[1] . ')' };
# spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::where # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::subtype # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::as # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::inline_as
158
159 subtype 'RoleName'
160 => as 'ClassName'
161 => where {
162 (Class::MOP::class_of($_) || return)->isa('Moose::Meta::Role');
163 }
164
# spent 37µs (11+26) within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:170] which was called: # once (11µs+26µs) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm
=> inline_as {
16517µs21µs $_[0]->parent()->_inline_check($_[1])
# spent 1µs making 1 call to Moose::Meta::TypeConstraint::parent # spent 25µs making 1 call to Moose::Meta::TypeConstraint::_inline_check, recursion: max depth 1, sum of overlapping time 25µs
166 . ' && do {'
167 . 'my $meta = Class::MOP::class_of(' . $_[1] . ');'
168 . '$meta && $meta->isa("Moose::Meta::Role");'
169 . '}'
17044µs };
# spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::where # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::inline_as # spent 1µs making 1 call to Moose::Util::TypeConstraints::Builtins::subtype # spent 900ns making 1 call to Moose::Util::TypeConstraints::Builtins::as
171
172 $registry->add_type_constraint(
173 Moose::Meta::TypeConstraint::Parameterizable->new(
174 name => 'ScalarRef',
175 package_defined_in => __PACKAGE__,
176 parent =>
177 Moose::Util::TypeConstraints::find_type_constraint('Ref'),
178 constraint => sub { ref($_) eq 'SCALAR' || ref($_) eq 'REF' },
179 constraint_generator => sub {
180 my $type_parameter = shift;
181 my $check = $type_parameter->_compiled_type_constraint;
182 return sub {
183 return $check->( ${$_} );
184 };
185 },
186
# spent 3µs within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:189] which was called: # once (3µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm
inlined => sub {
18715µs 'ref(' . $_[1] . ') eq "SCALAR" '
188 . '|| ref(' . $_[1] . ') eq "REF"'
189 },
190 inline_generator => sub {
191 my $self = shift;
192 my $type_parameter = shift;
193 my $val = shift;
194 '(ref(' . $val . ') eq "SCALAR" || ref(' . $val . ') eq "REF") '
195 . '&& ' . $type_parameter->_inline_check('${(' . $val . ')}')
196 },
197 )
1983416µs );
# spent 379µs making 1 call to Moose::Meta::TypeConstraint::new # spent 21µs making 1 call to Moose::Meta::TypeConstraint::Registry::add_type_constraint # spent 16µs making 1 call to Moose::Util::TypeConstraints::find_type_constraint
199
200 $registry->add_type_constraint(
201 Moose::Meta::TypeConstraint::Parameterizable->new(
202 name => 'ArrayRef',
203 package_defined_in => __PACKAGE__,
204 parent =>
205 Moose::Util::TypeConstraints::find_type_constraint('Ref'),
206 constraint => sub { ref($_) eq 'ARRAY' },
207 constraint_generator => sub {
208 my $type_parameter = shift;
209 my $check = $type_parameter->_compiled_type_constraint;
210 return sub {
211 foreach my $x (@$_) {
212 ( $check->($x) ) || return;
213 }
214 1;
215 }
216 },
21740117µs
# spent 93µs within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:217] which was called 40 times, avg 2µs/call: # 40 times (93µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm, avg 2µs/call
inlined => sub { 'ref(' . $_[1] . ') eq "ARRAY"' },
218 inline_generator => sub {
219 my $self = shift;
220 my $type_parameter = shift;
221 my $val = shift;
222
223 'do {'
224 . 'my $check = ' . $val . ';'
225 . 'ref($check) eq "ARRAY" '
226 . '&& &List::Util::all('
227 . 'sub { ' . $type_parameter->_inline_check('$_') . ' }, '
228 . '@{$check}'
229 . ')'
230 . '}';
231 },
232 )
2333242µs );
# spent 210µs making 1 call to Moose::Meta::TypeConstraint::new # spent 16µs making 1 call to Moose::Meta::TypeConstraint::Registry::add_type_constraint # spent 16µs making 1 call to Moose::Util::TypeConstraints::find_type_constraint
234
235 $registry->add_type_constraint(
236 Moose::Meta::TypeConstraint::Parameterizable->new(
237 name => 'HashRef',
238 package_defined_in => __PACKAGE__,
239 parent =>
240 Moose::Util::TypeConstraints::find_type_constraint('Ref'),
241 constraint => sub { ref($_) eq 'HASH' },
242 constraint_generator => sub {
243 my $type_parameter = shift;
244 my $check = $type_parameter->_compiled_type_constraint;
245 return sub {
246 foreach my $x ( values %$_ ) {
247 ( $check->($x) ) || return;
248 }
249 1;
250 }
251 },
25255153µs
# spent 122µs within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:252] which was called 55 times, avg 2µs/call: # 55 times (122µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm, avg 2µs/call
inlined => sub { 'ref(' . $_[1] . ') eq "HASH"' },
253 inline_generator => sub {
254 my $self = shift;
255 my $type_parameter = shift;
256 my $val = shift;
257
258 'do {'
259 . 'my $check = ' . $val . ';'
260 . 'ref($check) eq "HASH" '
261 . '&& &List::Util::all('
262 . 'sub { ' . $type_parameter->_inline_check('$_') . ' }, '
263 . 'values %{$check}'
264 . ')'
265 . '}';
266 },
267 )
2683241µs );
# spent 209µs making 1 call to Moose::Meta::TypeConstraint::new # spent 16µs making 1 call to Moose::Meta::TypeConstraint::Registry::add_type_constraint # spent 15µs making 1 call to Moose::Util::TypeConstraints::find_type_constraint
269
270 $registry->add_type_constraint(
271 Moose::Meta::TypeConstraint::Parameterizable->new(
272 name => 'Maybe',
273 package_defined_in => __PACKAGE__,
274 parent =>
275 Moose::Util::TypeConstraints::find_type_constraint('Item'),
276 constraint => sub {1},
277
# spent 27µs (22+5) within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:284] which was called 2 times, avg 13µs/call: # 2 times (22µs+5µs) by Moose::Meta::TypeConstraint::Parameterizable::generate_constraint_for at line 33 of Moose/Meta/TypeConstraint/Parameterizable.pm, avg 13µs/call
constraint_generator => sub {
278617µs my $type_parameter = shift;
27925µs my $check = $type_parameter->_compiled_type_constraint;
# spent 5µs making 2 calls to Moose::Meta::TypeConstraint::_compiled_type_constraint, avg 2µs/call
280 return sub {
281 return 1 if not( defined($_) ) || $check->($_);
282 return;
283 }
284 },
28514µs
# spent 2µs within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:285] which was called: # once (2µs+0s) by Moose::Meta::TypeConstraint::_inline_check at line 195 of Moose/Meta/TypeConstraint.pm
inlined => sub {'1'},
286
# spent 368µs (47+320) within Moose::Util::TypeConstraints::Builtins::__ANON__[/Users/ap13/perl5/lib/perl5/darwin-2level/Moose/Util/TypeConstraints/Builtins.pm:292] which was called 6 times, avg 61µs/call: # 6 times (47µs+320µs) by Moose::Meta::TypeConstraint::Parameterizable::generate_inline_for at line 62 of Moose/Meta/TypeConstraint/Parameterizable.pm, avg 61µs/call
inline_generator => sub {
2872439µs my $self = shift;
288 my $type_parameter = shift;
289 my $val = shift;
2906320µs '!defined(' . $val . ') '
# spent 320µs making 6 calls to Moose::Meta::TypeConstraint::_inline_check, avg 53µs/call
291 . '|| (' . $type_parameter->_inline_check($val) . ')'
292 },
293 )
2943295µs );
# spent 262µs making 1 call to Moose::Meta::TypeConstraint::new # spent 17µs making 1 call to Moose::Meta::TypeConstraint::Registry::add_type_constraint # spent 16µs making 1 call to Moose::Util::TypeConstraints::find_type_constraint
295}
296
29714µs1;
298
299__END__