-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathtypemap
168 lines (136 loc) · 4.95 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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
TYPEMAP
off_t T_UV
string T_STRING
Configuration * T_CONFIG
Configuration_Item * T_CONFIG_ITEM
Configuration_Item const * T_CONFIG_ITEM
pkgSystem * T_PKG_SYSTEM
pkgVersioningSystem * T_PKG_VER_SYSTEM
pkgCacheFile * T_PKG_CACHE_FILE
pkgCache_PkgIterator_p * T_PKG_CACHE_PKG_ITERATOR
pkgCache_VerIterator_p * T_PKG_CACHE_VER_ITERATOR
pkgCache_DepIterator_p * T_PKG_CACHE_DEP_ITERATOR
pkgCache_PrvIterator_p * T_PKG_CACHE_PRV_ITERATOR
pkgCache_PkgFileIterator_p * T_PKG_CACHE_PKG_FILE_ITERATOR
pkgCache_VerFileIterator_p * T_PKG_CACHE_VER_FILE_ITERATOR
pkgRecords_p * T_PKG_RECORDS
pkgPolicy_p * T_PKG_POLICY
pkgSourceList * T_PKG_SOURCE_LIST
pkgSrcRecords * T_PKG_SRC_RECORDS
OUTPUT
T_STRING
if ($var.length())
sv_setpv($arg, $var.c_str());
else
$arg = &PL_sv_undef;
T_CONFIG
sv_setref_pv($arg, "AptPkg::_config", (void *) $var);
T_CONFIG_ITEM
if ($var)
sv_setref_pv($arg, "AptPkg::Config::_item", (void *) $var);
else
$arg = &PL_sv_undef;
T_PKG_SYSTEM
sv_setref_pv($arg, "AptPkg::System", (void *) $var);
T_PKG_VER_SYSTEM
sv_setref_pv($arg, "AptPkg::Version", (void *) $var);
T_PKG_CACHE_FILE
sv_setref_pv($arg, "AptPkg::_cache", (void *) $var);
T_PKG_CACHE_PKG_ITERATOR
sv_setref_pv($arg, "AptPkg::Cache::_package", (void *) $var);
T_PKG_CACHE_DEP_ITERATOR
sv_setref_pv($arg, "AptPkg::Cache::_depends", (void *) $var);
T_PKG_CACHE_VER_ITERATOR
sv_setref_pv($arg, "AptPkg::Cache::_version", (void *) $var);
T_PKG_CACHE_PRV_ITERATOR
sv_setref_pv($arg, "AptPkg::Cache::_provides", (void *) $var);
T_PKG_CACHE_PKG_FILE_ITERATOR
sv_setref_pv($arg, "AptPkg::Cache::_pkg_file", (void *) $var);
T_PKG_CACHE_VER_FILE_ITERATOR
sv_setref_pv($arg, "AptPkg::Cache::_ver_file", (void *) $var);
T_PKG_RECORDS
sv_setref_pv($arg, "AptPkg::_pkg_records", (void *) $var);
T_PKG_POLICY
sv_setref_pv($arg, "AptPkg::_policy", (void *) $var);
T_PKG_SOURCE_LIST
sv_setref_pv($arg, "AptPkg::_source_list", (void *) $var);
T_PKG_SRC_RECORDS
sv_setref_pv($arg, "AptPkg::_src_records", (void *) $var);
INPUT
T_STRING
$var = (char *) SvPV_nolen($arg);
T_CONFIG
if (SvROK($arg) && sv_derived_from($arg, \"AptPkg::_config\"))
$var = ($type) SvIV((SV *) SvRV($arg));
else
croak(\"$var is not of type AptPkg::_config\");
T_CONFIG_ITEM
if (SvROK($arg) && sv_derived_from($arg, \"AptPkg::Config::_item\"))
$var = ($type) SvIV((SV *) SvRV($arg));
else
croak(\"$var is not of type AptPkg::Config::_item\");
T_PKG_SYSTEM
if (SvROK($arg) && sv_derived_from($arg, \"AptPkg::System\"))
$var = ($type) SvIV((SV *) SvRV($arg));
else
croak(\"$var is not of type AptPkg::System\");
T_PKG_VER_SYSTEM
if (SvROK($arg) && sv_derived_from($arg, \"AptPkg::Version\"))
$var = ($type) SvIV((SV *) SvRV($arg));
else
croak(\"$var is not of type AptPkg::Version\");
T_PKG_CACHE_FILE
if (SvROK($arg) && sv_derived_from($arg, \"AptPkg::_cache\"))
$var = ($type) SvIV((SV *) SvRV($arg));
else
croak(\"$var is not of type AptPkg::_cache\");
T_PKG_CACHE_PKG_ITERATOR
if (SvROK($arg) && sv_derived_from($arg, \"AptPkg::Cache::_package\"))
$var = ($type) SvIV((SV *) SvRV($arg));
else
croak(\"$var is not of type AptPkg::Cache::_package\");
T_PKG_CACHE_DEP_ITERATOR
if (SvROK($arg) && sv_derived_from($arg, \"AptPkg::Cache::_depends\"))
$var = ($type) SvIV((SV *) SvRV($arg));
else
croak(\"$var is not of type AptPkg::Cache::_depends\");
T_PKG_CACHE_VER_ITERATOR
if (SvROK($arg) && sv_derived_from($arg, \"AptPkg::Cache::_version\"))
$var = ($type) SvIV((SV *) SvRV($arg));
else
croak(\"$var is not of type AptPkg::Cache::_version\");
T_PKG_CACHE_PRV_ITERATOR
if (SvROK($arg) && sv_derived_from($arg, \"AptPkg::Cache::_provides\"))
$var = ($type) SvIV((SV *) SvRV($arg));
else
croak(\"$var is not of type AptPkg::Cache::_provides\");
T_PKG_CACHE_PKG_FILE_ITERATOR
if (SvROK($arg) && sv_derived_from($arg, \"AptPkg::Cache::_pkg_file\"))
$var = ($type) SvIV((SV *) SvRV($arg));
else
croak(\"$var is not of type AptPkg::Cache::_pkg_file\");
T_PKG_CACHE_VER_FILE_ITERATOR
if (SvROK($arg) && sv_derived_from($arg, \"AptPkg::Cache::_ver_file\"))
$var = ($type) SvIV((SV *) SvRV($arg));
else
croak(\"$var is not of type AptPkg::Cache::_ver_file\");
T_PKG_RECORDS
if (SvROK($arg) && sv_derived_from($arg, \"AptPkg::_pkg_records\"))
$var = ($type) SvIV((SV *) SvRV($arg));
else
croak(\"$var is not of type AptPkg::_pkg_records\");
T_PKG_POLICY
if (SvROK($arg) && sv_derived_from($arg, \"AptPkg::_policy\"))
$var = ($type) SvIV((SV *) SvRV($arg));
else
croak(\"$var is not of type AptPkg::_policy\");
T_PKG_SOURCE_LIST
if (SvROK($arg) && sv_derived_from($arg, \"AptPkg::_source_list\"))
$var = ($type) SvIV((SV *) SvRV($arg));
else
croak(\"$var is not of type AptPkg::_src_list\");
T_PKG_SRC_RECORDS
if (SvROK($arg) && sv_derived_from($arg, \"AptPkg::_src_records\"))
$var = ($type) SvIV((SV *) SvRV($arg));
else
croak(\"$var is not of type AptPkg::_src_records\");