This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Re: INC handlers and shutdown-time warnings
[perl5.git] / ext / B / typemap
1 TYPEMAP
2
3 B::OP           T_OP_OBJ
4 B::UNOP         T_OP_OBJ
5 B::BINOP        T_OP_OBJ
6 B::LOGOP        T_OP_OBJ
7 B::LISTOP       T_OP_OBJ
8 B::PMOP         T_OP_OBJ
9 B::SVOP         T_OP_OBJ
10 B::PADOP        T_OP_OBJ
11 B::PVOP         T_OP_OBJ
12 B::LOOP         T_OP_OBJ
13 B::COP          T_OP_OBJ
14
15 B::SV           T_SV_OBJ
16 B::PV           T_SV_OBJ
17 B::IV           T_SV_OBJ
18 B::NV           T_SV_OBJ
19 B::PVMG         T_SV_OBJ
20 B::PVLV         T_SV_OBJ
21 B::BM           T_SV_OBJ
22 B::RV           T_SV_OBJ
23 B::GV           T_SV_OBJ
24 B::CV           T_SV_OBJ
25 B::HV           T_SV_OBJ
26 B::AV           T_SV_OBJ
27 B::IO           T_SV_OBJ
28 B::FM           T_SV_OBJ
29
30 B::MAGIC        T_MG_OBJ
31 SSize_t         T_IV
32 STRLEN          T_UV
33 PADOFFSET       T_UV
34
35 B::HE           T_HE_OBJ
36 B::RHE          T_RHE_OBJ
37
38 INPUT
39 T_OP_OBJ
40         if (SvROK($arg)) {
41             IV tmp = SvIV((SV*)SvRV($arg));
42             $var = INT2PTR($type,tmp);
43         }
44         else
45             croak(\"$var is not a reference\")
46
47 T_SV_OBJ
48         if (SvROK($arg)) {
49             IV tmp = SvIV((SV*)SvRV($arg));
50             $var = INT2PTR($type,tmp);
51         }
52         else
53             croak(\"$var is not a reference\")
54
55 T_MG_OBJ
56         if (SvROK($arg)) {
57             IV tmp = SvIV((SV*)SvRV($arg));
58             $var = INT2PTR($type,tmp);
59         }
60         else
61             croak(\"$var is not a reference\")
62
63 T_HE_OBJ
64         if (SvROK($arg)) {
65             IV tmp = SvIV((SV*)SvRV($arg));
66             $var = INT2PTR($type,tmp);
67         }
68         else
69             croak(\"$var is not a reference\")
70
71 T_RHE_OBJ
72         if (SvROK($arg)) {
73             IV tmp = SvIV((SV*)SvRV($arg));
74             $var = INT2PTR($type,tmp);
75         }
76         else
77             croak(\"$var is not a reference\")
78
79 OUTPUT
80 T_OP_OBJ
81         sv_setiv(newSVrv($arg, cc_opclassname(aTHX_ (OP*)$var)), PTR2IV($var));
82
83 T_SV_OBJ
84         make_sv_object(aTHX_ ($arg), (SV*)($var));
85
86
87 T_MG_OBJ
88         sv_setiv(newSVrv($arg, "B::MAGIC"), PTR2IV($var));
89
90 T_HE_OBJ
91         sv_setiv(newSVrv($arg, "B::HE"), PTR2IV($var));
92
93 T_RHE_OBJ
94         sv_setiv(newSVrv($arg, "B::RHE"), PTR2IV($var));