Condition Coverage

blib/lib/Class/Accessor/Grouped.pm
Criterion Covered Total %
condition 15 33 45.4


and 3 conditions

line !l l&&!r l&&r condition
54 10 0 0 NO_CXSA and $found_cxsa
10 0 0 NO_CXSA and $found_cxsa and not $ENV{'CAG_OLD_XS_NOWARN'}
68 0 0 10 ($INC{'Test/Builder.pm'} || $INC{'Test/Builder2.pm'}) && $0 =~ m[ ^ (?: \. \/ )? x?t / .+ \.t $]x
99 0 1 1 $ENV{'CAG_ILLEGAL_ACCESSOR_NAME_OK'} ne 'DO_NOT_WARN' and not $$illegal_accessors_warned{$class}++
468 1 0 4 defined $_[2] and length $_[2]
815 5 0 3 ($current_class->can('get_simple') || 0) == $original_simple_getter and ($current_class->can('set_simple') || 0) == $original_simple_setter

or 2 conditions

line l !l condition
815 8 0 $current_class->can('get_simple') || 0
3 0 $current_class->can('set_simple') || 0
860 8 0 $current_class->can($methname) or 0

or 3 conditions

line l !l&&r !l&&!r condition
48 0 0 10 NO_SUBNAME || (eval { do { &Module::Runtime::require_module('Class::XSAccessor'); $found_cxsa = 'Class::XSAccessor'->VERSION; 'Class::XSAccessor'->VERSION($Class::Accessor::Grouped::__minimum_xsa_version) } } ? 0 : "$@")
814 0 8 0 $$resolved_methods{$current_class}{$methname} ||= do { if (($current_class->can('get_simple') || 0) == $original_simple_getter and ($current_class->can('set_simple') || 0) == $original_simple_setter) { 'Class::XSAccessor'->import('replace', 1, 'class', '__CAG__XSA__BREEDER__', $$maker_templates{$type}{'cxsa_call'}, {$methname, $field}); '__CAG__XSA__BREEDER__'->can($methname); } else { unless ($xsa_autodetected or $$no_xsa_warned_classes{$current_class}++) { warn 'Explicitly requested use of Class::XSAccessor disabled for objects of class ' . "'${current_class}' inheriting from '${class}' due to an overriden get_simple and/or " . "set_simple\n"; } ; do { $USE_XS = 0; my $c = &$gen_accessor($type, $class, 'simple', $field, $methname); $USE_XS = 1; $c }; } }
840 5 0 0 $xsa_autodetected or $$no_xsa_warned_classes{$current_class}++