Guard open.t against Encode not being available
[p5sagit/p5-mst-13.2.git] / cpan / Devel-PPPort / typemap
CommitLineData
adfe19db 1################################################################################
2#
3# typemap -- XS type mappings not present in early perls
4#
5################################################################################
6#
8565c31a 7# $Revision: 9 $
adfe19db 8# $Author: mhx $
8565c31a 9# $Date: 2009/06/12 04:07:19 +0200 $
adfe19db 10#
11################################################################################
12#
51d6c659 13# Version 3.x, Copyright (C) 2004-2009, Marcus Holland-Moritz.
adfe19db 14# Version 2.x, Copyright (C) 2001, Paul Marquess.
15# Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
16#
17# This program is free software; you can redistribute it and/or
18# modify it under the same terms as Perl itself.
19#
20################################################################################
21
22UV T_UV
23NV T_NV
8565c31a 24HV * T_HVREF
adfe19db 25
26INPUT
27T_UV
28 $var = ($type)SvUV($arg)
29T_NV
30 $var = ($type)SvNV($arg)
8565c31a 31T_HVREF
32 if (SvROK($arg) && SvTYPE(SvRV($arg))==SVt_PVHV)
33 $var = (HV*)SvRV($arg);
34 else
35 Perl_croak(aTHX_ \"$var is not a hash reference\")
adfe19db 36
37OUTPUT
38T_UV
39 sv_setuv($arg, (UV)$var);
40T_NV
41 sv_setnv($arg, (NV)$var);