Condition Coverage

blib/lib/Data/Visitor/Callback.pm
Criterion Covered Total %
condition 23 29 79.3


and 3 conditions

line !l l&&!r l&&r condition
78 153 0 127 ref $data && &refaddr($data)
82 153 126 1 $refaddr and exists $replaced_hash->{$refaddr}
100 153 125 1 $refaddr and !ref($_) || $refaddr ne &refaddr($_)
224 20 67 0 ref $value and &refaddr($value) != &refaddr($new_value)

or 2 conditions

line l !l condition
73 247 33 $self->{'_replaced'} || {}
170 4 0 &reftype($new_data) || ''
196 28 0 eval "\n\t\t\tsub {\n\t\t\t\tmy ( \$self, \$data ) = \@_;\n\t\t\t\tmy \$new_data = \$self->callback_and_reg( " . $reftype . qq[ => \$data );\n\t\t\t\tif ( "] . uc($reftype) . qq[" eq (reftype(\$new_data)||"") ) {\n\t\t\t\t\tmy \$visited = \$self->SUPER::visit_] . $reftype . qq[( \$new_data );\n\n\t\t\t\t\tno warnings "uninitialized";\n\t\t\t\t\tif ( refaddr(\$visited) != refaddr(\$data) ) {\n\t\t\t\t\t\treturn \$self->_register_mapping( \$data, \$visited );\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn \$visited;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\treturn \$self->_register_mapping( \$data, \$self->visit( \$new_data ) );\n\t\t\t\t}\n\t\t\t}\n\t\t] || die($@)
15 1 &reftype($new_data) || ''
34 0 &reftype($new_data) || ''
3 0 &reftype($new_data) || ''
44 1 &reftype($new_data) || ''

or 3 conditions

line l !l&&r !l&&!r condition
100 4 1 121 !ref($_) || $refaddr ne &refaddr($_)