-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathtypemap
81 lines (67 loc) · 1.9 KB
/
typemap
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
UNO * T_UNOREF
UNO_Interface * T_INTERFREF
UNO_Struct * T_STRUCTREF
UNO_Any * T_ANYREF
UNO_Boolean * T_BOOLREF
UNO_Int32 * T_INT32REF
UNO_Int64 * T_INT64REF
#############################################################################
INPUT
T_UNOREF
if (SvROK($arg)) {
IV tmp = SvIV((SV*)SvRV($arg));
$var = INT2PTR($type,tmp);
} else
Perl_croak(aTHX_ \"$var is not a reference\")
T_INTERFREF
if (SvROK($arg)) {
IV tmp = SvIV((SV*)SvRV($arg));
$var = INT2PTR($type,tmp);
} else
Perl_croak(aTHX_ \"$var is not a reference\")
T_ANYREF
if (SvROK($arg)) {
IV tmp = SvIV((SV*)SvRV($arg));
$var = INT2PTR($type,tmp);
} else
Perl_croak(aTHX_ \"$var is not a reference\")
T_STRUCTREF
if (SvROK($arg)) {
IV tmp = SvIV((SV*)SvRV($arg));
$var = INT2PTR($type,tmp);
} else
Perl_croak(aTHX_ \"$var is not a reference\")
T_BOOLREF
if (SvROK($arg)) {
IV tmp = SvIV((SV*)SvRV($arg));
$var = INT2PTR($type,tmp);
} else
Perl_croak(aTHX_ \"$var is not a reference\")
T_INT32REF
if (SvROK($arg)) {
IV tmp = SvIV((SV*)SvRV($arg));
$var = INT2PTR($type,tmp);
} else
Perl_croak(aTHX_ \"$var is not a reference\")
T_INT64REF
if (SvROK($arg)) {
IV tmp = SvIV((SV*)SvRV($arg));
$var = INT2PTR($type,tmp);
} else
Perl_croak(aTHX_ \"$var is not a reference\")
#############################################################################
OUTPUT
T_UNOREF
sv_setref_pv($arg, \"OpenOffice::UNO\", (void*)$var);
T_INTERFREF
sv_setref_pv($arg, \"OpenOffice::UNO::Interface\", (void*)$var);
T_ANYREF
sv_setref_pv($arg, \"OpenOffice::UNO::Any\", (void*)$var);
T_STRUCTREF
sv_setref_pv($arg, \"OpenOffice::UNO::Struct\", (void*)$var);
T_BOOLREF
sv_setref_pv($arg, \"OpenOffice::UNO::Boolean\", (void*)$var);
T_INT32REF
sv_setref_pv($arg, \"OpenOffice::UNO::Int32\", (void*)$var);
T_INT64REF
sv_setref_pv($arg, \"OpenOffice::UNO::Int64\", (void*)$var);