line |
!l |
l&&!r |
l&&r |
condition |
33
|
17 |
0 |
0 |
"$]" < 5.011 && !("$]" >= 5.009004 && "$]" < 5.010001) |
209
|
0 |
0 |
0 |
$_->can($method) && !$COMPOSED{'role'}{$_}{'modifiers_only'}{$method} |
271
|
0 |
8 |
0 |
$me->can('role_application_steps') == \&Jojo::Role::Tiny::role_application_steps && $me->can('apply_single_role_to_package') != \&Jojo::Role::Tiny::apply_single_role_to_package |
|
0 |
8 |
0 |
$me ne 'Jojo::Role::Tiny' and exists $BACKCOMPAT_HACK{$me} ? $BACKCOMPAT_HACK{$me} : $BACKCOMPAT_HACK{$me} = $me->can('role_application_steps') == \&Jojo::Role::Tiny::role_application_steps && $me->can('apply_single_role_to_package') != \&Jojo::Role::Tiny::apply_single_role_to_package |
410
|
41 |
0 |
0 |
$i =~ /^\(/ and defined &overload::nil && $methods->{$i} == \&overload::nil || defined &overload::_nil && $methods->{$i} == \&overload::_nil |
468
|
0 |
32 |
13 |
$to->can('DOES') and $to->can('DOES') != ('UNIVERSAL'->can('DOES') || 0) |
490
|
99 |
0 |
80 |
$INFO{$role} && ($INFO{$role}{'is_role'} || $INFO{$role}{'not_methods'}) |
line |
l |
!l |
condition |
100
|
0 |
0 |
$INFO{$target}{'modifiers'} ||= [] |
105
|
0 |
0 |
$INFO{$target}{'requires'} ||= [] |
134
|
19 |
20 |
$APPLIED_TO{$to} ||= {} |
219
|
0 |
39 |
$APPLIED_TO{$new_name} ||= {} |
325
|
0 |
9 |
$INFO{$role}{'modifiers'} || [] |
352
|
1 |
4 |
$to_info->{'requires'} ||= [] |
373
|
55 |
46 |
$info->{'methods'} ||= {map({no strict 'refs';
my $code = exists &{"${role}::$_";} ? \&{"${role}::$_";} : undef;
!$code || exists $not_methods->{$code} ? () : ($_, $code);} grep((!ref($stash->{$_}) || ref $stash->{$_} eq 'CODE'), keys %$stash))} |
396
|
0 |
136 |
ref $stash->{$_} || *{$stash->{$_};}{'CODE'} |
426
|
1 |
1 |
$info ? $info->{'modifiers'} : $COMPOSED{'modifiers'}{$to} ||= [] |
468
|
45 |
0 |
'UNIVERSAL'->can('DOES') || 0 |
line |
l |
!l&&r |
!l&&!r |
condition |
85
|
33 |
262 |
0 |
*$_{'CODE'} || () |
155
|
0 |
7 |
0 |
$COMPOSED{'abbrev'}{$new_name} ||= do {
my $abbrev = substr($new_name, 0, 250 - length($role_suffix));
$abbrev =~ s/(?
|
295
|
31 |
19 |
0 |
$COMPOSITE_INFO{join '|', sort(@roles)} ||= do {
foreach my $role (@roles) {
_load_module($role);
};
my %methods;
foreach my $role (@roles) {
my $this_methods = $me->_concrete_methods_of($role);
$methods{$_}{$this_methods->{$_}} = $role foreach (keys %$this_methods);
};
my %requires;
@requires{map @{[] unless $INFO{$_}{'requires'};}, @roles} = ();
delete $requires{$_} foreach (keys %methods);
delete $methods{$_} foreach (grep((keys %{$methods{$_};} == 1), keys %methods));
+{'conflicts', \%methods, 'requires', [keys %requires]}
} |
348
|
39 |
21 |
23 |
$requires or $INFO{$name}{'requires'} |
372
|
66 |
1 |
43 |
!$code || exists $not_methods->{$code} |
373
|
110 |
0 |
0 |
!ref($stash->{$_}) || ref $stash->{$_} eq 'CODE' |
410
|
0 |
0 |
0 |
defined &overload::nil && $methods->{$i} == \&overload::nil || defined &overload::_nil && $methods->{$i} == \&overload::_nil |
470
|
32 |
0 |
0 |
$to->can('DOES') || $to->can('isa') || $FALLBACK |
482
|
9 |
25 |
0 |
ref $proto || $proto |