1################################################################################
2#
3#  typemap -- XS type mappings not present in early perls
4#
5################################################################################
6#
7#  Version 3.x, Copyright (C) 2004-2013, Marcus Holland-Moritz.
8#  Version 2.x, Copyright (C) 2001, Paul Marquess.
9#  Version 1.x, Copyright (C) 1999, Kenneth Albanowski.
10#
11#  This program is free software; you can redistribute it and/or
12#  modify it under the same terms as Perl itself.
13#
14################################################################################
15
16UV                      T_UV
17NV                      T_NV
18HV *                    T_HVREF
19STRLEN                  T_UV
20
21INPUT
22T_UV
23        $var = ($type)SvUV($arg)
24T_NV
25        $var = ($type)SvNV($arg)
26T_HVREF
27        if (SvROK($arg) && SvTYPE(SvRV($arg))==SVt_PVHV)
28            $var = (HV*)SvRV($arg);
29        else
30            Perl_croak(aTHX_ \"$var is not a hash reference\")
31
32OUTPUT
33T_UV
34        sv_setuv($arg, (UV)$var);
35T_NV
36        sv_setnv($arg, (NV)$var);
37