Branch Coverage

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


line true false branch
20 43973 45058 while ((method = hv_iternextsv(map, &method_name, &method_name_len))) {
24 0 43973 if (!SvROK(method)) {
28 43942 31 if (sv_derived_from(method, "Class::MOP::Method")) {
37 43971 2 if (SvROK(stash_slot) && ((CV*)SvRV(body)) == ((CV*)SvRV(stash_slot))) {
43968 3 if (SvROK(stash_slot) && ((CV*)SvRV(body)) == ((CV*)SvRV(stash_slot))) {
61 13 454455 if (!stash) {
62 0 13 mXPUSHs(newRV_noinc((SV *)newHV()));
71 450386 4069 if ( !SvROK(map_ref) || SvTYPE(SvRV(map_ref)) != SVt_PVHV ) {
0 450386 if ( !SvROK(map_ref) || SvTYPE(SvRV(map_ref)) != SVt_PVHV ) {
77 31244 423211 if ( !SvOK(cache_flag) || SvUV(cache_flag) != current ) {
31244 0 if ( !SvOK(cache_flag) || SvUV(cache_flag) != current ) {
0 31244 if ( !SvOK(cache_flag) || SvUV(cache_flag) != current ) {
0 423211 if ( !SvOK(cache_flag) || SvUV(cache_flag) != current ) {
13814 409397 if ( !SvOK(cache_flag) || SvUV(cache_flag) != current ) {
82 0 454455 XPUSHs(map_ref);