File Coverage

Item.xs
Criterion Covered Total %
statement 13 15 86.6
branch 10 18 55.5
condition n/a
subroutine n/a
pod n/a
total 23 33 69.7


line stmt bran cond sub pod time code
1             #include "EXTERN.h"
2             #include "perl.h"
3             #include "XSUB.h"
4              
5             MODULE = D64::Disk::Dir::Item PACKAGE = D64::Disk::Dir::Item
6             PROTOTYPES: ENABLE
7              
8             # my $is_int = _is_int($var);
9              
10             SV*
11             _is_int(var)
12             SV *var
13             CODE:
14 93 100         if (SvIOKp(var))
15 81           RETVAL = newSViv(1);
16             else
17 12           RETVAL = newSViv(0);
18             OUTPUT:
19             RETVAL
20              
21             # my $is_str = _is_str($var);
22              
23             SV*
24             _is_str(var)
25             SV *var
26             CODE:
27 36 100         if (SvPOKp(var))
28 28           RETVAL = newSViv(1);
29             else
30 8           RETVAL = newSViv(0);
31             OUTPUT:
32             RETVAL
33              
34             # my $int = _magic_to_int($magic);
35              
36             SV*
37             _magic_to_int(magic)
38             SV *magic
39             CODE:
40 2 100         if (SvIOKp(magic))
41 1 50         RETVAL = newSViv(SvIV(magic));
42             else
43 1           XSRETURN_UNDEF;
44             OUTPUT:
45             RETVAL
46              
47             # my $var_iok = _set_iok($var);
48              
49             SV*
50             _set_iok(var)
51             SV *var
52             CODE:
53 24 50         if (SvIOKp(var) || SvNOKp(var)) {
    0          
54 24           SvIOK_on(var);
55 24 50         if (SvNOK(var))
56 0 0         sv_setiv(var, (IV) SvNV(var));
57 24 50         RETVAL = newSViv(SvIV(var));
58             }
59             else {
60 0           XSRETURN_UNDEF;
61             }
62             OUTPUT:
63             RETVAL