Branch Coverage

IO.xs
Criterion Covered Total %
branch 68 116 58.6


line true false branch
81 0 10 if (!f) {
86 0 10 if (fd < 0) {
91 10 0 if (RETVAL >= 0) {
104 4 6 if (block == 0) {
107 1 5 } else if (block > 0) {
124 5 5 if (newmode != mode) {
126 0 5 if (ret < 0)
160 1 0 if (handle) {
173 0 1 if (PerlIO_getpos(handle, ST(0)) != 0) {
200 2 0 if (handle) {
249 1 0 if (gv)
251 1 0 if (gv && do_open(gv, "+>&", 3, FALSE, 0, 0, fp)) {
1 0 if (gv && do_open(gv, "+>&", 3, FALSE, 0, 0, fp)) {
274 2 2 struct pollfd *fds = nfd ? (struct pollfd *)SvPVX(tmpsv) : (struct pollfd *)tmpsv;
276 2 4 for(i=1, j=0 ; j < nfd ; j++) {
277 0 2 fds[j].fd = SvIV(ST(i));
279 2 0 fds[j].events = (short)SvIV(ST(i));
283 4 0 if((ret = poll(fds,nfd,timeout)) >= 0) {
284 2 4 for(i=1, j=0 ; j < nfd ; j++) {
304 5 5 const int ret = io_blocking(aTHX_ handle, items == 1 ? -1 : blk ? 1 : 0);
305 10 0 if(ret >= 0)
318 8200 0 if (handle) {
322 8200 0 if ((SvIOK_notUV(c) && SvIV(c) < 0) || (SvNOK(c) && SvNV(c) < 0.0))
8200 0 if ((SvIOK_notUV(c) && SvIV(c) < 0) || (SvNOK(c) && SvNV(c) < 0.0))
8200 0 if ((SvIOK_notUV(c) && SvIV(c) < 0) || (SvNOK(c) && SvNV(c) < 0.0))
0 0 if ((SvIOK_notUV(c) && SvIV(c) < 0) || (SvNOK(c) && SvNV(c) < 0.0))
0 8200 if ((SvIOK_notUV(c) && SvIV(c) < 0) || (SvNOK(c) && SvNV(c) < 0.0))
0 0 if ((SvIOK_notUV(c) && SvIV(c) < 0) || (SvNOK(c) && SvNV(c) < 0.0))
0 0 if ((SvIOK_notUV(c) && SvIV(c) < 0) || (SvNOK(c) && SvNV(c) < 0.0))
0 0 if ((SvIOK_notUV(c) && SvIV(c) < 0) || (SvNOK(c) && SvNV(c) < 0.0))
325 0 8200 v = SvUV(c);
326 8072 128 if (UVCHR_IS_INVARIANT(v) || (v <= 0xFF && !PerlIO_isutf8(handle)))
128 7944 if (UVCHR_IS_INVARIANT(v) || (v <= 0xFF && !PerlIO_isutf8(handle)))
0 128 if (UVCHR_IS_INVARIANT(v) || (v <= 0xFF && !PerlIO_isutf8(handle)))
332 0 8072 if (!PerlIO_isutf8(handle))
339 8072 0 if ((Size_t)PerlIO_unread(handle, &buf, len) == len)
363 3 0 if (in)
365 3 0 RETVAL = PerlIO_error(in) || (out && in != out && PerlIO_error(out));
2 1 RETVAL = PerlIO_error(in) || (out && in != out && PerlIO_error(out));
2 0 RETVAL = PerlIO_error(in) || (out && in != out && PerlIO_error(out));
1 1 RETVAL = PerlIO_error(in) || (out && in != out && PerlIO_error(out));
384 1 0 if (handle) {
387 1 0 if (in != out)
410 1 0 if (io) {
428 2 0 if (handle)
445 0 0 if (handle)
459 0 0 if (items != 4)
498 1 1 if (!handle)
500 2 0 if (handle) {
502 2 0 if (fd >= 0) {
558 2 45 if (items != 1)
559 1 1 Perl_croak(aTHX_ "usage: $io->%s()", ix ? "getline" : "getlines");
560 9 36 if (!ix && GIMME_V != G_LIST)
9 0 if (!ix && GIMME_V != G_LIST)
2 7 if (!ix && GIMME_V != G_LIST)
563 36 7 myop.op_flags = (ix ? OPf_WANT_SCALAR : OPf_WANT_LIST ) | OPf_STACKED;
577 0 43 XPUSHs(io);
598 0 0 if (fd < 0) {