| line |
true |
false |
branch |
|
51
|
0 |
5 |
if ref $class |
|
52
|
0 |
5 |
unless defined $class |
|
54
|
5 |
0 |
if $class =~ /\A \w+ (?: :: \w+ )* \z/msx |
|
62
|
0 |
5 |
if ref $class or not defined $class or not length $class |
|
70
|
0 |
13 |
unless exists $$pack{$part} |
|
73
|
0 |
13 |
if ref $entry ne 'GLOB' |
|
77
|
0 |
5 |
unless %{$pack;} |
|
81
|
0 |
0 |
if exists $$pack{'VERSION'} and defined *{$$pack{'VERSION'};}{'SCALAR'} and defined ${$$pack{'VERSION'};} |
|
83
|
1 |
0 |
if exists $$pack{'ISA'} and defined *{$$pack{'ISA'};}{'ARRAY'} and @{$$pack{'ISA'};} != 0 |
|
88
|
4 |
4 |
if ref $entry ne 'GLOB' or defined *{$entry;}{'CODE'} |
|
99
|
0 |
6 |
unless ref $coderef |
|
102
|
0 |
6 |
unless $cv->isa('B::CV') |
|
105
|
0 |
6 |
unless $gv->isa('B::GV') |
|
114
|
0 |
0 |
unless $cv->isa('B::CV') |
|
117
|
0 |
0 |
unless $gv->isa('B::GV') |
|
133
|
0 |
0 |
if &Scalar::Util::blessed($_[0]) |
|
135
|
0 |
2 |
if (defined $name) |
|
150
|
1 |
4 |
if (&Scalar::Util::blessed($instance)) |
|
152
|
1 |
0 |
unless ($instance->can($method)) |
|
161
|
3 |
0 |
if (defined $name) |
|
175
|
0 |
0 |
unless not $_[0] |
|
178
|
0 |
0 |
if defined $_[0] |
|
209
|
0 |
0 |
if &Scalar::Util::blessed($_[0]) |
|
220
|
0 |
0 |
unless &$check($value) |
|
232
|
0 |
0 |
unless &$check($value) |
|
264
|
0 |
4 |
unless (defined $name) |
|
267
|
0 |
4 |
unless (defined $code) |
|
271
|
0 |
4 |
if (ref $code ne 'CODE') |
|
287
|
0 |
2 |
if (@_) |
|
292
|
2 |
3 |
unless my $meta = Mousse::Util::get_metaclass_by_name($class) |
|
295
|
0 |
3 |
if (exists $$meta{$name}) |
|
309
|
0 |
0 |
unless $_[0]{'method_metaclass'} |
|
310
|
2 |
0 |
unless $_[0]{'attribute_metaclass'} |
|
312
|
2 |
0 |
unless $_[0]{'constructor_class'} |
|
313
|
0 |
0 |
unless $_[0]{'destructor_class'} |
|
325
|
2 |
0 |
@_ == 1 ? : |
|
331
|
0 |
2 |
if ($object->can('BUILD')) |
|
347
|
0 |
0 |
unless &Scalar::Util::blessed($object) and $object->isa($class->name) |
|
389
|
0 |
0 |
if (defined $init_arg) |
|
395
|
0 |
0 |
unless (exists $init_args{$key}) |
|
408
|
0 |
0 |
unless $_[0]{'method_metaclass'} |
|
458
|
2 |
0 |
unless $_[0]{'accessor_metaclass'} |
|
510
|
0 |
2 |
unless defined $name |
|
513
|
2 |
0 |
unless (exists $$args{'init_arg'}) |
|
520
|
0 |
2 |
if (exists $$args{'builder'}) { } |
|
|
0 |
2 |
elsif (exists $$args{'default'}) { } |
|
524
|
0 |
0 |
unless defined $$args{'builder'} |
|
531
|
0 |
0 |
if (ref $$args{'default'} and ref $$args{'default'} ne 'CODE') |
|
538
|
0 |
2 |
if ($$args{'required'} and not $can_be_required) |
|
544
|
2 |
0 |
if (exists $$args{'is'}) |
|
547
|
0 |
2 |
if ($is eq 'ro') { } |
|
|
2 |
0 |
elsif ($is eq 'rw') { } |
|
|
0 |
0 |
elsif ($is eq 'bare') { } |
|
551
|
0 |
2 |
if (exists $$args{'writer'}) { } |
|
562
|
0 |
0 |
unless defined $is |
|
568
|
0 |
2 |
if (exists $$args{'isa'}) |
|
572
|
0 |
2 |
if (exists $$args{'does'}) |
|
573
|
0 |
0 |
if (defined $tc) { } |
|
578
|
0 |
0 |
unless ($does_ok) |
|
587
|
0 |
2 |
if ($$args{'coerce'}) |
|
588
|
0 |
0 |
unless defined $tc |
|
591
|
0 |
0 |
if $$args{'weak_ref'} |
|
595
|
0 |
2 |
if ($$args{'lazy_build'}) |
|
596
|
0 |
0 |
if exists $$args{'default'} |
|
601
|
0 |
0 |
if ($name =~ /^_/) { } |
|
611
|
0 |
2 |
if ($$args{'auto_deref'}) |
|
612
|
0 |
0 |
unless defined $tc |
|
615
|
0 |
0 |
unless $tc->is_a_type_of('ArrayRef') or $tc->is_a_type_of('HashRef') |
|
619
|
0 |
2 |
if (exists $$args{'trigger'}) |
|
620
|
0 |
0 |
unless 'CODE' eq ref $$args{'trigger'} |
|
624
|
0 |
2 |
if ($$args{'lazy'}) |
|
625
|
0 |
0 |
unless exists $$args{'default'} or defined $$args{'builder'} |
|
661
|
0 |
3 |
if ($$parent{'hand_optimized_type_constraint'}) { } |
|
|
0 |
3 |
elsif ($$parent{'constraint'}) { } |
|
671
|
0 |
3 |
if ($$self{'constraint'}) |
|
675
|
0 |
3 |
if ($$self{'type_constraints'}) |
|
679
|
0 |
0 |
if &$c($_[0]) |
|
685
|
3 |
0 |
if (@checks == 0) { } |
|
693
|
0 |
0 |
unless &$c(@args) |
|
712
|
0 |
4 |
if (scalar @_ == 1) { } |
|
713
|
0 |
0 |
unless ref $_[0] eq 'HASH' |
|
732
|
2 |
0 |
unless $self->can('DEMOLISH') |
|
756
|
0 |
0 |
if $e |
|
763
|
0 |
0 |
unless $self->can('BUILD') |
|
838
|
1 |
4 |
if ($args{'also'}) { } |
|
845
|
1 |
1 |
unless my $also = $SPEC{$current}{'also'} |
|
846
|
0 |
1 |
ref $also ? : |
|
860
|
0 |
6 |
unless my $spec = $SPEC{$package} |
|
862
|
5 |
1 |
if (my $as_is = $$spec{'as_is'}) |
|
866
|
6 |
63 |
if (ref $thingy) { } |
|
879
|
63 |
6 |
if ($code_package eq $package) |
|
885
|
3 |
3 |
if (my $init_meta = $package->can('init_meta')) |
|
886
|
3 |
0 |
unless (grep {$_ == $init_meta;} @init_meta_methods) |
|
896
|
1 |
4 |
if (my $default_list = $args{'groups'}{'default'}) { } |
|
909
|
3 |
2 |
if (@init_meta_methods) |
|
923
|
0 |
18 |
ref $args[0] ? : |
|
930
|
0 |
14 |
if ($arg =~ s/^-//) { } |
|
|
11 |
3 |
elsif ($arg =~ s/^://) { } |
|
931
|
0 |
0 |
if ($arg eq 'traits') { } |
|
932
|
0 |
0 |
ref $args[0] ? : |
|
954
|
2 |
16 |
if ($$spec{'INIT_META'}) { } |
|
|
0 |
16 |
elsif (@traits) { } |
|
960
|
0 |
2 |
if (@traits) |
|
962
|
0 |
0 |
ref $_ ? : |
|
969
|
0 |
0 |
Mousse::Util::is_a_metarole($into->meta) ? : |
|
981
|
12 |
6 |
if (@exports) { } |
|
1012
|
0 |
0 |
unless exists $$stash{$keyword} |
|
1016
|
0 |
0 |
if (ref $gv eq 'GLOB' and *{$gv;}{'CODE'} == $$spec{'EXPORTS'}{$keyword}) |
|
1028
|
0 |
18 |
if (ref $arg) { } |
|
1029
|
0 |
0 |
defined $$arg{'into_level'} ? : |
|
|
0 |
0 |
defined $$arg{'into'} ? : |
|
1098
|
0 |
1 |
if ($xs) |
|
1111
|
0 |
0 |
if $@ and $ENV{'MOUSE_XS'} |
|
1114
|
1 |
0 |
unless ($xs) |
|
1122
|
1 |
0 |
if (eval {
do {
require mro
}
}) { } |
|
1137
|
0 |
0 |
if exists $stored{$p} |
|
1157
|
0 |
0 |
unless (defined $type) |
|
1158
|
0 |
0 |
exists $Class::C3::MRO{$classname} ? : |
|
1160
|
0 |
0 |
if ($type eq 'c3') { } |
|
1215
|
0 |
0 |
unless defined $role_name |
|
1228
|
0 |
0 |
$options{'trait'} ? : |
|
1232
|
0 |
0 |
$options{'trait'} ? : |
|
1241
|
0 |
0 |
$loaded_class->can('register_implementation') ? : |
|
1258
|
0 |
0 |
unless my(@classes) = @_ |
|
1265
|
0 |
0 |
if ($e) { } |
|
1287
|
0 |
5 |
unless (is_valid_class_name($class)) |
|
1288
|
0 |
0 |
defined $class ? : |
|
1292
|
5 |
0 |
if is_class_loaded($class) |
|
1308
|
0 |
5 |
if $e |
|
1315
|
0 |
0 |
&Scalar::Util::blessed($_[0]) ? : |
|
1326
|
0 |
0 |
if (ref $role) { } |
|
1335
|
0 |
0 |
if ($i + 1 < $max and ref $_[$i + 1] eq 'HASH') { } |
|
1340
|
0 |
0 |
unless is_a_metarole($role) |
|
1344
|
0 |
0 |
if (scalar @roles == 1) { } |
|
1346
|
0 |
0 |
defined $params ? : |
|
1356
|
0 |
0 |
if @_ == 1 |
|
1360
|
0 |
0 |
if @items == 2 |
|
1395
|
0 |
0 |
if (exists $args{'longmess'} and not $args{'longmess'}) { } |
|
1409
|
0 |
0 |
defined $maxdepth ? : |
|
1427
|
0 |
23 |
@_ == 1 ? : |
|
1429
|
0 |
23 |
unless defined $args{'name'} |
|
1432
|
22 |
1 |
if (defined $args{'parent'}) |
|
1441
|
0 |
22 |
if (defined(my $parent_tp = $args{'parent'}{'type_parameter'})) |
|
1442
|
0 |
0 |
if ($parent_tp != $type_parameter) { } |
|
1443
|
0 |
0 |
unless $type_parameter->is_a_type_of($parent_tp) |
|
1456
|
20 |
3 |
if ($check = delete $args{'optimized'}) { } |
|
|
0 |
3 |
elsif (defined $type_parameter) { } |
|
1468
|
0 |
0 |
if (defined(my $my_check = $args{'constraint'})) { } |
|
1482
|
0 |
23 |
if (defined $check and ref $check ne 'CODE') |
|
1488
|
3 |
20 |
unless $args{'hand_optimized_type_constraint'} |
|
1491
|
0 |
23 |
if ($args{'type_constraints'}) |
|
1493
|
0 |
0 |
if ($type->has_coercion) |
|
1528
|
0 |
0 |
if (exists $$self{'type_constraints'}) |
|
1540
|
0 |
0 |
if (exists $has{$from}) |
|
1544
|
0 |
0 |
unless my $type = Mousse::Util::TypeConstraints::find_or_parse_type_constraint($from) |
|
1559
|
0 |
0 |
if defined $coercion |
|
1561
|
0 |
0 |
if (not $$self{'type_constraints'}) { } |
|
1572
|
0 |
0 |
if ($$pair[0]($thing)) |
|
1583
|
0 |
0 |
if ($type->has_coercion) |
|
1587
|
0 |
0 |
if (@coercions) |
|
1592
|
0 |
0 |
if $self->check($value) |
|
1604
|
0 |
0 |
if $self->check(@_) |
|
1606
|
0 |
0 |
unless my $coercion = $self->_compiled_type_coercion |
|
1613
|
0 |
0 |
if (my $msg = $self->message) { } |
|
1618
|
0 |
0 |
if (not defined $value) { } |
|
|
0 |
0 |
elsif (ref $value and defined &overload::StrVal) { } |
|
1632
|
0 |
0 |
if not ref $other and $other eq '__ANON__' |
|
1636
|
0 |
0 |
if $self->name eq $other_name |
|
1638
|
0 |
0 |
if (exists $$self{'type_constraints'}) |
|
1640
|
0 |
0 |
if $type->name eq $other_name |
|
1645
|
0 |
0 |
if $p->name eq $other_name |
|
1655
|
0 |
0 |
unless (ref $param) |
|
1671
|
0 |
0 |
unless ($self->check($value)) |
|
1799
|
0 |
2 |
if (@_ == 1 and ref $_[0]) { } |
|
|
0 |
2 |
elsif (@_ == 2 and ref $_[1]) { } |
|
|
2 |
0 |
elsif (@_ % 2) { } |
|
1813
|
0 |
2 |
unless (defined $name) |
|
1820
|
0 |
2 |
if ($is_subtype and not $parent) |
|
1825
|
2 |
0 |
if (defined $parent) |
|
1829
|
2 |
0 |
if (defined $name) |
|
1832
|
2 |
0 |
unless ($this) |
|
1834
|
0 |
2 |
unless ($this =~ /\A Mousse \b/msx) |
|
1839
|
0 |
2 |
if (defined $TYPE{$name}) |
|
1841
|
0 |
0 |
if ($this ne $that) |
|
1843
|
0 |
0 |
if ($that eq 'Mousse::Util::TypeConstraints') |
|
1846
|
0 |
0 |
scalar grep({$name eq $_;} list_all_builtin_type_constraints()) ? : |
|
1856
|
0 |
2 |
if exists $args{'where'} |
|
1857
|
2 |
0 |
if exists $args{'optimized_as'} |
|
1861
|
2 |
0 |
if (defined $name) { } |
|
1879
|
0 |
0 |
unless my $type = find_type_constraint($type_name) |
|
1916
|
0 |
0 |
if (ref $_[0] ne 'ARRAY') |
|
1920
|
0 |
0 |
@_ == 1 && ref $_[0] eq 'ARRAY' ? : |
|
1940
|
0 |
0 |
unless (@_ == 1 and ref $_[0] eq 'ARRAY') |
|
1945
|
0 |
0 |
@_ == 1 && ref $_[0] eq 'ARRAY' ? : |
|
1959
|
0 |
0 |
if exists $TYPE{$spec} |
|
1963
|
0 |
0 |
unless (defined $meta) |
|
1964
|
0 |
0 |
$create ? : |
|
1967
|
0 |
0 |
if (Mousse::Util::is_a_metarole($meta)) { } |
|
1984
|
0 |
0 |
if grep {not defined $_;} @_ |
|
1986
|
0 |
0 |
$$_{'type_constraints'} ? : |
|
2003
|
0 |
0 |
if ($$c{'spec'} =~ s/^\[//) |
|
2006
|
0 |
0 |
if ($$c{'spec'} =~ s/^\]//) |
|
2019
|
0 |
0 |
if ($$c{'spec'} =~ s/\A ([\w.:]+) //msx) |
|
2032
|
0 |
0 |
if (defined $type) { } |
|
|
0 |
0 |
elsif (defined $param) { } |
|
2033
|
0 |
0 |
if (defined $param) { } |
|
2053
|
0 |
0 |
if ($$c{'spec'}) |
|
2058
|
0 |
0 |
if (@types) |
|
2068
|
0 |
2 |
if Mousse::Util::is_a_type_constraint($spec) or not defined $spec |
|
2076
|
0 |
0 |
unless Mousse::Util::is_a_type_constraint($constraint) |
|
2083
|
0 |
2 |
if Mousse::Util::is_a_type_constraint($spec) or not defined $spec |
|
2088
|
2 |
0 |
if (defined $tc) |
|
2098
|
0 |
0 |
if ($context{'spec'}) |
|
2108
|
0 |
0 |
defined $tc ? : |
|
2114
|
2 |
0 |
defined $tc ? : |
|
2165
|
0 |
2 |
if @_ % 2 |
|
2168
|
0 |
2 |
ref $name ? : |
|
2208
|
0 |
0 |
if defined $SUPER_PACKAGE and $SUPER_PACKAGE ne caller() |
|
2209
|
0 |
0 |
unless defined $SUPER_BODY |
|
2223
|
0 |
0 |
if (my $body = $INNER_BODY{$pkg}) { } |
|
2244
|
0 |
2 |
unless my $class = $args{'for_class'} |
|
2256
|
2 |
0 |
unless $meta->superclasses |
|
2260
|
2 |
0 |
unless Mousse::Util::TypeConstraints::find_type_constraint($class) |
|
2331
|
0 |
2 |
if (@bad and $class ne 'Mousse::Meta::Attribute') |
|
2342
|
0 |
2 |
if (@bad) |
|
2349
|
0 |
2 |
if ($class ne 'Mousse::Meta::Attribute') |
|
2355
|
0 |
0 |
unless $_[0]->has_reader |
|
2356
|
0 |
0 |
unless $_[0]->has_writer |
|
2358
|
0 |
0 |
unless $_[0]->reader |
|
2359
|
0 |
0 |
unless $_[0]->writer |
|
2376
|
0 |
2 |
if (my $metaclass = delete $$args{'metaclass'}) |
|
2381
|
0 |
2 |
if (my $traits_ref = delete $$args{'traits'}) |
|
2386
|
0 |
0 |
if $class->does($trait) |
|
2391
|
0 |
0 |
if ref $$traits_ref[$i + 1] |
|
2395
|
0 |
0 |
if (@traits) |
|
2411
|
0 |
0 |
unless $type_constraint |
|
2412
|
0 |
0 |
if $type_constraint->check($value) |
|
2436
|
0 |
0 |
if (exists $$args{$illegal} and exists $$self{$illegal}) |
|
2442
|
0 |
0 |
unless (exists $$args{$name}) |
|
2448
|
0 |
0 |
if @traits |
|
2452
|
0 |
0 |
if ($attr =~ /\A _mouse_cache_/msx) |
|
2458
|
0 |
0 |
if ($$args{'lazy_build'}) |
|
2473
|
0 |
0 |
if ($accessor) { } |
|
2521
|
2 |
8 |
if (exists $$attribute{$type}) |
|
2537
|
0 |
2 |
if (exists $$attribute{'handles'}) |
|
2540
|
0 |
0 |
if 'Mousse::Object'->can($handle) |
|
2542
|
0 |
0 |
if ($metaclass->has_method($handle)) |
|
2566
|
0 |
0 |
if ($handle_type eq 'HASH') { } |
|
|
0 |
0 |
elsif ($handle_type eq 'ARRAY') { } |
|
|
0 |
0 |
elsif ($handle_type eq 'Regexp') { } |
|
|
0 |
0 |
elsif ($handle_type eq 'CODE') { } |
|
2575
|
0 |
0 |
Mousse::Util::is_a_metarole($meta) ? : |
|
2591
|
0 |
0 |
if ($$self{'isa'}) { } |
|
|
0 |
0 |
elsif ($$self{'does'}) { } |
|
2597
|
0 |
0 |
unless defined $meta |
|
2641
|
0 |
2 |
if (ref $self ne 'Mousse::Meta::Class') |
|
2666
|
3 |
2 |
if (@_) |
|
2670
|
3 |
0 |
if $self->verify_superclass($super, $meta) |
|
2682
|
1 |
2 |
if (defined $super_meta) { } |
|
2683
|
0 |
1 |
if (Mousse::Util::is_a_metarole($super_meta)) |
|
2693
|
0 |
2 |
unless ($mm and $mm == \&Mousse::Util::meta) |
|
2694
|
0 |
0 |
if ($super->can('new') or $super->can('DESTROY')) |
|
2706
|
0 |
0 |
if ($ENV{'PERL_MOUSE_STRICT'}) |
|
2733
|
0 |
0 |
unless ($self_c->isa($other_c)) |
|
2764
|
0 |
0 |
unless ($common_ancestor) |
|
2779
|
0 |
0 |
unless defined $method_name |
|
2784
|
0 |
0 |
if defined $method |
|
2804
|
0 |
0 |
unless defined $name |
|
2807
|
0 |
0 |
if $attr->name eq $name |
|
2817
|
0 |
2 |
if (&Scalar::Util::blessed($_[0])) { } |
|
2820
|
0 |
0 |
unless $attr->isa('Mousse::Meta::Attribute') |
|
2829
|
0 |
2 |
@_ == 1 ? : |
|
2831
|
0 |
2 |
unless defined $name |
|
2834
|
0 |
2 |
if ($name =~ s/^\+//) { } |
|
2835
|
0 |
0 |
unless my $inherited_attr = $self->find_attribute_by_name($name) |
|
2842
|
0 |
2 |
if @traits |
|
2858
|
0 |
2 |
if (not $$attr{'associated_methods'} and ($$attr{'is'} || '') ne 'bare') |
|
2870
|
2 |
3 |
unless my $meta = Mousse::Util::get_metaclass_by_name($class) |
|
2902
|
0 |
0 |
if ($args{'inline_constructor'}) |
|
2908
|
0 |
0 |
if ($args{'inline_destructor'}) |
|
2932
|
0 |
0 |
unless my $original = $into->can($name) |
|
2937
|
0 |
0 |
unless ($modifier_table) |
|
2941
|
0 |
0 |
if (@before) |
|
2944
|
0 |
0 |
unless (@after) |
|
2948
|
0 |
0 |
if (wantarray) { } |
|
|
0 |
0 |
elsif (defined wantarray) { } |
|
2981
|
0 |
0 |
if ($type eq 'before') { } |
|
|
0 |
0 |
elsif ($type eq 'after') { } |
|
3015
|
0 |
0 |
if ($self->has_method($name)) |
|
3021
|
0 |
0 |
unless my $super_body = $package->can($name) |
|
3035
|
0 |
0 |
if ($self->has_method($name)) |
|
3039
|
0 |
0 |
unless my $super = $self->find_method_by_name($name) |
|
3056
|
0 |
0 |
unless defined $role_name |
|
3059
|
0 |
0 |
if ref $role_name |
|
3062
|
0 |
0 |
unless my $meta = Mousse::Util::get_metaclass_by_name($class) |
|
3067
|
0 |
0 |
if $role->does_role($role_name) |
|
3088
|
0 |
0 |
if @_ % 2 != 0 |
|
3096
|
0 |
0 |
if ($class ne 'Mousse::Meta::Method') |
|
3126
|
0 |
1 |
$ENV{'MOUSE_DEBUG'} ? : |
|
3147
|
0 |
2 |
defined $constraint ? : |
|
3157
|
2 |
0 |
if ($type eq 'rw' or $type eq 'wo') { } |
|
|
0 |
0 |
elsif ($type eq 'ro') { } |
|
3158
|
2 |
0 |
if ($type eq 'rw') { } |
|
3170
|
0 |
2 |
if (defined $constraint) |
|
3171
|
0 |
0 |
if ($should_coerce) |
|
3185
|
2 |
0 |
unless $is_weak or $trigger or $should_deref |
|
3189
|
0 |
2 |
if ($is_weak) |
|
3193
|
0 |
2 |
if ($trigger) |
|
3206
|
0 |
2 |
if ($attribute->is_lazy and $type ne 'wo') |
|
3209
|
0 |
0 |
if (defined $builder) { } |
|
|
0 |
0 |
elsif (ref $default eq 'CODE') { } |
|
3219
|
0 |
0 |
if $type eq 'rw' |
|
3221
|
0 |
0 |
if ($should_coerce) { } |
|
|
0 |
0 |
elsif (defined $constraint) { } |
|
3233
|
0 |
0 |
if ($is_weak) |
|
3239
|
0 |
2 |
if ($should_deref) |
|
3240
|
0 |
0 |
if ($constraint->is_a_type_of('ArrayRef')) { } |
|
|
0 |
0 |
elsif ($constraint->is_a_type_of('HashRef')) { } |
|
3260
|
0 |
2 |
if $e |
|
3307
|
0 |
1 |
$ENV{'MOUSE_DEBUG'} ? : |
|
3346
|
0 |
0 |
if $e |
|
3354
|
0 |
3 |
if $_ |
|
3362
|
0 |
2 |
if ($strict) |
|
3381
|
0 |
3 |
if (defined $type_constraint) |
|
3389
|
0 |
3 |
if (defined $type_constraint) |
|
3395
|
3 |
0 |
if (defined $init_arg) |
|
3400
|
0 |
3 |
if ($need_coercion) |
|
3407
|
0 |
3 |
if ($attr->has_trigger) |
|
3412
|
0 |
3 |
if ($strict) |
|
3419
|
0 |
3 |
if ($attr->has_default or $attr->has_builder) { } |
|
|
0 |
3 |
elsif ($attr->is_required) { } |
|
3420
|
0 |
0 |
unless ($attr->is_lazy) |
|
3425
|
0 |
0 |
if (defined $builder) { } |
|
|
0 |
0 |
elsif (ref $default eq 'CODE') { } |
|
|
0 |
0 |
elsif (defined $default) { } |
|
3438
|
0 |
0 |
if ($need_coercion) |
|
3451
|
3 |
0 |
if defined $init_arg |
|
3453
|
0 |
3 |
if ($is_weak_ref) |
|
3461
|
0 |
2 |
if ($strict) |
|
3466
|
0 |
2 |
if ($metaclass->is_anon_class) |
|
3470
|
0 |
2 |
if ($has_triggers) |
|
3491
|
0 |
2 |
if $e |
|
3499
|
0 |
0 |
if ($class->can('BUILDARGS') and $class->can('BUILDARGS') != \&Mousse::Object::BUILDARGS) |
|
3519
|
0 |
0 |
unless $metaclass->name->can('BUILD') |
|
3523
|
0 |
0 |
if (Mousse::Util::get_code_ref($class, 'BUILD')) |
|
3539
|
0 |
0 |
if (ref $method_to_call eq 'ARRAY') |
|
3548
|
0 |
0 |
unless (defined $can_be_optimized) |
|
3556
|
0 |
0 |
if ($can_be_optimized) { } |
|
3568
|
0 |
0 |
ref $proxy && !&Scalar::Util::blessed($proxy) ? : |
|
|
0 |
0 |
!defined($proxy) ? : |
|
3571
|
0 |
0 |
if ($error) |
|
3589
|
0 |
1 |
$ENV{'MOUSE_DEBUG'} ? : |
|
3596
|
0 |
0 |
if (Mousse::Util::get_code_ref($class, 'DEMOLISH')) |
|
3603
|
0 |
0 |
if ($demolishall) |
|
3640
|
0 |
0 |
if $e |
|
3665
|
0 |
7 |
unless $package_name and not ref $package_name |
|
3675
|
0 |
0 |
if ref $package_name |
|
3677
|
0 |
0 |
unless $package_name and not ref $package_name |
|
3680
|
0 |
0 |
if (exists $METAS{$package_name}) |
|
3689
|
0 |
0 |
unless defined $class_or_instance |
|
3730
|
0 |
0 |
$code && !exists($foreign{Mousse::Util::get_code_package($code)}) ? : |
|
3739
|
0 |
0 |
unless defined $method_name |
|
3748
|
0 |
0 |
unless defined $method_name |
|
3758
|
0 |
0 |
if (my $code = $self->get_method_body($method_name)) |
|
3781
|
0 |
0 |
if (my $type = ref $arg) { } |
|
3782
|
0 |
0 |
if ($type eq 'Regexp') { } |
|
|
0 |
0 |
elsif ($type eq 'ARRAY') { } |
|
3814
|
0 |
0 |
if @_ < 2 |
|
3817
|
0 |
0 |
if (exists $options{'superclasses'}) |
|
3818
|
0 |
0 |
if (Mousse::Util::is_a_metarole($self)) { } |
|
3823
|
0 |
0 |
unless ref $superclasses eq 'ARRAY' |
|
3829
|
0 |
0 |
if (defined $attributes) |
|
3830
|
0 |
0 |
unless ref $attributes eq 'ARRAY' or ref $attributes eq 'HASH' |
|
3834
|
0 |
0 |
if (defined $methods) |
|
3835
|
0 |
0 |
unless ref $methods eq 'HASH' |
|
3839
|
0 |
0 |
if (defined $roles) |
|
3840
|
0 |
0 |
unless ref $roles eq 'ARRAY' |
|
3846
|
0 |
0 |
unless (defined $package_name) |
|
3850
|
0 |
0 |
unless ($mortal) |
|
3852
|
0 |
0 |
unless $superclasses |
|
3853
|
0 |
0 |
unless $roles |
|
3856
|
0 |
0 |
if exists $IMMORTALS{$cache_key} |
|
3866
|
0 |
0 |
if exists $options{'version'} |
|
3867
|
0 |
0 |
if exists $options{'authority'} |
|
3872
|
0 |
0 |
if $mortal |
|
3879
|
0 |
0 |
if defined $superclasses |
|
3887
|
0 |
0 |
if (defined $attributes) |
|
3888
|
0 |
0 |
if (ref $attributes eq 'ARRAY') { } |
|
3901
|
0 |
0 |
if (defined $methods) |
|
3906
|
0 |
0 |
if (defined $roles and not $options{'in_application_to_instance'}) |
|
3910
|
0 |
0 |
if ($cache_key) |
|
3920
|
0 |
0 |
if $Mousse::Util::in_global_destruction |
|
3923
|
0 |
0 |
unless $serial_id |
|
3926
|
0 |
0 |
if (exists $INC{'threads.pm'}) |
|
3929
|
0 |
0 |
if (caller)[2] == 0 |
|
3935
|
0 |
0 |
if exists $$self{'superclasses'} |
|
3970
|
0 |
0 |
if ($class ne 'Mousse::Meta::Role') |
|
4012
|
0 |
0 |
@_ == 1 ? : |
|
4042
|
0 |
0 |
if ($self->has_method($method_name)) |
|
4061
|
0 |
0 |
unless defined $role_name |
|
4064
|
0 |
0 |
if ref $role_name |
|
4067
|
0 |
0 |
if $role_name eq $self->name |
|
4070
|
0 |
0 |
if $role->does_role($role_name) |
|
4083
|
0 |
0 |
if (exists $$args{'exclude'} or exists $$args{'alias'}) |
|
4088
|
0 |
0 |
if ($$args{'alias'} and not exists $$args{-'alias'}) |
|
4091
|
0 |
0 |
if ($$args{'excludes'} and not exists $$args{-'excludes'}) |
|
4097
|
0 |
0 |
if (my $alias = $$args{-'alias'}) |
|
4101
|
0 |
0 |
if (my $excludes = $$args{-'excludes'}) |
|
4103
|
0 |
0 |
if (ref $excludes) { } |
|
4111
|
0 |
0 |
if ($class ne 'Mousse::Meta::Role::Application') |
|
4121
|
0 |
0 |
if (Mousse::Util::is_a_metaclass($consumer)) { } |
|
|
0 |
0 |
elsif (Mousse::Util::is_a_metarole($consumer)) { } |
|
4155
|
0 |
0 |
if (defined $instance) |
|
4167
|
0 |
0 |
if ($$self{'_to'} eq 'role') { } |
|
4175
|
0 |
0 |
if exists $$self{'aliased_methods'}{$method_name} |
|
4176
|
0 |
0 |
if exists $$role{'methods'}{$method_name} |
|
4177
|
0 |
0 |
if $consumer_class_name->can($method_name) |
|
4181
|
0 |
0 |
if (@missing) |
|
4182
|
0 |
0 |
@missing == 1 ? : |
|
4200
|
0 |
0 |
if $method_name eq 'meta' |
|
4204
|
0 |
0 |
unless (exists $$excludes{$method_name}) |
|
4205
|
0 |
0 |
unless ($consumer->has_method($method_name)) |
|
4211
|
0 |
0 |
if (exists $$alias{$method_name}) |
|
4216
|
0 |
0 |
if (defined $dstcode and $dstcode != $code) { } |
|
4232
|
0 |
0 |
if $consumer->has_attribute($attr_name) |
|
4243
|
0 |
0 |
if (my $modifiers = $$role{'override_method_modifiers'}) |
|
4251
|
0 |
0 |
unless my $table = $$role{"${modifier_type}_method_modifiers"} |
|
4259
|
0 |
0 |
if $$consumer{"_applied_$modifier_type"}{join $;, $method_name, $code}++ |
|
4272
|
0 |
0 |
unless ($metaclass_or_role->does_role($r)) |
|
4297
|
0 |
0 |
ref $role_spec eq 'ARRAY' ? : |
|
4312
|
0 |
0 |
if (($$self{'methods'}{$method_name} || 0) == $code) |
|
4317
|
0 |
0 |
if ($method_name eq 'meta') { } |
|
4324
|
0 |
0 |
if (@{$roles;} > 1) |
|
4355
|
0 |
0 |
@_ == 1 ? : |
|
4358
|
0 |
0 |
if ($existing and $existing != $spec) |
|
4370
|
0 |
0 |
if ($existing and $existing != $code) |
|
4393
|
0 |
0 |
if (exists $$role{'conflicting_methods'}) |
|
4399
|
0 |
0 |
if (@conflicting) |
|
4400
|
0 |
0 |
@conflicting == 1 ? : |
|
4412
|
0 |
0 |
@conflicting > 1 ? : |
|
4439
|
0 |
0 |
if ($class ne 'Mousse::Meta::Role::Method') |
|
4495
|
0 |
0 |
if @_ % 2 |
|
4498
|
0 |
0 |
ref $name ? : |
|
4533
|
0 |
0 |
unless defined $Mousse::SUPER_BODY |
|
4554
|
0 |
0 |
unless @_ |
|
4567
|
0 |
0 |
unless my $class = $args{'for_class'} |
|
4579
|
0 |
0 |
unless Mousse::Util::TypeConstraints::find_type_constraint($class) |
|
4600
|
0 |
0 |
&Scalar::Util::blessed($args{'for'}) ? : |
|
4604
|
0 |
0 |
unless ($for) |
|
4608
|
0 |
0 |
if (Mousse::Util::is_a_metarole($for)) { } |
|
4619
|
0 |
0 |
unless keys %{$roles;} |
|
4621
|
0 |
0 |
exists $$roles{$primary} ? : |
|
4644
|
0 |
0 |
if $$args{'class_metaroles'} or $$args{'roles_metaroles'} |
|
4646
|
0 |
0 |
if exists $$args{'for_class'} |
|
4664
|
0 |
0 |
&Scalar::Util::blessed($$args{'for'}) ? : |
|
4669
|
0 |
0 |
if (Mousse::Util::is_a_metaclass($for)) { } |
|
4672
|
0 |
0 |
if exists $$args{'metaclass_roles'} |
|
4678
|
0 |
0 |
if exists $$args{'metaclass_roles'} |
|
4685
|
0 |
0 |
if exists $$args{$old_key} |
|
4706
|
0 |
0 |
if $new_base ne $meta->name |
|
4714
|
0 |
0 |
unless ($superclasses) |
|
4715
|
0 |
0 |
unless $roles |
|
4720
|
0 |
0 |
unless grep {not ref $_ || $meta->does_role($_);} @{$roles;} |
|
4723
|
0 |
0 |
$superclasses ? : |