| line | true | false | branch | 
 
| 46 | 0 | 5 | if (colnum == tfields) { | 
 
| 78 | 0 | 24 | if (status != 0) { | 
 
| 88 | 59 | 171 | if (!SvROK(arg)) | 
 
| 90 | 0 | 171 | if (SvPOK(SvRV(arg))) | 
 
| 103 | 0 | 0 | for (i=0; i | 
 
| 115 | 2 | 124 | if (value >= 0) | 
 
| 146 | 0 | 8 | if (arg == &PL_sv_undef) | 
 
| 149 | 0 | 8 | if (is_scalar_ref(arg))                 /* Scalar ref */ | 
 
| 150 | 0 | 0 | return (void*) SvPV(SvRV(arg), len); | 
 
| 157 | 8 | 0 | if (!SvROK(arg) && SvTYPE(arg)!=SVt_PVGV) { | 
 
|  | 8 | 0 | if (!SvROK(arg) && SvTYPE(arg)!=SVt_PVGV) { | 
 
| 160 | 0 | 1 | return (void *) SvPV(arg,PL_na); | 
 
| 162 | 0 | 0 | logscalar = SvIV(arg); | 
 
| 166 | 0 | 0 | sbscalar = SvIV(arg); | 
 
| 170 | 0 | 1 | bscalar = SvUV(arg); | 
 
| 174 | 0 | 0 | usscalar = SvUV(arg); | 
 
| 178 | 0 | 1 | sscalar = SvIV(arg); | 
 
| 182 | 0 | 0 | uiscalar = SvUV(arg); | 
 
| 186 | 0 | 2 | iscalar = SvIV(arg); | 
 
| 190 | 0 | 0 | ulscalar = SvUV(arg); | 
 
| 194 | 0 | 1 | lscalar = SvIV(arg); | 
 
| 198 | 0 | 0 | llscalar = SvIV(arg); | 
 
| 202 | 1 | 0 | fscalar = SvNV(arg); | 
 
| 206 | 1 | 0 | dscalar = SvNV(arg); | 
 
| 211 | 0 | 0 | cmpval[0] = SvNV(arg); | 
 
| 217 | 0 | 0 | dblcmpval[0] = SvNV(arg); | 
 
| 224 | 7 | 0 | return (void *) SvPV(work,PL_na); | 
 
| 228 | 0 | 0 | if (SvTYPE(arg)==SVt_PVGV || (SvROK(arg) && SvTYPE(SvRV(arg))==SVt_PVAV)) { | 
 
|  | 0 | 0 | if (SvTYPE(arg)==SVt_PVGV || (SvROK(arg) && SvTYPE(SvRV(arg))==SVt_PVAV)) { | 
 
|  | 0 | 0 | if (SvTYPE(arg)==SVt_PVGV || (SvROK(arg) && SvTYPE(SvRV(arg))==SVt_PVAV)) { | 
 
| 230 | 0 | 0 | if (SvTYPE(arg)==SVt_PVGV) | 
 
| 231 | 0 | 0 | array = (AV *) GvAVn((GV*) arg); /* glob */ | 
 
| 239 | 0 | 0 | SvGROW(work, size * n); | 
 
|  | 0 | 0 | SvGROW(work, size * n); | 
 
| 240 | 0 | 0 | for (i=0; i | 
 
| 241 | 0 | 0 | if ((work2=av_fetch(array,i,0)) == NULL) | 
 
| 244 | 0 | 0 | if (SvROK(*work2)) | 
 
| 246 | 0 | 0 | stringscalar = SvPV(*work2,PL_na); | 
 
| 252 | 0 | 0 | SvGROW(work, size * n); | 
 
|  | 0 | 0 | SvGROW(work, size * n); | 
 
| 253 | 0 | 0 | for (i=0; i | 
 
| 254 | 0 | 0 | if ((work2=av_fetch(array,i,0)) == NULL) | 
 
| 257 | 0 | 0 | if (SvROK(*work2)) | 
 
| 259 | 0 | 0 | logscalar = (logical) SvIV(*work2); | 
 
| 265 | 0 | 0 | SvGROW(work, size * n); | 
 
|  | 0 | 0 | SvGROW(work, size * n); | 
 
| 266 | 0 | 0 | for (i=0; i | 
 
| 267 | 0 | 0 | if ((work2=av_fetch(array,i,0)) == NULL) | 
 
| 270 | 0 | 0 | if (SvROK(*work2)) | 
 
| 272 | 0 | 0 | sbscalar = (sbyte) SvIV(*work2); | 
 
| 278 | 0 | 0 | SvGROW(work, size * n); | 
 
|  | 0 | 0 | SvGROW(work, size * n); | 
 
| 279 | 0 | 0 | for (i=0; i | 
 
| 280 | 0 | 0 | if ((work2=av_fetch(array,i,0)) == NULL) | 
 
| 283 | 0 | 0 | if (SvROK(*work2)) | 
 
| 285 | 0 | 0 | bscalar = (byte) SvUV(*work2); | 
 
| 291 | 0 | 0 | SvGROW(work, size * n); | 
 
|  | 0 | 0 | SvGROW(work, size * n); | 
 
| 292 | 0 | 0 | for (i=0; i | 
 
| 293 | 0 | 0 | if ((work2=av_fetch(array,i,0)) == NULL) | 
 
| 296 | 0 | 0 | if (SvROK(*work2)) | 
 
| 298 | 0 | 0 | usscalar = SvUV(*work2); | 
 
| 304 | 0 | 0 | SvGROW(work, size * n); | 
 
|  | 0 | 0 | SvGROW(work, size * n); | 
 
| 305 | 0 | 0 | for (i=0; i | 
 
| 306 | 0 | 0 | if ((work2=av_fetch(array,i,0)) == NULL) | 
 
| 309 | 0 | 0 | if (SvROK(*work2)) | 
 
| 311 | 0 | 0 | sscalar = SvIV(*work2); | 
 
| 317 | 0 | 0 | SvGROW(work, size * n); | 
 
|  | 0 | 0 | SvGROW(work, size * n); | 
 
| 318 | 0 | 0 | for (i=0; i | 
 
| 319 | 0 | 0 | if ((work2=av_fetch(array,i,0)) == NULL) | 
 
| 322 | 0 | 0 | if (SvROK(*work2)) | 
 
| 324 | 0 | 0 | uiscalar = SvUV(*work2); | 
 
| 330 | 0 | 0 | SvGROW(work, size * n); | 
 
|  | 0 | 0 | SvGROW(work, size * n); | 
 
| 331 | 0 | 0 | for (i=0; i | 
 
| 332 | 0 | 0 | if ((work2=av_fetch(array,i,0)) == NULL) | 
 
| 335 | 0 | 0 | if (SvROK(*work2)) | 
 
| 337 | 0 | 0 | iscalar = SvIV(*work2); | 
 
| 343 | 0 | 0 | SvGROW(work, size * n); | 
 
|  | 0 | 0 | SvGROW(work, size * n); | 
 
| 344 | 0 | 0 | for (i=0; i | 
 
| 345 | 0 | 0 | if ((work2=av_fetch(array,i,0)) == NULL) | 
 
| 348 | 0 | 0 | if (SvROK(*work2)) | 
 
| 350 | 0 | 0 | ulscalar = SvUV(*work2); | 
 
| 356 | 0 | 0 | SvGROW(work, size * n); | 
 
|  | 0 | 0 | SvGROW(work, size * n); | 
 
| 357 | 0 | 0 | for (i=0; i | 
 
| 358 | 0 | 0 | if ((work2=av_fetch(array,i,0)) == NULL) | 
 
| 361 | 0 | 0 | if (SvROK(*work2)) | 
 
| 363 | 0 | 0 | lscalar = SvIV(*work2); | 
 
| 369 | 0 | 0 | SvGROW(work, size * n); | 
 
|  | 0 | 0 | SvGROW(work, size * n); | 
 
| 370 | 0 | 0 | for (i=0; i | 
 
| 371 | 0 | 0 | if ((work2=av_fetch(array,i,0)) == NULL) | 
 
| 374 | 0 | 0 | if (SvROK(*work2)) | 
 
| 376 | 0 | 0 | llscalar = SvIV(*work2); | 
 
| 384 | 0 | 0 | SvGROW(work, size * n); | 
 
|  | 0 | 0 | SvGROW(work, size * n); | 
 
| 385 | 0 | 0 | for (i=0; i | 
 
| 386 | 0 | 0 | if ((work2=av_fetch(array,i,0)) == NULL) | 
 
| 389 | 0 | 0 | if (SvROK(*work2)) | 
 
| 391 | 0 | 0 | fscalar = SvNV(*work2); | 
 
| 399 | 0 | 0 | SvGROW(work, size); | 
 
|  | 0 | 0 | SvGROW(work, size); | 
 
| 400 | 0 | 0 | for (i=0; i | 
 
| 401 | 0 | 0 | if ((work2=av_fetch(array,i,0)) == NULL) | 
 
| 404 | 0 | 0 | if (SvROK(*work2)) | 
 
| 406 | 0 | 0 | dscalar = SvNV(*work2); | 
 
| 415 | 0 | 0 | return (void *) SvPV(work, PL_na); | 
 
| 426 | 0 | 150 | if (arg == &PL_sv_undef) | 
 
| 429 | 0 | 150 | if (is_scalar_ref(arg)) | 
 
| 430 | 0 | 0 | return (void*) SvPV(SvRV(arg), PL_na); | 
 
| 434 | 150 | 0 | return (void *) SvPV(work, PL_na); | 
 
| 468 | 780 | 0 | if (arg==NULL || (!SvROK(*arg) && SvTYPE(*arg)!=SVt_PVGV)) { | 
 
|  | 638 | 142 | if (arg==NULL || (!SvROK(*arg) && SvTYPE(*arg)!=SVt_PVGV)) { | 
 
|  | 638 | 0 | if (arg==NULL || (!SvROK(*arg) && SvTYPE(*arg)!=SVt_PVGV)) { | 
 
| 471 | 147 | 0 | stringscalar = arg ? SvPV(*arg,PL_na) : ""; | 
 
|  | 147 | 0 | stringscalar = arg ? SvPV(*arg,PL_na) : ""; | 
 
| 475 | 72 | 0 | logscalar = arg ? SvIV(*arg) : 0; | 
 
|  | 72 | 0 | logscalar = arg ? SvIV(*arg) : 0; | 
 
| 479 | 0 | 0 | sbscalar = arg ? SvIV(*arg) : 0; | 
 
|  | 0 | 0 | sbscalar = arg ? SvIV(*arg) : 0; | 
 
| 483 | 205 | 0 | bscalar = arg ? SvUV(*arg) : 0; | 
 
|  | 0 | 205 | bscalar = arg ? SvUV(*arg) : 0; | 
 
| 487 | 0 | 0 | usscalar = arg ? SvUV(*arg) : 0; | 
 
|  | 0 | 0 | usscalar = arg ? SvUV(*arg) : 0; | 
 
| 491 | 32 | 0 | sscalar = arg ? SvIV(*arg) : 0; | 
 
|  | 32 | 0 | sscalar = arg ? SvIV(*arg) : 0; | 
 
| 495 | 0 | 0 | uiscalar = arg ? SvUV(*arg) : 0; | 
 
|  | 0 | 0 | uiscalar = arg ? SvUV(*arg) : 0; | 
 
| 499 | 23 | 0 | iscalar = arg ? SvIV(*arg) : 0; | 
 
|  | 23 | 0 | iscalar = arg ? SvIV(*arg) : 0; | 
 
| 503 | 0 | 0 | ulscalar = arg ? SvUV(*arg) : 0; | 
 
|  | 0 | 0 | ulscalar = arg ? SvUV(*arg) : 0; | 
 
| 507 | 29 | 0 | lscalar = arg ? SvIV(*arg) : 0; | 
 
|  | 29 | 0 | lscalar = arg ? SvIV(*arg) : 0; | 
 
| 511 | 0 | 0 | llscalar = arg ? SvIV(*arg) : 0; | 
 
|  | 0 | 0 | llscalar = arg ? SvIV(*arg) : 0; | 
 
| 516 | 0 | 0 | ullscalar = arg ? SvIV(*arg) : 0; | 
 
|  | 0 | 0 | ullscalar = arg ? SvIV(*arg) : 0; | 
 
| 523 | 65 | 0 | fscalar = arg ? SvNV(*arg) : 0.0; | 
 
|  | 22 | 43 | fscalar = arg ? SvNV(*arg) : 0.0; | 
 
| 529 | 65 | 0 | dscalar = arg ? SvNV(*arg) : 0.0; | 
 
|  | 22 | 43 | dscalar = arg ? SvNV(*arg) : 0.0; | 
 
| 538 | 142 | 0 | else if (SvTYPE(*arg)==SVt_PVGV || (SvROK(*arg) && SvTYPE(SvRV(*arg))==SVt_PVAV)) { | 
 
|  | 142 | 0 | else if (SvTYPE(*arg)==SVt_PVGV || (SvROK(*arg) && SvTYPE(SvRV(*arg))==SVt_PVAV)) { | 
 
|  | 142 | 0 | else if (SvTYPE(*arg)==SVt_PVGV || (SvROK(*arg) && SvTYPE(SvRV(*arg))==SVt_PVAV)) { | 
 
| 541 | 0 | 142 | if (SvTYPE(*arg)==SVt_PVGV) | 
 
| 542 | 0 | 0 | array = GvAVn((GV*)*arg);          /* glob */ | 
 
| 548 | 630 | 142 | for (i=0; i | 
 
| 563 | 0 | 0 | if (! PERLYUNPACKING(perlyunpack) && datatype != TSTRING) { | 
 
|  | 0 | 0 | if (! PERLYUNPACKING(perlyunpack) && datatype != TSTRING) { | 
 
|  | 0 | 0 | if (! PERLYUNPACKING(perlyunpack) && datatype != TSTRING) { | 
 
| 572 | 0 | 0 | for (i=0;i | 
 
| 585 | 0 | 0 | if (! PERLYUNPACKING(perlyunpack) && datatype != TSTRING) { | 
 
|  | 0 | 0 | if (! PERLYUNPACKING(perlyunpack) && datatype != TSTRING) { | 
 
|  | 0 | 0 | if (! PERLYUNPACKING(perlyunpack) && datatype != TSTRING) { | 
 
| 594 | 0 | 0 | for (i=0; i | 
 
| 598 | 0 | 0 | for (j=0; j | 
 
| 618 | 0 | 0 | for (i=0;i | 
 
| 622 | 0 | 0 | if (! PERLYUNPACKING(perlyunpack) && datatype != TSTRING) { | 
 
|  | 0 | 0 | if (! PERLYUNPACKING(perlyunpack) && datatype != TSTRING) { | 
 
|  | 0 | 0 | if (! PERLYUNPACKING(perlyunpack) && datatype != TSTRING) { | 
 
| 636 | 0 | 0 | while (written < nbytes) { | 
 
| 638 | 0 | 0 | for (i=1;i | 
 
| 646 | 0 | 0 | for (i=ndims-2;i>=0; i--) { | 
 
| 647 | 0 | 0 | if (places[i] >= dims[i]) { | 
 
| 649 | 0 | 0 | if (i>0) | 
 
| 666 | 0 | 0 | if (1==ndims) { | 
 
| 673 | 0 | 0 | for (i=0; i | 
 
| 686 | 0 | 0 | if (datatype == TSTRING) | 
 
| 691 | 0 | 0 | SvGROW(arg, data_length); | 
 
|  | 0 | 0 | SvGROW(arg, data_length); | 
 
| 692 | 0 | 0 | memcpy(SvPV(arg,PL_na), var, data_length); | 
 
| 707 | 0 | 12 | if (var == NULL) { | 
 
| 784 | 72 | 0 | if (!PERLYUNPACKING(perlyunpack) && datatype != TSTRING) { | 
 
|  | 0 | 72 | if (!PERLYUNPACKING(perlyunpack) && datatype != TSTRING) { | 
 
|  | 0 | 0 | if (!PERLYUNPACKING(perlyunpack) && datatype != TSTRING) { | 
 
| 801 | 134 | 15 | for (i=0; i | 
 
| 806 | 157 | 7 | for(i=0; i | 
 
| 811 | 0 | 0 | for(i=0; i | 
 
| 816 | 221 | 10 | for(i=0; i | 
 
| 821 | 0 | 0 | for(i=0; i | 
 
| 826 | 122 | 8 | for(i=0; i | 
 
| 831 | 0 | 0 | for(i=0; i | 
 
| 836 | 3 | 1 | for(i=0; i | 
 
| 841 | 0 | 0 | for(i=0; i | 
 
| 846 | 123 | 11 | for(i=0; i | 
 
| 851 | 0 | 0 | for(i=0; i | 
 
| 857 | 0 | 0 | for(i=0; i | 
 
| 863 | 125 | 9 | for(i=0; i | 
 
| 868 | 125 | 9 | for(i=0; i | 
 
| 873 | 21 | 1 | for (i=0; i | 
 
| 882 | 21 | 1 | for (i=0; i | 
 
| 900 | 0 | 72 | if (is_scalar_ref(arg)) | 
 
| 903 | 0 | 72 | if (SvTYPE(arg)==SVt_PVGV) | 
 
| 904 | 0 | 0 | array = GvAVn((GV*)arg); | 
 
| 905 | 29 | 43 | else if (SvROK(arg) && SvTYPE(SvRV(arg))==SVt_PVAV) | 
 
|  | 29 | 0 | else if (SvROK(arg) && SvTYPE(SvRV(arg))==SVt_PVAV) | 
 
| 912 | 605 | 72 | for (i=av_len(array)+1; i | 
 
| 923 | 0 | 0 | if (!ndims || (array=coerce1D(arg,dims[0])) == NULL) | 
 
|  | 0 | 0 | if (!ndims || (array=coerce1D(arg,dims[0])) == NULL) | 
 
| 926 | 0 | 0 | for (j=0; j | 
 
| 942 | 402 | 0 | SvGROW(work,datalen); | 
 
|  | 392 | 10 | SvGROW(work,datalen); | 
 
| 951 | 402 | 0 | if (datalen) | 
 
| 952 | 402 | 0 | *((char *)SvPV(work,PL_na)) = '\0'; | 
 
| 954 | 402 | 0 | return (void *) SvPV(work, PL_na); | 
 
| 1009 | 0 | 0 | for (i=0; i | 
 
| 1019 | 0 | 0 | for (i=0; i |