This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Upgrade Test-Harness from version 3.39 to 3.41
[perl5.git] / cpan / Win32API-File / typemap
1 BOOL                    T_BOOL\r
2 LONG                    T_IV\r
3 HKEY                    T_UV\r
4 HANDLE                  T_UV\r
5 DWORD                   T_UV\r
6 oDWORD                  O_UV\r
7 UINT                    T_UV\r
8 REGSAM                  T_UV\r
9 SECURITY_INFORMATION    T_UV\r
10 char *                  T_BUF\r
11 WCHAR *                 T_BUF\r
12 BYTE *                  T_BUF\r
13 void *                  T_BUF\r
14 ValEntA *               T_BUF\r
15 ValEntW *               T_BUF\r
16 SECURITY_DESCRIPTOR *   T_BUF\r
17 SECURITY_ATTRIBUTES *   T_BUF\r
18 LPOVERLAPPED            T_BUF\r
19 LONG *                  T_IVBUF\r
20 DWORD *                 T_UVBUF\r
21 LPDWORD                 T_UVBUF\r
22 oDWORD *                O_UVBUF\r
23 HKEY *                  T_UVBUFP\r
24 oHKEY *                 O_UVBUFP\r
25 FILETIME *              T_SBUF\r
26 \r
27 #############################################################################\r
28 INPUT\r
29 T_BOOL\r
30         $var= null_arg($arg)||!SvTRUE($arg) ? ($type)0 : looks_like_number($arg) ? ($type)SvIV($arg) : ($type)1\r
31 T_BUF\r
32         if(  null_arg($arg)  )\r
33             $var= NULL;\r
34         else\r
35             $var= ($type) SvPV_nolen( $arg )\r
36 T_SBUF\r
37         grow_buf( $var,$arg, $type )\r
38 T_IV\r
39         $var= null_arg($arg) ? ($type)0 : INT2PTR($type,SvIV($arg))\r
40 T_UV\r
41         $var= null_arg($arg) ? ($type)0 : INT2PTR($type,SvUV($arg))\r
42 O_IV\r
43         $var= optIV($arg)\r
44 O_UV\r
45         $var= optUV($arg)\r
46 T_IVBUF\r
47         if(  null_arg($arg)  )\r
48             $var= NULL;\r
49         else\r
50             *( $var= ($type) TempAlloc( sizeof(*($var)) ) )= SvIV($arg)\r
51 T_UVBUF\r
52         if(  null_arg($arg)  )\r
53             $var= NULL;\r
54         else\r
55             *( $var= ($type) TempAlloc( sizeof(*($var)) ) )= SvUV($arg)\r
56 O_IVBUF\r
57         if(  null_arg($arg)  )\r
58             $var= NULL;\r
59         else\r
60             *( $var= ($type) TempAlloc( sizeof(*($var)) ) )=\r
61               SvOK($arg) ? SvIV($arg) : 0;\r
62 O_UVBUF\r
63         if(  null_arg($arg)  )\r
64             $var= NULL;\r
65         else\r
66             *( $var= ($type) TempAlloc( sizeof(*($var)) ) )=\r
67               SvOK($arg) ? SvUV($arg) : 0;\r
68 T_IVBUFP\r
69         if(  null_arg($arg)  )\r
70             $var= NULL;\r
71         else\r
72             *( $var= ($type) TempAlloc( sizeof(*($var)) ) )= (void *)SvIV($arg)\r
73 T_UVBUFP\r
74         if(  null_arg($arg)  )\r
75             $var= NULL;\r
76         else\r
77             *( $var= ($type) TempAlloc( sizeof(*($var)) ) )= (void *)SvUV($arg)\r
78 O_IVBUFP\r
79         if(  null_arg($arg)  )\r
80             $var= NULL;\r
81         else\r
82             *( $var= ($type) TempAlloc( sizeof(*($var)) ) )=\r
83               SvOK($arg) ? (void *)SvIV($arg) : 0;\r
84 O_UVBUFP\r
85         if(  null_arg($arg)  )\r
86             $var= NULL;\r
87         else\r
88             *( $var= ($type) TempAlloc( sizeof(*($var)) ) )=\r
89               SvOK($arg) ? (void *)SvUV($arg) : 0;\r
90 \r
91 #############################################################################\r
92 OUTPUT\r
93 T_BOOL\r
94         if(  ! null_arg($arg)  &&  ! SvREADONLY($arg)  ) {\r
95             if(  $var  ) {\r
96                 sv_setiv( $arg, (IV)$var );\r
97             } else {\r
98                 sv_setsv( $arg, &PL_sv_no );\r
99             }\r
100         }\r
101 T_BUF\r
102         ;\r
103 T_SBUF\r
104         trunc_buf( RETVAL, $var,$arg );\r
105 T_IV\r
106         if(  ! null_arg($arg)  &&  ! SvREADONLY($arg)  )\r
107             sv_setiv( $arg, PTR2IV($var) );\r
108 T_UV\r
109         if(  ! null_arg($arg)  &&  ! SvREADONLY($arg)  )\r
110             sv_setuv( $arg, PTR2UV($var) );\r
111 O_IV\r
112         if(  ! null_arg($arg)  )\r
113             sv_setiv( $arg, PTR2IV($var) );\r
114 O_UV\r
115         if(  ! null_arg($arg)  )\r
116             sv_setuv( $arg, PTR2UV($var) );\r
117 T_IVBUF\r
118         if(  ! null_arg($arg)  &&  ! SvREADONLY($arg)  )\r
119             sv_setiv( $arg, (IV)*($var) );\r
120 T_UVBUF\r
121         if(  ! null_arg($arg)  &&  ! SvREADONLY($arg)  )\r
122             sv_setuv( $arg, (UV)*($var) );\r
123 O_IVBUF\r
124         if(  ! null_arg($arg)  )\r
125             sv_setiv( $arg, (IV)*($var) );\r
126 O_UVBUF\r
127         if(  ! null_arg($arg)  )\r
128             sv_setuv( $arg, (UV)*($var) );\r
129 T_IVBUFP\r
130         if(  ! null_arg($arg)  &&  ! SvREADONLY($arg)  )\r
131             sv_setiv( $arg, (IV)*($var) );\r
132 T_UVBUFP\r
133         if(  ! null_arg($arg)  &&  ! SvREADONLY($arg)  )\r
134             sv_setuv( $arg, (UV)*($var) );\r
135 O_IVBUFP\r
136         if(  ! null_arg($arg)  )\r
137             sv_setiv( $arg, (IV)*($var) );\r
138 O_UVBUFP\r
139         if(  ! null_arg($arg)  )\r
140             sv_setuv( $arg, (UV)*($var) );\r