Fix typemap for older Perls.
[catacomb-perl] / typemap
... / ...
CommitLineData
1TYPEMAP
2const char * T_PV
3
4mp * T_MP
5gf * T_MP
6GE * T_CATSTRUCT
7EC_Point * T_CATSTRUCT
8EC_Curve * T_CATSTRUCT
9EC_Info * T_CATSTRUCT
10Field * T_CATSTRUCT
11Group * T_CATSTRUCT
12gccipher * T_GCALG
13gchash * T_GCALG
14gcMAC * T_GCALG
15gcipher * T_GALG
16ghash * T_GALG
17gMAC * T_GALG
18grand * T_GALG
19keysize * T_KEYSZ
20
21Rand_True * T_CATSTRUCT
22Rand_DSA * T_CATSTRUCT
23
24MP_Mont * T_CATSTRUCT
25MP_Barrett * T_CATSTRUCT
26MP_Mul * T_CATSTRUCT
27MP_CRT * T_CATSTRUCT
28MP_Reduce * T_CATSTRUCT
29GF_Reduce * T_CATSTRUCT
30MP_Prime_Filter * T_CATSTRUCT
31MP_Prime_Rabin * T_CATSTRUCT
32MP_Prime_Gen_Event * T_CATSTRUCT
33MP_Prime_Gen_Proc * T_PGENPROC
34MP_Prime_Gen_NullProc * T_NULLPGENPROC
35MP_Prime_Gen_MagicProc * T_CATSTRUCT
36MP_Prime_Gen_FilterStepper * T_CATSTRUCT
37MP_Prime_Gen_JumpStepper * T_CATSTRUCT
38MP_Prime_Gen_RabinTester * T_CATSTRUCT
39
40Key_File * T_CATSTRUCT
41Key_Data * T_CATSTRUCT
42Key * T_CATSTRUCT
43
44KeyErr T_KEYERR
45
46INPUT
47T_MP
48 $var = mp_fromsv($arg, \"$var\", \"${my $ntt = $ntype; $ntt =~ s/^(.*)Ptr$/Catacomb::\U$1/; $ntt =~ s/_/::/g; \$ntt}\", 0, 0)
49T_CATSTRUCT
50 $var = ptrfromsv($arg, \"${my $ntt = $ntype; $ntt =~ s/^(.*)Ptr$/Catacomb::$1/; $ntt =~ s/_/::/g; \$ntt}\", \"$var\")
51T_GALG
52 $var = ptrfromsv($arg, \"${my $ntt = $ntype; $ntt =~ s/^g(.*)Ptr$/Catacomb::\u$1/; \$ntt}\", \"$var\")
53T_GCALG
54 $var = ptrfromsv($arg, \"${my $ntt = $ntype; $ntt =~ s/^gc(.*)Ptr$/Catacomb::\u$1Class/; \$ntt}\", \"$var\")
55T_KEYSZ
56 $var = ptrfromsv($arg, \"Catacomb::KeySize\", \"$var\")
57T_PGENPROC
58 if (sv_derived_from($arg, \"Catacomb::MP::Prime::Gen::Proc\"))
59 $var = $arg;
60 else
61 croak(\"$var is not of type Catacomb::MP::Prime::Gen::Proc\");
62T_NULLPGENPROC
63 if (!SvOK($arg) ||
64 sv_derived_from($arg, \"Catacomb::MP::Prime::Gen::Proc\"))
65 $var = $arg;
66 else
67 croak(\"$var is not of type Catacomb::MP::Prime::Gen::Proc\");
68
69OUTPUT
70T_MP
71 ptrtosv(&$arg, $var, \"${my $ntt = $ntype; $ntt =~ s/^(.*)Ptr$/Catacomb::\U$1/; $ntt =~ s/_/::/g; \$ntt}\");
72T_CATSTRUCT
73 ptrtosv(&$arg, $var, \"${my $ntt = $ntype; $ntt =~ s/^(.*)Ptr$/Catacomb::$1/; $ntt =~ s/_/::/g; \$ntt}\");
74T_GALG
75 ptrtosv(&$arg, $var, \"${my $ntt = $ntype; $ntt =~ s/^g(.*)Ptr$/Catacomb::\u$1/; \$ntt}\");
76T_GCALG
77 ptrtosv(&$arg, $var, \"${my $ntt = $ntype; $ntt =~ s/^g(.*)Ptr$/Catacomb::\u$1Class/; \$ntt}\");
78T_KEYSZ
79 ptrtosv(&$arg, (octet *)$var, \"Catacomb::KeySize\");
80T_PGENPROC
81 $arg = $var;
82T_KEYERR
83 $arg = keyerr($var);