Branch Coverage

xs/HasMethods.xs
Criterion Covered Total %
branch 23 30 76.6


line true false branch
20 43332 43955 while ((method = hv_iternextsv(map, &method_name, &method_name_len))) {
24 0 43332 if (!SvROK(method)) {
28 43301 31 if (sv_derived_from(method, "Class::MOP::Method")) {
37 43330 2 if (SvROK(stash_slot) && ((CV*)SvRV(body)) == ((CV*)SvRV(stash_slot))) {
43327 3 if (SvROK(stash_slot) && ((CV*)SvRV(body)) == ((CV*)SvRV(stash_slot))) {
61 13 444297 if (!stash) {
62 0 13 mXPUSHs(newRV_noinc((SV *)newHV()));
71 440296 4001 if ( !SvROK(map_ref) || SvTYPE(SvRV(map_ref)) != SVt_PVHV ) {
0 440296 if ( !SvROK(map_ref) || SvTYPE(SvRV(map_ref)) != SVt_PVHV ) {
77 30462 413835 if ( !SvOK(cache_flag) || SvUV(cache_flag) != current ) {
30462 0 if ( !SvOK(cache_flag) || SvUV(cache_flag) != current ) {
0 30462 if ( !SvOK(cache_flag) || SvUV(cache_flag) != current ) {
0 413835 if ( !SvOK(cache_flag) || SvUV(cache_flag) != current ) {
13493 400342 if ( !SvOK(cache_flag) || SvUV(cache_flag) != current ) {
82 0 444297 XPUSHs(map_ref);