1 | // THIS IS A GENERATED FILE, RUN callback.pl to regenerate it |
1 | // THIS IS A GENERATED FILE: RUN callback.pl to regenerate it |
2 | // THIS IS A GENERATED FILE, RUN callback.pl to regenerate it |
2 | // THIS IS A GENERATED FILE: callback.pl is part of the GVPE |
3 | // THIS IS A GENERATED FILE, RUN callback.pl to regenerate it |
3 | // THIS IS A GENERATED FILE: distribution. |
4 | // THIS IS A GENERATED FILE, RUN callback.pl to regenerate it |
|
|
5 | // THIS IS A GENERATED FILE, RUN callback.pl to regenerate it |
|
|
6 | // THIS IS A GENERATED FILE, RUN callback.pl to regenerate it |
|
|
7 | |
4 | |
8 | /* |
5 | /* |
9 | callback.h -- C++ callback mechanism |
6 | callback.h -- C++ callback mechanism |
10 | Copyright (C) 2003-2005 Marc Lehmann <gvpe@schmorp.de> |
7 | Copyright (C) 2003-2005 Marc Lehmann <pcg@goof.com> |
11 | |
8 | |
12 | This file is part of GVPE. |
9 | This file is part of GVPE. |
13 | |
10 | |
14 | GVPE is free software; you can redistribute it and/or modify |
11 | GVPE is free software; you can redistribute it and/or modify |
15 | it under the terms of the GNU General Public License as published by |
12 | it under the terms of the GNU General Public License as published by |
… | |
… | |
42 | }; |
39 | }; |
43 | template<class O1, class O2> |
40 | template<class O1, class O2> |
44 | struct proxy : proxy_base { |
41 | struct proxy : proxy_base { |
45 | virtual R call (void *obj, R (object::*meth)()) |
42 | virtual R call (void *obj, R (object::*meth)()) |
46 | { |
43 | { |
47 | ((reinterpret_cast<O1 *>(obj)) ->* (reinterpret_cast<R (O2::*)()>(meth))) |
44 | return (R)((reinterpret_cast<O1 *>(obj)) ->* (reinterpret_cast<R (O2::*)()>(meth))) |
48 | (); |
45 | (); |
49 | } |
46 | } |
50 | }; |
47 | }; |
51 | |
48 | |
52 | proxy_base *prxy; |
49 | proxy_base *prxy; |
… | |
… | |
85 | }; |
82 | }; |
86 | template<class O1, class O2> |
83 | template<class O1, class O2> |
87 | struct proxy : proxy_base { |
84 | struct proxy : proxy_base { |
88 | virtual R call (void *obj, R (object::*meth)(A1), A1 a1) |
85 | virtual R call (void *obj, R (object::*meth)(A1), A1 a1) |
89 | { |
86 | { |
90 | ((reinterpret_cast<O1 *>(obj)) ->* (reinterpret_cast<R (O2::*)(A1)>(meth))) |
87 | return (R)((reinterpret_cast<O1 *>(obj)) ->* (reinterpret_cast<R (O2::*)(A1)>(meth))) |
91 | (a1); |
88 | (a1); |
92 | } |
89 | } |
93 | }; |
90 | }; |
94 | |
91 | |
95 | proxy_base *prxy; |
92 | proxy_base *prxy; |
… | |
… | |
128 | }; |
125 | }; |
129 | template<class O1, class O2> |
126 | template<class O1, class O2> |
130 | struct proxy : proxy_base { |
127 | struct proxy : proxy_base { |
131 | virtual R call (void *obj, R (object::*meth)(A1, A2), A1 a1, A2 a2) |
128 | virtual R call (void *obj, R (object::*meth)(A1, A2), A1 a1, A2 a2) |
132 | { |
129 | { |
133 | ((reinterpret_cast<O1 *>(obj)) ->* (reinterpret_cast<R (O2::*)(A1, A2)>(meth))) |
130 | return (R)((reinterpret_cast<O1 *>(obj)) ->* (reinterpret_cast<R (O2::*)(A1, A2)>(meth))) |
134 | (a1, a2); |
131 | (a1, a2); |
135 | } |
132 | } |
136 | }; |
133 | }; |
137 | |
134 | |
138 | proxy_base *prxy; |
135 | proxy_base *prxy; |
… | |
… | |
171 | }; |
168 | }; |
172 | template<class O1, class O2> |
169 | template<class O1, class O2> |
173 | struct proxy : proxy_base { |
170 | struct proxy : proxy_base { |
174 | virtual R call (void *obj, R (object::*meth)(A1, A2, A3), A1 a1, A2 a2, A3 a3) |
171 | virtual R call (void *obj, R (object::*meth)(A1, A2, A3), A1 a1, A2 a2, A3 a3) |
175 | { |
172 | { |
176 | ((reinterpret_cast<O1 *>(obj)) ->* (reinterpret_cast<R (O2::*)(A1, A2, A3)>(meth))) |
173 | return (R)((reinterpret_cast<O1 *>(obj)) ->* (reinterpret_cast<R (O2::*)(A1, A2, A3)>(meth))) |
177 | (a1, a2, a3); |
174 | (a1, a2, a3); |
178 | } |
175 | } |
179 | }; |
176 | }; |
180 | |
177 | |
181 | proxy_base *prxy; |
178 | proxy_base *prxy; |
… | |
… | |
214 | }; |
211 | }; |
215 | template<class O1, class O2> |
212 | template<class O1, class O2> |
216 | struct proxy : proxy_base { |
213 | struct proxy : proxy_base { |
217 | virtual R call (void *obj, R (object::*meth)(A1, A2, A3, A4), A1 a1, A2 a2, A3 a3, A4 a4) |
214 | virtual R call (void *obj, R (object::*meth)(A1, A2, A3, A4), A1 a1, A2 a2, A3 a3, A4 a4) |
218 | { |
215 | { |
219 | ((reinterpret_cast<O1 *>(obj)) ->* (reinterpret_cast<R (O2::*)(A1, A2, A3, A4)>(meth))) |
216 | return (R)((reinterpret_cast<O1 *>(obj)) ->* (reinterpret_cast<R (O2::*)(A1, A2, A3, A4)>(meth))) |
220 | (a1, a2, a3, a4); |
217 | (a1, a2, a3, a4); |
221 | } |
218 | } |
222 | }; |
219 | }; |
223 | |
220 | |
224 | proxy_base *prxy; |
221 | proxy_base *prxy; |
… | |
… | |
257 | }; |
254 | }; |
258 | template<class O1, class O2> |
255 | template<class O1, class O2> |
259 | struct proxy : proxy_base { |
256 | struct proxy : proxy_base { |
260 | virtual R call (void *obj, R (object::*meth)(A1, A2, A3, A4, A5), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5) |
257 | virtual R call (void *obj, R (object::*meth)(A1, A2, A3, A4, A5), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5) |
261 | { |
258 | { |
262 | ((reinterpret_cast<O1 *>(obj)) ->* (reinterpret_cast<R (O2::*)(A1, A2, A3, A4, A5)>(meth))) |
259 | return (R)((reinterpret_cast<O1 *>(obj)) ->* (reinterpret_cast<R (O2::*)(A1, A2, A3, A4, A5)>(meth))) |
263 | (a1, a2, a3, a4, a5); |
260 | (a1, a2, a3, a4, a5); |
264 | } |
261 | } |
265 | }; |
262 | }; |
266 | |
263 | |
267 | proxy_base *prxy; |
264 | proxy_base *prxy; |
… | |
… | |
300 | }; |
297 | }; |
301 | template<class O1, class O2> |
298 | template<class O1, class O2> |
302 | struct proxy : proxy_base { |
299 | struct proxy : proxy_base { |
303 | virtual R call (void *obj, R (object::*meth)(A1, A2, A3, A4, A5, A6), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6) |
300 | virtual R call (void *obj, R (object::*meth)(A1, A2, A3, A4, A5, A6), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6) |
304 | { |
301 | { |
305 | ((reinterpret_cast<O1 *>(obj)) ->* (reinterpret_cast<R (O2::*)(A1, A2, A3, A4, A5, A6)>(meth))) |
302 | return (R)((reinterpret_cast<O1 *>(obj)) ->* (reinterpret_cast<R (O2::*)(A1, A2, A3, A4, A5, A6)>(meth))) |
306 | (a1, a2, a3, a4, a5, a6); |
303 | (a1, a2, a3, a4, a5, a6); |
307 | } |
304 | } |
308 | }; |
305 | }; |
309 | |
306 | |
310 | proxy_base *prxy; |
307 | proxy_base *prxy; |
… | |
… | |
343 | }; |
340 | }; |
344 | template<class O1, class O2> |
341 | template<class O1, class O2> |
345 | struct proxy : proxy_base { |
342 | struct proxy : proxy_base { |
346 | virtual R call (void *obj, R (object::*meth)(A1, A2, A3, A4, A5, A6, A7), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7) |
343 | virtual R call (void *obj, R (object::*meth)(A1, A2, A3, A4, A5, A6, A7), A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7) |
347 | { |
344 | { |
348 | ((reinterpret_cast<O1 *>(obj)) ->* (reinterpret_cast<R (O2::*)(A1, A2, A3, A4, A5, A6, A7)>(meth))) |
345 | return (R)((reinterpret_cast<O1 *>(obj)) ->* (reinterpret_cast<R (O2::*)(A1, A2, A3, A4, A5, A6, A7)>(meth))) |
349 | (a1, a2, a3, a4, a5, a6, a7); |
346 | (a1, a2, a3, a4, a5, a6, a7); |
350 | } |
347 | } |
351 | }; |
348 | }; |
352 | |
349 | |
353 | proxy_base *prxy; |
350 | proxy_base *prxy; |