2 JNINativeMethod * T_JPTROBJ
9 jbooleanArray T_JPTROBJ
19 jdoubleArray T_JPTROBJ
32 jobjectArray T_JPTROBJ
44 $var = ($type)SvPV($arg,tmplen);
45 ${var}_len_ = (jsize) tmplen / sizeof(${subtype});
49 $var = ($type)(void*)SvIV(SvRV($arg));
52 $var = ($type)(*env)->NewStringUTF(env, (char *) SvPV($arg,PL_na))
55 AV* av = (AV*)SvRV($arg);
56 if (SvTYPE(av) == SVt_PVAV) {
57 I32 maxarg = AvFILL(av) + 1;
58 $var = makeargs(aTHX_ sig, AvARRAY(av), maxarg);
61 Perl_croak(aTHX_ \"$var is not an array reference\");
64 Perl_croak(aTHX_ \"$var is not a reference\")
67 $var = ($type)SvIV($arg);
68 sig = (char*)SvPV($arg,PL_na);
71 if (SvROK($arg) && SvOBJECT(SvRV($arg))) {
72 IV tmp = SvIV((SV*)SvRV($arg));
76 Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
80 sv_setpvn((SV*)$arg, (char*)$var, (STRLEN)${var}_len_ * sizeof(${subtype}));
83 static HV* ${var}_stashhv_ = 0;
85 ${var}_stashhv_ = gv_stashpv("java::lang::String", TRUE);
88 sv_setref_iv($arg, Nullch, (IV)(void*)${var}),
93 sv_setiv($arg, (IV)(void*)$var);
94 sv_setpv($arg, (char*)sig);
97 sv_setref_pv($arg, \"${ntype}\", (void*)$var);
106 # unsigned short T_IV
108 # unsigned char T_U_CHAR
110 # unsigned char * T_PV
118 # unsigned long * T_OPAQUEPTR
139 # SysRetLong T_SYSRET
141 # FileHandle T_PTROBJ
143 # InOutStream T_INOUT
147 #############################################################################
152 # if (sv_isa($arg, \"${ntype}\"))
153 # $var = (SV*)SvRV($arg);
155 # Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
157 # if (sv_isa($arg, \"${ntype}\"))
158 # $var = (AV*)SvRV($arg);
160 # Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
162 # if (sv_isa($arg, \"${ntype}\"))
163 # $var = (HV*)SvRV($arg);
165 # Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
167 # if (sv_isa($arg, \"${ntype}\"))
168 # $var = (CV*)SvRV($arg);
170 # Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
172 # $var NOT IMPLEMENTED
174 # $var = ($type)SvIV($arg)
176 # $var = (int)SvIV($arg)
178 # $var = ($type)SvIV($arg)
180 # $var = (int)SvIV($arg)
182 # $var = (unsigned int)SvIV($arg)
184 # $var = (short)SvIV($arg)
186 # $var = (unsigned short)SvIV($arg)
188 # $var = (long)SvIV($arg)
190 # $var = (unsigned long)SvIV($arg)
192 # $var = (char)*SvPV($arg,PL_na)
194 # $var = (unsigned char)SvIV($arg)
196 # $var = (float)SvNV($arg)
198 # $var = ($type)SvNV($arg)
200 # $var = (double)SvNV($arg)
202 # $var = ($type)SvPV($arg,PL_na)
204 # $var = ($type)SvIV($arg)
207 # IV tmp = SvIV((SV*)SvRV($arg));
208 # $var = ($type) tmp;
211 # Perl_croak(aTHX_ \"$var is not a reference\")
213 # if (sv_isa($arg, \"${type}\")) {
214 # IV tmp = SvIV((SV*)SvRV($arg));
215 # $var = *($type *) tmp;
218 # Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
220 # if (sv_isa($arg, \"${type}\")) {
221 # IV tmp = SvIV((SV*)SvRV($arg));
222 # $var = ($type) tmp;
225 # Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
227 # if (sv_derived_from($arg, \"${ntype}\")) {
228 # IV tmp = SvIV((SV*)SvRV($arg));
229 # $var = ($type) tmp;
232 # Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
234 # if (sv_isa($arg, \"${ntype}\")) {
235 # IV tmp = SvIV((SV*)SvRV($arg));
236 # ${type}_desc = (\U${type}_DESC\E*) tmp;
237 # $var = ${type}_desc->ptr;
240 # Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
243 # IV tmp = SvIV((SV*)SvRV($arg));
244 # $var = *($type) tmp;
247 # Perl_croak(aTHX_ \"$var is not a reference\")
249 # if (sv_isa($arg, \"${ntype}\")) {
250 # IV tmp = SvIV((SV*)SvRV($arg));
251 # $var = *($type) tmp;
254 # Perl_croak(aTHX_ \"$var is not of type ${ntype}\")
256 # $var NOT IMPLEMENTED
258 # $var = ($type)SvPV($arg,PL_na)
260 # $var = XS_unpack_$ntype($arg)
262 # $var = XS_unpack_$ntype($arg)
264 # $var = make_perl_cb_$type($arg)
266 # $var = $ntype(items -= $argoff);
267 # U32 ix_$var = $argoff;
272 # $var = IoIFP(sv_2io($arg))
274 # $var = IoIFP(sv_2io($arg))
276 # $var = IoOFP(sv_2io($arg))
277 ##############################################################################
282 # $arg = newRV((SV*)$var);
284 # $arg = newRV((SV*)$var);
286 # $arg = newRV((SV*)$var);
288 # $arg = newRV((SV*)$var);
290 # sv_setiv($arg, (IV)$var);
292 # sv_setiv($arg, (IV)$var);
296 # sv_setpvn($arg, "0 but true", 10);
298 # sv_setiv($arg, (IV)$var);
301 # sv_setiv($arg, (IV)$var);
303 # $arg = boolSV($var);
305 # sv_setiv($arg, (IV)$var);
307 # sv_setiv($arg, (IV)$var);
309 # sv_setiv($arg, (IV)$var);
311 # sv_setiv($arg, (IV)$var);
313 # sv_setiv($arg, (IV)$var);
315 # sv_setpvn($arg, (char *)&$var, 1);
317 # sv_setiv($arg, (IV)$var);
319 # sv_setnv($arg, (double)$var);
321 # sv_setnv($arg, (double)$var);
323 # sv_setnv($arg, (double)$var);
325 # sv_setpv((SV*)$arg, $var);
327 # sv_setiv($arg, (IV)$var);
329 # sv_setref_pv($arg, Nullch, (void*)$var);
331 # sv_setref_pv($arg, \"${ntype}\", (void*)new $ntype($var));
333 # sv_setref_pv($arg, \"${ntype}\", (void*)$var);
335 # sv_setref_pv($arg, \"${ntype}\", (void*)$var);
337 # sv_setref_pv($arg, \"${ntype}\", (void*)new\U${type}_DESC\E($var));
339 # sv_setrefref($arg, \"${ntype}\", XS_service_$ntype,
340 # ($var ? (void*)new $ntype($var) : 0));
344 # sv_setpvn($arg, (char *)&$var, sizeof($var));
346 # sv_setpvn($arg, (char *)$var, sizeof(*$var)), XFree((char *)$var);
348 # XS_pack_$ntype($arg, $var);
350 # XS_pack_$ntype($arg, $var, count_$ntype);
352 # sv_setpvn($arg, $var.chp(), $var.size());
354 # sv_setpvn($arg, $var.context.value().chp(),
355 # $var.context.value().size());
357 # ST_EXTEND($var.size);
358 # for (U32 ix_$var = 0; ix_$var < $var.size; ix_$var++) {
359 # ST(ix_$var) = sv_newmortal();
362 # sp += $var.size - 1;
365 # GV *gv = newGVgen("$Package");
366 # if ( do_open(gv, "<&", 2, FALSE, 0, 0, $var) )
367 # sv_setsv($arg, sv_bless(newRV((SV*)gv), gv_stashpv("$Package",1)));
369 # $arg = &PL_sv_undef;
373 # GV *gv = newGVgen("$Package");
374 # if ( do_open(gv, "+<&", 3, FALSE, 0, 0, $var) )
375 # sv_setsv($arg, sv_bless(newRV((SV*)gv), gv_stashpv("$Package",1)));
377 # $arg = &PL_sv_undef;
381 # GV *gv = newGVgen("$Package");
382 # if ( do_open(gv, "+>&", 3, FALSE, 0, 0, $var) )
383 # sv_setsv($arg, sv_bless(newRV((SV*)gv), gv_stashpv("$Package",1)));
385 # $arg = &PL_sv_undef;