Branch Coverage

ucs4.c
Criterion Covered Total %
branch 86 268 32.0


line true false branch
25 0 4 if( sv_str==&PL_sv_undef )
29 0 4 if( SvGMAGICAL(sv_str) )
33 0 4 if( !SvOK(sv_str) )
42 4 0 SV_Buf_init(&result,len*3/2+4);
0 4 SV_Buf_init(&result,len*3/2+4);
44 0 4 if( len&3 )
49 4 4 for(; src
52 0 4 if( ucs4<0x80 )
54 0 0 SV_Buf_append_ch(&result,(UJ_UINT8)ucs4);
0 0 SV_Buf_append_ch(&result,(UJ_UINT8)ucs4);
0 0 SV_Buf_append_ch(&result,(UJ_UINT8)ucs4);
55 0 4 }else if( ucs4<0x800 )
59 0 0 SV_Buf_append_mem(&result, buf, 2);
0 0 SV_Buf_append_mem(&result, buf, 2);
0 0 SV_Buf_append_mem(&result, buf, 2);
60 0 4 }else if( ucs4 < 0x10000 )
65 0 0 SV_Buf_append_mem(&result, buf, 3);
0 0 SV_Buf_append_mem(&result, buf, 3);
0 0 SV_Buf_append_mem(&result, buf, 3);
66 4 0 }else if( ucs4 <= 0x0010FFFF )
72 0 4 SV_Buf_append_mem(&result, buf, 4);
0 0 SV_Buf_append_mem(&result, buf, 4);
0 0 SV_Buf_append_mem(&result, buf, 4);
75 0 0 SV_Buf_append_ch(&result,'?');
0 0 SV_Buf_append_ch(&result,'?');
0 0 SV_Buf_append_ch(&result,'?');
98 0 41 if( sv_str==&PL_sv_undef )
102 0 41 if( SvGMAGICAL(sv_str) )
106 0 41 if( !SvOK(sv_str) )
115 41 0 SV_Buf_init(&result,len*4);
38 3 SV_Buf_init(&result,len*4);
117 41 41 while( src
120 1 40 if( *src<=0x7f )
122 1 0 SV_Buf_append_ch4(&result,htonl(*src));
1 0 SV_Buf_append_ch4(&result,htonl(*src));
1 0 SV_Buf_append_ch4(&result,htonl(*src));
126 40 0 if( 0xc0<=*src && *src<=0xdf )
1 39 if( 0xc0<=*src && *src<=0xdf )
131 1 0 if( src+1>=src_end ||
132 1 0 src[1]<0x80 || 0xbf
0 1 src[1]<0x80 || 0xbf
134 0 0 SV_Buf_append_ch4(&result,htonl(*src));
0 0 SV_Buf_append_ch4(&result,htonl(*src));
0 0 SV_Buf_append_ch4(&result,htonl(*src));
142 0 1 if( ucs_min<=ucs && ucs<=ucs_max )
0 0 if( ucs_min<=ucs && ucs<=ucs_max )
146 0 1 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
151 39 0 }else if( 0xe0<=*src && *src<=0xef )
1 38 }else if( 0xe0<=*src && *src<=0xef )
156 1 0 if( src+2>=src_end ||
157 1 0 src[1]<0x80 || 0xbf
1 0 src[1]<0x80 || 0xbf
158 1 0 src[2]<0x80 || 0xbf
0 1 src[2]<0x80 || 0xbf
160 0 0 SV_Buf_append_ch4(&result,htonl(*src));
0 0 SV_Buf_append_ch4(&result,htonl(*src));
0 0 SV_Buf_append_ch4(&result,htonl(*src));
168 0 1 if( ucs_min<=ucs && ucs<=ucs_max )
0 0 if( ucs_min<=ucs && ucs<=ucs_max )
172 0 1 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
176 0 0 if( ucs<0xD800 || ucs>0xDBFF )
0 0 if( ucs<0xD800 || ucs>0xDBFF )
180 0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
185 38 0 }else if( 0xf0<=*src && *src<=0xf7 )
36 2 }else if( 0xf0<=*src && *src<=0xf7 )
190 36 0 if( src+3>=src_end ||
191 36 0 src[1]<0x80 || 0xbf
36 0 src[1]<0x80 || 0xbf
192 36 0 src[2]<0x80 || 0xbf
36 0 src[2]<0x80 || 0xbf
193 36 0 src[3]<0x80 || 0xbf
0 36 src[3]<0x80 || 0xbf
195 0 0 SV_Buf_append_ch4(&result,htonl(*src));
0 0 SV_Buf_append_ch4(&result,htonl(*src));
0 0 SV_Buf_append_ch4(&result,htonl(*src));
204 35 1 if( ucs_min<=ucs && ucs<=ucs_max )
35 0 if( ucs_min<=ucs && ucs<=ucs_max )
208 0 1 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
213 2 0 }else if( 0xf8<=*src && *src<=0xfb )
1 1 }else if( 0xf8<=*src && *src<=0xfb )
216 0 1 if( src+utf8_len<=src_end )
220 0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
225 1 0 if( 0x80<=src[1] && src[1]<=0xbf && 0x80<=src[2] && src[2]<=0xbf
1 0 if( 0x80<=src[1] && src[1]<=0xbf && 0x80<=src[2] && src[2]<=0xbf
1 0 if( 0x80<=src[1] && src[1]<=0xbf && 0x80<=src[2] && src[2]<=0xbf
1 0 if( 0x80<=src[1] && src[1]<=0xbf && 0x80<=src[2] && src[2]<=0xbf
226 1 0 && 0x80<=src[3] && src[3]<=0xbf && 0x80<=src[4] && src[4]<=0xbf )
1 0 && 0x80<=src[3] && src[3]<=0xbf && 0x80<=src[4] && src[4]<=0xbf )
1 0 && 0x80<=src[3] && src[3]<=0xbf && 0x80<=src[4] && src[4]<=0xbf )
1 0 && 0x80<=src[3] && src[3]<=0xbf && 0x80<=src[4] && src[4]<=0xbf )
230 0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
237 0 1 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
239 1 0 }else if( 0xfc<=*src && *src<=0xfd )
1 0 }else if( 0xfc<=*src && *src<=0xfd )
242 0 1 if( src+utf8_len<=src_end )
246 0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
251 1 0 if( 0x80<=src[1] && src[1]<=0xbf && 0x80<=src[2] && src[2]<=0xbf
1 0 if( 0x80<=src[1] && src[1]<=0xbf && 0x80<=src[2] && src[2]<=0xbf
1 0 if( 0x80<=src[1] && src[1]<=0xbf && 0x80<=src[2] && src[2]<=0xbf
1 0 if( 0x80<=src[1] && src[1]<=0xbf && 0x80<=src[2] && src[2]<=0xbf
252 1 0 && 0x80<=src[3] && src[3]<=0xbf && 0x80<=src[4] && src[4]<=0xbf
1 0 && 0x80<=src[3] && src[3]<=0xbf && 0x80<=src[4] && src[4]<=0xbf
1 0 && 0x80<=src[3] && src[3]<=0xbf && 0x80<=src[4] && src[4]<=0xbf
1 0 && 0x80<=src[3] && src[3]<=0xbf && 0x80<=src[4] && src[4]<=0xbf
253 1 0 && 0x80<=src[5] && src[5]<=0xbf )
1 0 && 0x80<=src[5] && src[5]<=0xbf )
257 0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
264 0 1 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
0 0 SV_Buf_append_ch4(&result, *(UJ_UINT32*)buf_failed);
268 0 0 SV_Buf_append_ch4(&result,htonl(*src));
0 0 SV_Buf_append_ch4(&result,htonl(*src));
0 0 SV_Buf_append_ch4(&result,htonl(*src));
273 0 35 SV_Buf_append_ch4(&result,htonl(ucs));
0 0 SV_Buf_append_ch4(&result,htonl(ucs));
0 0 SV_Buf_append_ch4(&result,htonl(ucs));