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