File: typemap

package info (click to toggle)
libguestfs 1%3A1.18.1-1%2Bdeb7u3
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 49,156 kB
  • sloc: ansic: 282,408; ml: 22,707; sh: 16,121; perl: 5,946; java: 5,047; cs: 4,329; makefile: 3,191; haskell: 2,564; erlang: 1,510; python: 1,502; xml: 509; ruby: 217; pascal: 142; cpp: 11
file content (23 lines) | stat: -rw-r--r-- 652 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
TYPEMAP
char *		T_PV
const char *	T_PV
guestfs_h *	O_OBJECT_guestfs_h
int64_t	  	T_IV

INPUT
O_OBJECT_guestfs_h
    if (sv_isobject ($arg) && sv_derived_from ($arg, \"Sys::Guestfs\") &&
        SvTYPE ($arg) == SVt_RV &&
        SvTYPE (SvRV ($arg)) == SVt_PVHV) {
        HV *hv = (HV *) SvRV ($arg);
        SV **svp = hv_fetch (hv, \"_g\", 2, 0);
        if (svp == NULL)
            croak (\"${Package}::$func_name(): called on a closed handle\");
        $var = ($type) SvIV (*svp);
    } else {
        croak (\"${Package}::$func_name(): $var is not a blessed HV reference\");
    }

OUTPUT
O_OBJECT_guestfs_h
    sv_setiv ($arg, PTR2IV ($var));