ZFFramework
 
Loading...
Searching...
No Matches
ZFMethodUserRegister_Wrapper.h
Go to the documentation of this file.
1
5
6#ifndef _ZFI_ZFMethodUserRegister_Wrapper_h_
7#define _ZFI_ZFMethodUserRegister_Wrapper_h_
8
9#include "ZFMethod.h"
11
12// ============================================================
13template<typename T_Wrapper>
14inline T_Wrapper &_ZFP_MtdUR_zfv(T_Wrapper &zfv) {
15 return zfv;
16};
17template<typename T_Wrapper>
18inline T_Wrapper const &_ZFP_MtdUR_zfv(T_Wrapper const &zfv) {
19 return zfv;
20};
21template<typename T_Wrapper>
22inline T_Wrapper &_ZFP_MtdUR_zfv(T_Wrapper *zfv) {
23 return *zfv;
24};
25template<typename T_Wrapper>
26inline T_Wrapper const &_ZFP_MtdUR_zfv(const T_Wrapper *zfv) {
27 return *zfv;
28};
29
30// ============================================================
32#define ZFMethodUserRegisterForWrapperVarReadonly(getterMethod, WrapperClass, VarType, VarName) \
33 ZFMethodUserRegister_0(getterMethod, { \
34 return (VarType const &)(_ZFP_MtdUR_zfv(invokerObject->to<WrapperClass *>()->zfv).VarName); \
35 }, WrapperClass::ClassData(), VarType const &, zftext(#VarName))
36
37#define ZFMethodUserRegisterForWrapperVar(setterMethod, getterMethod, WrapperClass, VarType, VarName) \
38 ZFMethodUserRegister_1(setterMethod, { \
39 _ZFP_MtdUR_zfv(invokerObject->to<WrapperClass *>()->zfv).VarName = param0; \
40 }, WrapperClass::ClassData(), void, zftext(#VarName) \
41 , ZFMP_IN(VarType const &, param0) \
42 ); \
43 ZFMethodUserRegister_0(getterMethod, { \
44 return (VarType const &)(_ZFP_MtdUR_zfv(invokerObject->to<WrapperClass *>()->zfv).VarName); \
45 }, WrapperClass::ClassData(), VarType const &, zftext(#VarName))
46
48#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_VAR_READONLY(WrapperClass, VarType, VarName) \
49 ZF_STATIC_REGISTER_INIT(MtdUR_##WrapperClass##_##VarName) { \
50 ZFMethodUserRegister_0(getterMethod, { \
51 return (VarType const &)(_ZFP_MtdUR_zfv(invokerObject->to<WrapperClass *>()->zfv).VarName); \
52 }, WrapperClass::ClassData(), VarType const &, zftext(#VarName)); \
53 } \
54 ZF_STATIC_REGISTER_DESTROY(MtdUR_##WrapperClass##_##VarName) { \
55 ZFMethodUserUnregister(WrapperClass::ClassData()->methodForNameIgnoreParent(zftext(#VarName), zfnull)); \
56 } \
57 ZF_STATIC_REGISTER_END(MtdUR_##WrapperClass##_##VarName)
58
59#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_VAR(WrapperClass, VarType, VarName) \
60 ZF_STATIC_REGISTER_INIT(MtdUR_##WrapperClass##_##VarName) { \
61 ZFMethodUserRegister_1(setterMethod, { \
62 _ZFP_MtdUR_zfv(invokerObject->to<WrapperClass *>()->zfv).VarName = param0; \
63 }, WrapperClass::ClassData(), void, zftext(#VarName) \
64 , ZFMP_IN(VarType const &, param0) \
65 ); \
66 ZFMethodUserRegister_0(getterMethod, { \
67 return (VarType const &)(_ZFP_MtdUR_zfv(invokerObject->to<WrapperClass *>()->zfv).VarName); \
68 }, WrapperClass::ClassData(), VarType const &, zftext(#VarName)); \
69 } \
70 ZF_STATIC_REGISTER_DESTROY(MtdUR_##WrapperClass##_##VarName) { \
71 ZFMethodUserUnregister(WrapperClass::ClassData()->methodForNameIgnoreParent(zftext(#VarName), ZFTypeId<VarType>::TypeId())); \
72 ZFMethodUserUnregister(WrapperClass::ClassData()->methodForNameIgnoreParent(zftext(#VarName), zfnull)); \
73 } \
74 ZF_STATIC_REGISTER_END(MtdUR_##WrapperClass##_##VarName)
75
76// ============================================================
78#define ZFMethodUserRegisterForWrapperSetterGetter(setterMethod, getterMethod, WrapperClass, VarType, VarName) \
79 ZFMethodUserRegister_1(setterMethod, { \
80 _ZFP_MtdUR_zfv(invokerObject->to<WrapperClass *>()->zfv).VarName(param0); \
81 }, WrapperClass::ClassData(), void, zftext(#VarName) \
82 , ZFMP_IN(VarType const &, param0) \
83 ); \
84 ZFMethodUserRegister_0(getterMethod, { \
85 return (VarType const &)(_ZFP_MtdUR_zfv(invokerObject->to<WrapperClass *>()->zfv).VarName()); \
86 }, WrapperClass::ClassData(), VarType const &, zftext(#VarName))
87
89#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_SETTER_GETTER(WrapperClass, VarType, VarName) \
90 ZF_STATIC_REGISTER_INIT(MtdUR_##WrapperClass##_##VarName) { \
91 ZFMethodUserRegister_1(setterMethod, { \
92 _ZFP_MtdUR_zfv(invokerObject->to<WrapperClass *>()->zfv).VarName(param0); \
93 }, WrapperClass::ClassData(), void, zftext(#VarName) \
94 , ZFMP_IN(VarType const &, param0) \
95 ); \
96 ZFMethodUserRegister_0(getterMethod, { \
97 return (VarType const &)(_ZFP_MtdUR_zfv(invokerObject->to<WrapperClass *>()->zfv).VarName()); \
98 }, WrapperClass::ClassData(), VarType const &, zftext(#VarName)); \
99 } \
100 ZF_STATIC_REGISTER_DESTROY(MtdUR_##WrapperClass##_##VarName) { \
101 ZFMethodUserUnregister(WrapperClass::ClassData()->methodForNameIgnoreParent(zftext(#VarName), ZFTypeId<VarType>::TypeId())); \
102 ZFMethodUserUnregister(WrapperClass::ClassData()->methodForNameIgnoreParent(zftext(#VarName), zfnull)); \
103 } \
104 ZF_STATIC_REGISTER_END(MtdUR_##WrapperClass##_##VarName)
105
106// ============================================================
107#define _ZFP_ZFMethodUserRegisterForWrapperFunc(...) \
108 _ZFP_MtdD_EXPAND(_ZFP_ZFMethodUserRegisterForWrapperFunc_(__VA_ARGS__))
109#define _ZFP_ZFMethodUserRegisterForWrapperFunc_(resultMethod, WrapperClass, \
110 ReturnType, methodName \
111 , ParamExpandOrEmpty0, ParamType0, param0, DefaultExpandOrEmpty0, DefaultValueFix0 \
112 , ParamExpandOrEmpty1, ParamType1, param1, DefaultExpandOrEmpty1, DefaultValueFix1 \
113 , ParamExpandOrEmpty2, ParamType2, param2, DefaultExpandOrEmpty2, DefaultValueFix2 \
114 , ParamExpandOrEmpty3, ParamType3, param3, DefaultExpandOrEmpty3, DefaultValueFix3 \
115 , ParamExpandOrEmpty4, ParamType4, param4, DefaultExpandOrEmpty4, DefaultValueFix4 \
116 , ParamExpandOrEmpty5, ParamType5, param5, DefaultExpandOrEmpty5, DefaultValueFix5 \
117 , ParamExpandOrEmpty6, ParamType6, param6, DefaultExpandOrEmpty6, DefaultValueFix6 \
118 , ParamExpandOrEmpty7, ParamType7, param7, DefaultExpandOrEmpty7, DefaultValueFix7 \
119 ) \
120 _ZFP_ZFMethodUserRegister(resultMethod, { \
121 return (ReturnType)_ZFP_MtdUR_zfv(invokerObject->to<WrapperClass *>()->zfv).methodName( \
122 ParamExpandOrEmpty0(ZFM_EMPTY() param0) \
123 ParamExpandOrEmpty1(ZFM_COMMA() param1) \
124 ParamExpandOrEmpty2(ZFM_COMMA() param2) \
125 ParamExpandOrEmpty3(ZFM_COMMA() param3) \
126 ParamExpandOrEmpty4(ZFM_COMMA() param4) \
127 ParamExpandOrEmpty5(ZFM_COMMA() param5) \
128 ParamExpandOrEmpty6(ZFM_COMMA() param6) \
129 ParamExpandOrEmpty7(ZFM_COMMA() param7) \
130 ); \
131 }, WrapperClass::ClassData(), \
132 public, ZFMethodTypeVirtual, \
133 ReturnType, zftext(#methodName) \
134 , ParamExpandOrEmpty0, ParamType0, param0, DefaultExpandOrEmpty0, DefaultValueFix0 \
135 , ParamExpandOrEmpty1, ParamType1, param1, DefaultExpandOrEmpty1, DefaultValueFix1 \
136 , ParamExpandOrEmpty2, ParamType2, param2, DefaultExpandOrEmpty2, DefaultValueFix2 \
137 , ParamExpandOrEmpty3, ParamType3, param3, DefaultExpandOrEmpty3, DefaultValueFix3 \
138 , ParamExpandOrEmpty4, ParamType4, param4, DefaultExpandOrEmpty4, DefaultValueFix4 \
139 , ParamExpandOrEmpty5, ParamType5, param5, DefaultExpandOrEmpty5, DefaultValueFix5 \
140 , ParamExpandOrEmpty6, ParamType6, param6, DefaultExpandOrEmpty6, DefaultValueFix6 \
141 , ParamExpandOrEmpty7, ParamType7, param7, DefaultExpandOrEmpty7, DefaultValueFix7 \
142 )
143#define _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC(...) \
144 _ZFP_MtdD_EXPAND(_ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_(__VA_ARGS__))
145#define _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_(WrapperClass, \
146 RegSig, \
147 ReturnType, methodName \
148 , ParamExpandOrEmpty0, ParamType0, param0, DefaultExpandOrEmpty0, DefaultValueFix0 \
149 , ParamExpandOrEmpty1, ParamType1, param1, DefaultExpandOrEmpty1, DefaultValueFix1 \
150 , ParamExpandOrEmpty2, ParamType2, param2, DefaultExpandOrEmpty2, DefaultValueFix2 \
151 , ParamExpandOrEmpty3, ParamType3, param3, DefaultExpandOrEmpty3, DefaultValueFix3 \
152 , ParamExpandOrEmpty4, ParamType4, param4, DefaultExpandOrEmpty4, DefaultValueFix4 \
153 , ParamExpandOrEmpty5, ParamType5, param5, DefaultExpandOrEmpty5, DefaultValueFix5 \
154 , ParamExpandOrEmpty6, ParamType6, param6, DefaultExpandOrEmpty6, DefaultValueFix6 \
155 , ParamExpandOrEmpty7, ParamType7, param7, DefaultExpandOrEmpty7, DefaultValueFix7 \
156 ) \
157 _ZFP_ZFMETHOD_USER_REGISTER({ \
158 return (ReturnType)_ZFP_MtdUR_zfv(invokerObject->to<WrapperClass *>()->zfv).methodName( \
159 ParamExpandOrEmpty0(ZFM_EMPTY() param0) \
160 ParamExpandOrEmpty1(ZFM_COMMA() param1) \
161 ParamExpandOrEmpty2(ZFM_COMMA() param2) \
162 ParamExpandOrEmpty3(ZFM_COMMA() param3) \
163 ParamExpandOrEmpty4(ZFM_COMMA() param4) \
164 ParamExpandOrEmpty5(ZFM_COMMA() param5) \
165 ParamExpandOrEmpty6(ZFM_COMMA() param6) \
166 ParamExpandOrEmpty7(ZFM_COMMA() param7) \
167 ); \
168 }, WrapperClass, \
169 public, ZFMethodTypeVirtual, RegSig, \
170 ReturnType, methodName \
171 , ParamExpandOrEmpty0, ParamType0, param0, DefaultExpandOrEmpty0, DefaultValueFix0 \
172 , ParamExpandOrEmpty1, ParamType1, param1, DefaultExpandOrEmpty1, DefaultValueFix1 \
173 , ParamExpandOrEmpty2, ParamType2, param2, DefaultExpandOrEmpty2, DefaultValueFix2 \
174 , ParamExpandOrEmpty3, ParamType3, param3, DefaultExpandOrEmpty3, DefaultValueFix3 \
175 , ParamExpandOrEmpty4, ParamType4, param4, DefaultExpandOrEmpty4, DefaultValueFix4 \
176 , ParamExpandOrEmpty5, ParamType5, param5, DefaultExpandOrEmpty5, DefaultValueFix5 \
177 , ParamExpandOrEmpty6, ParamType6, param6, DefaultExpandOrEmpty6, DefaultValueFix6 \
178 , ParamExpandOrEmpty7, ParamType7, param7, DefaultExpandOrEmpty7, DefaultValueFix7 \
179 )
180
181// ============================================================
182#define _ZFP_ZFMethodUserRegisterForWrapperFuncStatic(...) \
183 _ZFP_MtdD_EXPAND(_ZFP_ZFMethodUserRegisterForWrapperFuncStatic_(__VA_ARGS__))
184#define _ZFP_ZFMethodUserRegisterForWrapperFuncStatic_(resultMethod, OriginalClass, WrapperClass, \
185 ReturnType, methodName \
186 , ParamExpandOrEmpty0, ParamType0, param0, DefaultExpandOrEmpty0, DefaultValueFix0 \
187 , ParamExpandOrEmpty1, ParamType1, param1, DefaultExpandOrEmpty1, DefaultValueFix1 \
188 , ParamExpandOrEmpty2, ParamType2, param2, DefaultExpandOrEmpty2, DefaultValueFix2 \
189 , ParamExpandOrEmpty3, ParamType3, param3, DefaultExpandOrEmpty3, DefaultValueFix3 \
190 , ParamExpandOrEmpty4, ParamType4, param4, DefaultExpandOrEmpty4, DefaultValueFix4 \
191 , ParamExpandOrEmpty5, ParamType5, param5, DefaultExpandOrEmpty5, DefaultValueFix5 \
192 , ParamExpandOrEmpty6, ParamType6, param6, DefaultExpandOrEmpty6, DefaultValueFix6 \
193 , ParamExpandOrEmpty7, ParamType7, param7, DefaultExpandOrEmpty7, DefaultValueFix7 \
194 ) \
195 _ZFP_ZFMethodUserRegister(resultMethod, { \
196 return (ReturnType)OriginalClass::methodName( \
197 ParamExpandOrEmpty0(ZFM_EMPTY() param0) \
198 ParamExpandOrEmpty1(ZFM_COMMA() param1) \
199 ParamExpandOrEmpty2(ZFM_COMMA() param2) \
200 ParamExpandOrEmpty3(ZFM_COMMA() param3) \
201 ParamExpandOrEmpty4(ZFM_COMMA() param4) \
202 ParamExpandOrEmpty5(ZFM_COMMA() param5) \
203 ParamExpandOrEmpty6(ZFM_COMMA() param6) \
204 ParamExpandOrEmpty7(ZFM_COMMA() param7) \
205 ); \
206 }, WrapperClass::ClassData(), \
207 public, ZFMethodTypeStatic, \
208 ReturnType, zftext(#methodName) \
209 , ParamExpandOrEmpty0, ParamType0, param0, DefaultExpandOrEmpty0, DefaultValueFix0 \
210 , ParamExpandOrEmpty1, ParamType1, param1, DefaultExpandOrEmpty1, DefaultValueFix1 \
211 , ParamExpandOrEmpty2, ParamType2, param2, DefaultExpandOrEmpty2, DefaultValueFix2 \
212 , ParamExpandOrEmpty3, ParamType3, param3, DefaultExpandOrEmpty3, DefaultValueFix3 \
213 , ParamExpandOrEmpty4, ParamType4, param4, DefaultExpandOrEmpty4, DefaultValueFix4 \
214 , ParamExpandOrEmpty5, ParamType5, param5, DefaultExpandOrEmpty5, DefaultValueFix5 \
215 , ParamExpandOrEmpty6, ParamType6, param6, DefaultExpandOrEmpty6, DefaultValueFix6 \
216 , ParamExpandOrEmpty7, ParamType7, param7, DefaultExpandOrEmpty7, DefaultValueFix7 \
217 )
218#define _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC(...) \
219 _ZFP_MtdD_EXPAND(_ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC_(__VA_ARGS__))
220#define _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC_(OriginalClass, WrapperClass, \
221 ReturnType, methodName \
222 , ParamExpandOrEmpty0, ParamType0, param0, DefaultExpandOrEmpty0, DefaultValueFix0 \
223 , ParamExpandOrEmpty1, ParamType1, param1, DefaultExpandOrEmpty1, DefaultValueFix1 \
224 , ParamExpandOrEmpty2, ParamType2, param2, DefaultExpandOrEmpty2, DefaultValueFix2 \
225 , ParamExpandOrEmpty3, ParamType3, param3, DefaultExpandOrEmpty3, DefaultValueFix3 \
226 , ParamExpandOrEmpty4, ParamType4, param4, DefaultExpandOrEmpty4, DefaultValueFix4 \
227 , ParamExpandOrEmpty5, ParamType5, param5, DefaultExpandOrEmpty5, DefaultValueFix5 \
228 , ParamExpandOrEmpty6, ParamType6, param6, DefaultExpandOrEmpty6, DefaultValueFix6 \
229 , ParamExpandOrEmpty7, ParamType7, param7, DefaultExpandOrEmpty7, DefaultValueFix7 \
230 ) \
231 _ZFP_ZFMETHOD_USER_REGISTER({ \
232 return (ReturnType)OriginalClass::methodName( \
233 ParamExpandOrEmpty0(ZFM_EMPTY() param0) \
234 ParamExpandOrEmpty1(ZFM_COMMA() param1) \
235 ParamExpandOrEmpty2(ZFM_COMMA() param2) \
236 ParamExpandOrEmpty3(ZFM_COMMA() param3) \
237 ParamExpandOrEmpty4(ZFM_COMMA() param4) \
238 ParamExpandOrEmpty5(ZFM_COMMA() param5) \
239 ParamExpandOrEmpty6(ZFM_COMMA() param6) \
240 ParamExpandOrEmpty7(ZFM_COMMA() param7) \
241 ); \
242 }, WrapperClass, \
243 public, ZFMethodTypeStatic, ZF_CALLER_LINE, \
244 ReturnType, methodName \
245 , ParamExpandOrEmpty0, ParamType0, param0, DefaultExpandOrEmpty0, DefaultValueFix0 \
246 , ParamExpandOrEmpty1, ParamType1, param1, DefaultExpandOrEmpty1, DefaultValueFix1 \
247 , ParamExpandOrEmpty2, ParamType2, param2, DefaultExpandOrEmpty2, DefaultValueFix2 \
248 , ParamExpandOrEmpty3, ParamType3, param3, DefaultExpandOrEmpty3, DefaultValueFix3 \
249 , ParamExpandOrEmpty4, ParamType4, param4, DefaultExpandOrEmpty4, DefaultValueFix4 \
250 , ParamExpandOrEmpty5, ParamType5, param5, DefaultExpandOrEmpty5, DefaultValueFix5 \
251 , ParamExpandOrEmpty6, ParamType6, param6, DefaultExpandOrEmpty6, DefaultValueFix6 \
252 , ParamExpandOrEmpty7, ParamType7, param7, DefaultExpandOrEmpty7, DefaultValueFix7 \
253 )
254
255// ============================================================
256// 0 param
258#define ZFMethodUserRegisterForWrapperFunc_0(resultMethod, WrapperClass, \
259 ReturnType, methodName \
260 ) \
261 _ZFP_ZFMethodUserRegisterForWrapperFunc(resultMethod, WrapperClass, \
262 ReturnType, methodName \
263 , _ZFP_ZFMP_DUMMY() \
264 , _ZFP_ZFMP_DUMMY() \
265 , _ZFP_ZFMP_DUMMY() \
266 , _ZFP_ZFMP_DUMMY() \
267 , _ZFP_ZFMP_DUMMY() \
268 , _ZFP_ZFMP_DUMMY() \
269 , _ZFP_ZFMP_DUMMY() \
270 , _ZFP_ZFMP_DUMMY() \
271 )
273#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_0(WrapperClass, \
274 ReturnType, methodName \
275 ) \
276 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC(WrapperClass, ZF_CALLER_LINE, \
277 ReturnType, methodName \
278 , _ZFP_ZFMP_DUMMY() \
279 , _ZFP_ZFMP_DUMMY() \
280 , _ZFP_ZFMP_DUMMY() \
281 , _ZFP_ZFMP_DUMMY() \
282 , _ZFP_ZFMP_DUMMY() \
283 , _ZFP_ZFMP_DUMMY() \
284 , _ZFP_ZFMP_DUMMY() \
285 , _ZFP_ZFMP_DUMMY() \
286 )
288#define ZFMethodUserRegisterForWrapperFuncStatic_0(resultMethod, OriginalClass, WrapperClass, \
289 ReturnType, methodName \
290 ) \
291 _ZFP_ZFMethodUserRegisterForWrapperFuncStatic(resultMethod, OriginalClass, WrapperClass, \
292 ReturnType, methodName \
293 , _ZFP_ZFMP_DUMMY() \
294 , _ZFP_ZFMP_DUMMY() \
295 , _ZFP_ZFMP_DUMMY() \
296 , _ZFP_ZFMP_DUMMY() \
297 , _ZFP_ZFMP_DUMMY() \
298 , _ZFP_ZFMP_DUMMY() \
299 , _ZFP_ZFMP_DUMMY() \
300 , _ZFP_ZFMP_DUMMY() \
301 )
303#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC_0(OriginalClass, WrapperClass, \
304 ReturnType, methodName \
305 ) \
306 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC(OriginalClass, WrapperClass, \
307 ReturnType, methodName \
308 , _ZFP_ZFMP_DUMMY() \
309 , _ZFP_ZFMP_DUMMY() \
310 , _ZFP_ZFMP_DUMMY() \
311 , _ZFP_ZFMP_DUMMY() \
312 , _ZFP_ZFMP_DUMMY() \
313 , _ZFP_ZFMP_DUMMY() \
314 , _ZFP_ZFMP_DUMMY() \
315 , _ZFP_ZFMP_DUMMY() \
316 )
317
318// ============================================================
319// 1 param
321#define ZFMethodUserRegisterForWrapperFunc_1(resultMethod, WrapperClass, \
322 ReturnType, methodName \
323 , ZFMP_0 \
324 ) \
325 _ZFP_ZFMethodUserRegisterForWrapperFunc(resultMethod, WrapperClass, \
326 ReturnType, methodName \
327 , _ZFP_MtdP_EXPAND(ZFMP_0) \
328 , _ZFP_ZFMP_DUMMY() \
329 , _ZFP_ZFMP_DUMMY() \
330 , _ZFP_ZFMP_DUMMY() \
331 , _ZFP_ZFMP_DUMMY() \
332 , _ZFP_ZFMP_DUMMY() \
333 , _ZFP_ZFMP_DUMMY() \
334 , _ZFP_ZFMP_DUMMY() \
335 )
337#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_1(WrapperClass, \
338 ReturnType, methodName \
339 , ZFMP_0 \
340 ) \
341 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC(WrapperClass, ZF_CALLER_LINE, \
342 ReturnType, methodName \
343 , _ZFP_MtdP_EXPAND(ZFMP_0) \
344 , _ZFP_ZFMP_DUMMY() \
345 , _ZFP_ZFMP_DUMMY() \
346 , _ZFP_ZFMP_DUMMY() \
347 , _ZFP_ZFMP_DUMMY() \
348 , _ZFP_ZFMP_DUMMY() \
349 , _ZFP_ZFMP_DUMMY() \
350 , _ZFP_ZFMP_DUMMY() \
351 )
353#define ZFMethodUserRegisterForWrapperFuncStatic_1(resultMethod, OriginalClass, WrapperClass, \
354 ReturnType, methodName \
355 , ZFMP_0 \
356 ) \
357 _ZFP_ZFMethodUserRegisterForWrapperFuncStatic(resultMethod, OriginalClass, WrapperClass, \
358 ReturnType, methodName \
359 , _ZFP_MtdP_EXPAND(ZFMP_0) \
360 , _ZFP_ZFMP_DUMMY() \
361 , _ZFP_ZFMP_DUMMY() \
362 , _ZFP_ZFMP_DUMMY() \
363 , _ZFP_ZFMP_DUMMY() \
364 , _ZFP_ZFMP_DUMMY() \
365 , _ZFP_ZFMP_DUMMY() \
366 , _ZFP_ZFMP_DUMMY() \
367 )
369#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC_1(OriginalClass, WrapperClass, \
370 ReturnType, methodName \
371 , ZFMP_0 \
372 ) \
373 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC(OriginalClass, WrapperClass, \
374 ReturnType, methodName \
375 , _ZFP_MtdP_EXPAND(ZFMP_0) \
376 , _ZFP_ZFMP_DUMMY() \
377 , _ZFP_ZFMP_DUMMY() \
378 , _ZFP_ZFMP_DUMMY() \
379 , _ZFP_ZFMP_DUMMY() \
380 , _ZFP_ZFMP_DUMMY() \
381 , _ZFP_ZFMP_DUMMY() \
382 , _ZFP_ZFMP_DUMMY() \
383 )
384
385// ============================================================
386// 2 param
388#define ZFMethodUserRegisterForWrapperFunc_2(resultMethod, WrapperClass, \
389 ReturnType, methodName \
390 , ZFMP_0 \
391 , ZFMP_1 \
392 ) \
393 _ZFP_ZFMethodUserRegisterForWrapperFunc(resultMethod, WrapperClass, \
394 ReturnType, methodName \
395 , _ZFP_MtdP_EXPAND(ZFMP_0) \
396 , _ZFP_MtdP_EXPAND(ZFMP_1) \
397 , _ZFP_ZFMP_DUMMY() \
398 , _ZFP_ZFMP_DUMMY() \
399 , _ZFP_ZFMP_DUMMY() \
400 , _ZFP_ZFMP_DUMMY() \
401 , _ZFP_ZFMP_DUMMY() \
402 , _ZFP_ZFMP_DUMMY() \
403 )
405#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_2(WrapperClass, \
406 ReturnType, methodName \
407 , ZFMP_0 \
408 , ZFMP_1 \
409 ) \
410 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC(WrapperClass, ZF_CALLER_LINE, \
411 ReturnType, methodName \
412 , _ZFP_MtdP_EXPAND(ZFMP_0) \
413 , _ZFP_MtdP_EXPAND(ZFMP_1) \
414 , _ZFP_ZFMP_DUMMY() \
415 , _ZFP_ZFMP_DUMMY() \
416 , _ZFP_ZFMP_DUMMY() \
417 , _ZFP_ZFMP_DUMMY() \
418 , _ZFP_ZFMP_DUMMY() \
419 , _ZFP_ZFMP_DUMMY() \
420 )
422#define ZFMethodUserRegisterForWrapperFuncStatic_2(resultMethod, OriginalClass, WrapperClass, \
423 ReturnType, methodName \
424 , ZFMP_0 \
425 , ZFMP_1 \
426 ) \
427 _ZFP_ZFMethodUserRegisterForWrapperFuncStatic(resultMethod, OriginalClass, WrapperClass, \
428 ReturnType, methodName \
429 , _ZFP_MtdP_EXPAND(ZFMP_0) \
430 , _ZFP_MtdP_EXPAND(ZFMP_1) \
431 , _ZFP_ZFMP_DUMMY() \
432 , _ZFP_ZFMP_DUMMY() \
433 , _ZFP_ZFMP_DUMMY() \
434 , _ZFP_ZFMP_DUMMY() \
435 , _ZFP_ZFMP_DUMMY() \
436 , _ZFP_ZFMP_DUMMY() \
437 )
439#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC_2(OriginalClass, WrapperClass, \
440 ReturnType, methodName \
441 , ZFMP_0 \
442 , ZFMP_1 \
443 ) \
444 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC(OriginalClass, WrapperClass, \
445 ReturnType, methodName \
446 , _ZFP_MtdP_EXPAND(ZFMP_0) \
447 , _ZFP_MtdP_EXPAND(ZFMP_1) \
448 , _ZFP_ZFMP_DUMMY() \
449 , _ZFP_ZFMP_DUMMY() \
450 , _ZFP_ZFMP_DUMMY() \
451 , _ZFP_ZFMP_DUMMY() \
452 , _ZFP_ZFMP_DUMMY() \
453 , _ZFP_ZFMP_DUMMY() \
454 )
455
456// ============================================================
457// 3 param
459#define ZFMethodUserRegisterForWrapperFunc_3(resultMethod, WrapperClass, \
460 ReturnType, methodName \
461 , ZFMP_0 \
462 , ZFMP_1 \
463 , ZFMP_2 \
464 ) \
465 _ZFP_ZFMethodUserRegisterForWrapperFunc(resultMethod, WrapperClass, \
466 ReturnType, methodName \
467 , _ZFP_MtdP_EXPAND(ZFMP_0) \
468 , _ZFP_MtdP_EXPAND(ZFMP_1) \
469 , _ZFP_MtdP_EXPAND(ZFMP_2) \
470 , _ZFP_ZFMP_DUMMY() \
471 , _ZFP_ZFMP_DUMMY() \
472 , _ZFP_ZFMP_DUMMY() \
473 , _ZFP_ZFMP_DUMMY() \
474 , _ZFP_ZFMP_DUMMY() \
475 )
477#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_3(WrapperClass, \
478 ReturnType, methodName \
479 , ZFMP_0 \
480 , ZFMP_1 \
481 , ZFMP_2 \
482 ) \
483 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC(WrapperClass, ZF_CALLER_LINE, \
484 ReturnType, methodName \
485 , _ZFP_MtdP_EXPAND(ZFMP_0) \
486 , _ZFP_MtdP_EXPAND(ZFMP_1) \
487 , _ZFP_MtdP_EXPAND(ZFMP_2) \
488 , _ZFP_ZFMP_DUMMY() \
489 , _ZFP_ZFMP_DUMMY() \
490 , _ZFP_ZFMP_DUMMY() \
491 , _ZFP_ZFMP_DUMMY() \
492 , _ZFP_ZFMP_DUMMY() \
493 )
495#define ZFMethodUserRegisterForWrapperFuncStatic_3(resultMethod, OriginalClass, WrapperClass, \
496 ReturnType, methodName \
497 , ZFMP_0 \
498 , ZFMP_1 \
499 , ZFMP_2 \
500 ) \
501 _ZFP_ZFMethodUserRegisterForWrapperFuncStatic(resultMethod, OriginalClass, WrapperClass, \
502 ReturnType, methodName \
503 , _ZFP_MtdP_EXPAND(ZFMP_0) \
504 , _ZFP_MtdP_EXPAND(ZFMP_1) \
505 , _ZFP_MtdP_EXPAND(ZFMP_2) \
506 , _ZFP_ZFMP_DUMMY() \
507 , _ZFP_ZFMP_DUMMY() \
508 , _ZFP_ZFMP_DUMMY() \
509 , _ZFP_ZFMP_DUMMY() \
510 , _ZFP_ZFMP_DUMMY() \
511 )
513#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC_3(OriginalClass, WrapperClass, \
514 ReturnType, methodName \
515 , ZFMP_0 \
516 , ZFMP_1 \
517 , ZFMP_2 \
518 ) \
519 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC(OriginalClass, WrapperClass, \
520 ReturnType, methodName \
521 , _ZFP_MtdP_EXPAND(ZFMP_0) \
522 , _ZFP_MtdP_EXPAND(ZFMP_1) \
523 , _ZFP_MtdP_EXPAND(ZFMP_2) \
524 , _ZFP_ZFMP_DUMMY() \
525 , _ZFP_ZFMP_DUMMY() \
526 , _ZFP_ZFMP_DUMMY() \
527 , _ZFP_ZFMP_DUMMY() \
528 , _ZFP_ZFMP_DUMMY() \
529 )
530
531// ============================================================
532// 4 param
534#define ZFMethodUserRegisterForWrapperFunc_4(resultMethod, WrapperClass, \
535 ReturnType, methodName \
536 , ZFMP_0 \
537 , ZFMP_1 \
538 , ZFMP_2 \
539 , ZFMP_3 \
540 ) \
541 _ZFP_ZFMethodUserRegisterForWrapperFunc(resultMethod, WrapperClass, \
542 ReturnType, methodName \
543 , _ZFP_MtdP_EXPAND(ZFMP_0) \
544 , _ZFP_MtdP_EXPAND(ZFMP_1) \
545 , _ZFP_MtdP_EXPAND(ZFMP_2) \
546 , _ZFP_MtdP_EXPAND(ZFMP_3) \
547 , _ZFP_ZFMP_DUMMY() \
548 , _ZFP_ZFMP_DUMMY() \
549 , _ZFP_ZFMP_DUMMY() \
550 , _ZFP_ZFMP_DUMMY() \
551 )
553#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_4(WrapperClass, \
554 ReturnType, methodName \
555 , ZFMP_0 \
556 , ZFMP_1 \
557 , ZFMP_2 \
558 , ZFMP_3 \
559 ) \
560 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC(WrapperClass, ZF_CALLER_LINE, \
561 ReturnType, methodName \
562 , _ZFP_MtdP_EXPAND(ZFMP_0) \
563 , _ZFP_MtdP_EXPAND(ZFMP_1) \
564 , _ZFP_MtdP_EXPAND(ZFMP_2) \
565 , _ZFP_MtdP_EXPAND(ZFMP_3) \
566 , _ZFP_ZFMP_DUMMY() \
567 , _ZFP_ZFMP_DUMMY() \
568 , _ZFP_ZFMP_DUMMY() \
569 , _ZFP_ZFMP_DUMMY() \
570 )
572#define ZFMethodUserRegisterForWrapperFuncStatic_4(resultMethod, OriginalClass, WrapperClass, \
573 ReturnType, methodName \
574 , ZFMP_0 \
575 , ZFMP_1 \
576 , ZFMP_2 \
577 , ZFMP_3 \
578 ) \
579 _ZFP_ZFMethodUserRegisterForWrapperFuncStatic(resultMethod, OriginalClass, WrapperClass, \
580 ReturnType, methodName \
581 , _ZFP_MtdP_EXPAND(ZFMP_0) \
582 , _ZFP_MtdP_EXPAND(ZFMP_1) \
583 , _ZFP_MtdP_EXPAND(ZFMP_2) \
584 , _ZFP_MtdP_EXPAND(ZFMP_3) \
585 , _ZFP_ZFMP_DUMMY() \
586 , _ZFP_ZFMP_DUMMY() \
587 , _ZFP_ZFMP_DUMMY() \
588 , _ZFP_ZFMP_DUMMY() \
589 )
591#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC_4(OriginalClass, WrapperClass, \
592 ReturnType, methodName \
593 , ZFMP_0 \
594 , ZFMP_1 \
595 , ZFMP_2 \
596 , ZFMP_3 \
597 ) \
598 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC(OriginalClass, WrapperClass, \
599 ReturnType, methodName \
600 , _ZFP_MtdP_EXPAND(ZFMP_0) \
601 , _ZFP_MtdP_EXPAND(ZFMP_1) \
602 , _ZFP_MtdP_EXPAND(ZFMP_2) \
603 , _ZFP_MtdP_EXPAND(ZFMP_3) \
604 , _ZFP_ZFMP_DUMMY() \
605 , _ZFP_ZFMP_DUMMY() \
606 , _ZFP_ZFMP_DUMMY() \
607 , _ZFP_ZFMP_DUMMY() \
608 )
609
610// ============================================================
611// 5 param
613#define ZFMethodUserRegisterForWrapperFunc_5(resultMethod, WrapperClass, \
614 ReturnType, methodName \
615 , ZFMP_0 \
616 , ZFMP_1 \
617 , ZFMP_2 \
618 , ZFMP_3 \
619 , ZFMP_4 \
620 ) \
621 _ZFP_ZFMethodUserRegisterForWrapperFunc(resultMethod, WrapperClass, \
622 ReturnType, methodName \
623 , _ZFP_MtdP_EXPAND(ZFMP_0) \
624 , _ZFP_MtdP_EXPAND(ZFMP_1) \
625 , _ZFP_MtdP_EXPAND(ZFMP_2) \
626 , _ZFP_MtdP_EXPAND(ZFMP_3) \
627 , _ZFP_MtdP_EXPAND(ZFMP_4) \
628 , _ZFP_ZFMP_DUMMY() \
629 , _ZFP_ZFMP_DUMMY() \
630 , _ZFP_ZFMP_DUMMY() \
631 )
633#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_5(WrapperClass, \
634 ReturnType, methodName \
635 , ZFMP_0 \
636 , ZFMP_1 \
637 , ZFMP_2 \
638 , ZFMP_3 \
639 , ZFMP_4 \
640 ) \
641 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC(WrapperClass, ZF_CALLER_LINE, \
642 ReturnType, methodName \
643 , _ZFP_MtdP_EXPAND(ZFMP_0) \
644 , _ZFP_MtdP_EXPAND(ZFMP_1) \
645 , _ZFP_MtdP_EXPAND(ZFMP_2) \
646 , _ZFP_MtdP_EXPAND(ZFMP_3) \
647 , _ZFP_MtdP_EXPAND(ZFMP_4) \
648 , _ZFP_ZFMP_DUMMY() \
649 , _ZFP_ZFMP_DUMMY() \
650 , _ZFP_ZFMP_DUMMY() \
651 )
653#define ZFMethodUserRegisterForWrapperFuncStatic_5(resultMethod, OriginalClass, WrapperClass, \
654 ReturnType, methodName \
655 , ZFMP_0 \
656 , ZFMP_1 \
657 , ZFMP_2 \
658 , ZFMP_3 \
659 , ZFMP_4 \
660 ) \
661 _ZFP_ZFMethodUserRegisterForWrapperFuncStatic(resultMethod, OriginalClass, WrapperClass, \
662 ReturnType, methodName \
663 , _ZFP_MtdP_EXPAND(ZFMP_0) \
664 , _ZFP_MtdP_EXPAND(ZFMP_1) \
665 , _ZFP_MtdP_EXPAND(ZFMP_2) \
666 , _ZFP_MtdP_EXPAND(ZFMP_3) \
667 , _ZFP_MtdP_EXPAND(ZFMP_4) \
668 , _ZFP_ZFMP_DUMMY() \
669 , _ZFP_ZFMP_DUMMY() \
670 , _ZFP_ZFMP_DUMMY() \
671 )
673#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC_5(OriginalClass, WrapperClass, \
674 ReturnType, methodName \
675 , ZFMP_0 \
676 , ZFMP_1 \
677 , ZFMP_2 \
678 , ZFMP_3 \
679 , ZFMP_4 \
680 ) \
681 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC(OriginalClass, WrapperClass, \
682 ReturnType, methodName \
683 , _ZFP_MtdP_EXPAND(ZFMP_0) \
684 , _ZFP_MtdP_EXPAND(ZFMP_1) \
685 , _ZFP_MtdP_EXPAND(ZFMP_2) \
686 , _ZFP_MtdP_EXPAND(ZFMP_3) \
687 , _ZFP_MtdP_EXPAND(ZFMP_4) \
688 , _ZFP_ZFMP_DUMMY() \
689 , _ZFP_ZFMP_DUMMY() \
690 , _ZFP_ZFMP_DUMMY() \
691 )
692
693// ============================================================
694// 6 param
696#define ZFMethodUserRegisterForWrapperFunc_6(resultMethod, WrapperClass, \
697 ReturnType, methodName \
698 , ZFMP_0 \
699 , ZFMP_1 \
700 , ZFMP_2 \
701 , ZFMP_3 \
702 , ZFMP_4 \
703 , ZFMP_5 \
704 ) \
705 _ZFP_ZFMethodUserRegisterForWrapperFunc(resultMethod, WrapperClass, \
706 ReturnType, methodName \
707 , _ZFP_MtdP_EXPAND(ZFMP_0) \
708 , _ZFP_MtdP_EXPAND(ZFMP_1) \
709 , _ZFP_MtdP_EXPAND(ZFMP_2) \
710 , _ZFP_MtdP_EXPAND(ZFMP_3) \
711 , _ZFP_MtdP_EXPAND(ZFMP_4) \
712 , _ZFP_MtdP_EXPAND(ZFMP_5) \
713 , _ZFP_ZFMP_DUMMY() \
714 , _ZFP_ZFMP_DUMMY() \
715 )
717#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_6(WrapperClass, \
718 ReturnType, methodName \
719 , ZFMP_0 \
720 , ZFMP_1 \
721 , ZFMP_2 \
722 , ZFMP_3 \
723 , ZFMP_4 \
724 , ZFMP_5 \
725 ) \
726 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC(WrapperClass, ZF_CALLER_LINE, \
727 ReturnType, methodName \
728 , _ZFP_MtdP_EXPAND(ZFMP_0) \
729 , _ZFP_MtdP_EXPAND(ZFMP_1) \
730 , _ZFP_MtdP_EXPAND(ZFMP_2) \
731 , _ZFP_MtdP_EXPAND(ZFMP_3) \
732 , _ZFP_MtdP_EXPAND(ZFMP_4) \
733 , _ZFP_MtdP_EXPAND(ZFMP_5) \
734 , _ZFP_ZFMP_DUMMY() \
735 , _ZFP_ZFMP_DUMMY() \
736 )
738#define ZFMethodUserRegisterForWrapperFuncStatic_6(resultMethod, OriginalClass, WrapperClass, \
739 ReturnType, methodName \
740 , ZFMP_0 \
741 , ZFMP_1 \
742 , ZFMP_2 \
743 , ZFMP_3 \
744 , ZFMP_4 \
745 , ZFMP_5 \
746 ) \
747 _ZFP_ZFMethodUserRegisterForWrapperFuncStatic(resultMethod, OriginalClass, WrapperClass, \
748 ReturnType, methodName \
749 , _ZFP_MtdP_EXPAND(ZFMP_0) \
750 , _ZFP_MtdP_EXPAND(ZFMP_1) \
751 , _ZFP_MtdP_EXPAND(ZFMP_2) \
752 , _ZFP_MtdP_EXPAND(ZFMP_3) \
753 , _ZFP_MtdP_EXPAND(ZFMP_4) \
754 , _ZFP_MtdP_EXPAND(ZFMP_5) \
755 , _ZFP_ZFMP_DUMMY() \
756 , _ZFP_ZFMP_DUMMY() \
757 )
759#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC_6(OriginalClass, WrapperClass, \
760 ReturnType, methodName \
761 , ZFMP_0 \
762 , ZFMP_1 \
763 , ZFMP_2 \
764 , ZFMP_3 \
765 , ZFMP_4 \
766 , ZFMP_5 \
767 ) \
768 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC(OriginalClass, WrapperClass, \
769 ReturnType, methodName \
770 , _ZFP_MtdP_EXPAND(ZFMP_0) \
771 , _ZFP_MtdP_EXPAND(ZFMP_1) \
772 , _ZFP_MtdP_EXPAND(ZFMP_2) \
773 , _ZFP_MtdP_EXPAND(ZFMP_3) \
774 , _ZFP_MtdP_EXPAND(ZFMP_4) \
775 , _ZFP_MtdP_EXPAND(ZFMP_5) \
776 , _ZFP_ZFMP_DUMMY() \
777 , _ZFP_ZFMP_DUMMY() \
778 )
779
780// ============================================================
781// 7 param
783#define ZFMethodUserRegisterForWrapperFunc_7(resultMethod, WrapperClass, \
784 ReturnType, methodName \
785 , ZFMP_0 \
786 , ZFMP_1 \
787 , ZFMP_2 \
788 , ZFMP_3 \
789 , ZFMP_4 \
790 , ZFMP_5 \
791 , ZFMP_6 \
792 ) \
793 _ZFP_ZFMethodUserRegisterForWrapperFunc(resultMethod, WrapperClass, \
794 ReturnType, methodName \
795 , _ZFP_MtdP_EXPAND(ZFMP_0) \
796 , _ZFP_MtdP_EXPAND(ZFMP_1) \
797 , _ZFP_MtdP_EXPAND(ZFMP_2) \
798 , _ZFP_MtdP_EXPAND(ZFMP_3) \
799 , _ZFP_MtdP_EXPAND(ZFMP_4) \
800 , _ZFP_MtdP_EXPAND(ZFMP_5) \
801 , _ZFP_MtdP_EXPAND(ZFMP_6) \
802 , _ZFP_ZFMP_DUMMY() \
803 )
805#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_7(WrapperClass, \
806 ReturnType, methodName \
807 , ZFMP_0 \
808 , ZFMP_1 \
809 , ZFMP_2 \
810 , ZFMP_3 \
811 , ZFMP_4 \
812 , ZFMP_5 \
813 , ZFMP_6 \
814 ) \
815 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC(WrapperClass, ZF_CALLER_LINE, \
816 ReturnType, methodName \
817 , _ZFP_MtdP_EXPAND(ZFMP_0) \
818 , _ZFP_MtdP_EXPAND(ZFMP_1) \
819 , _ZFP_MtdP_EXPAND(ZFMP_2) \
820 , _ZFP_MtdP_EXPAND(ZFMP_3) \
821 , _ZFP_MtdP_EXPAND(ZFMP_4) \
822 , _ZFP_MtdP_EXPAND(ZFMP_5) \
823 , _ZFP_MtdP_EXPAND(ZFMP_6) \
824 , _ZFP_ZFMP_DUMMY() \
825 )
827#define ZFMethodUserRegisterForWrapperFuncStatic_7(resultMethod, OriginalClass, WrapperClass, \
828 ReturnType, methodName \
829 , ZFMP_0 \
830 , ZFMP_1 \
831 , ZFMP_2 \
832 , ZFMP_3 \
833 , ZFMP_4 \
834 , ZFMP_5 \
835 , ZFMP_6 \
836 ) \
837 _ZFP_ZFMethodUserRegisterForWrapperFuncStatic(resultMethod, OriginalClass, WrapperClass, \
838 ReturnType, methodName \
839 , _ZFP_MtdP_EXPAND(ZFMP_0) \
840 , _ZFP_MtdP_EXPAND(ZFMP_1) \
841 , _ZFP_MtdP_EXPAND(ZFMP_2) \
842 , _ZFP_MtdP_EXPAND(ZFMP_3) \
843 , _ZFP_MtdP_EXPAND(ZFMP_4) \
844 , _ZFP_MtdP_EXPAND(ZFMP_5) \
845 , _ZFP_MtdP_EXPAND(ZFMP_6) \
846 , _ZFP_ZFMP_DUMMY() \
847 )
849#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC_7(OriginalClass, WrapperClass, \
850 ReturnType, methodName \
851 , ZFMP_0 \
852 , ZFMP_1 \
853 , ZFMP_2 \
854 , ZFMP_3 \
855 , ZFMP_4 \
856 , ZFMP_5 \
857 , ZFMP_6 \
858 ) \
859 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC(OriginalClass, WrapperClass, \
860 ReturnType, methodName \
861 , _ZFP_MtdP_EXPAND(ZFMP_0) \
862 , _ZFP_MtdP_EXPAND(ZFMP_1) \
863 , _ZFP_MtdP_EXPAND(ZFMP_2) \
864 , _ZFP_MtdP_EXPAND(ZFMP_3) \
865 , _ZFP_MtdP_EXPAND(ZFMP_4) \
866 , _ZFP_MtdP_EXPAND(ZFMP_5) \
867 , _ZFP_MtdP_EXPAND(ZFMP_6) \
868 , _ZFP_ZFMP_DUMMY() \
869 )
870
871// ============================================================
872// 8 param
874#define ZFMethodUserRegisterForWrapperFunc_8(resultMethod, WrapperClass, \
875 ReturnType, methodName \
876 , ZFMP_0 \
877 , ZFMP_1 \
878 , ZFMP_2 \
879 , ZFMP_3 \
880 , ZFMP_4 \
881 , ZFMP_5 \
882 , ZFMP_6 \
883 , ZFMP_7 \
884 ) \
885 _ZFP_ZFMethodUserRegisterForWrapperFunc(resultMethod, WrapperClass, \
886 ReturnType, methodName \
887 , _ZFP_MtdP_EXPAND(ZFMP_0) \
888 , _ZFP_MtdP_EXPAND(ZFMP_1) \
889 , _ZFP_MtdP_EXPAND(ZFMP_2) \
890 , _ZFP_MtdP_EXPAND(ZFMP_3) \
891 , _ZFP_MtdP_EXPAND(ZFMP_4) \
892 , _ZFP_MtdP_EXPAND(ZFMP_5) \
893 , _ZFP_MtdP_EXPAND(ZFMP_6) \
894 , _ZFP_MtdP_EXPAND(ZFMP_7) \
895 )
897#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_8(WrapperClass, \
898 ReturnType, methodName \
899 , ZFMP_0 \
900 , ZFMP_1 \
901 , ZFMP_2 \
902 , ZFMP_3 \
903 , ZFMP_4 \
904 , ZFMP_5 \
905 , ZFMP_6 \
906 , ZFMP_7 \
907 ) \
908 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC(WrapperClass, ZF_CALLER_LINE, \
909 ReturnType, methodName \
910 , _ZFP_MtdP_EXPAND(ZFMP_0) \
911 , _ZFP_MtdP_EXPAND(ZFMP_1) \
912 , _ZFP_MtdP_EXPAND(ZFMP_2) \
913 , _ZFP_MtdP_EXPAND(ZFMP_3) \
914 , _ZFP_MtdP_EXPAND(ZFMP_4) \
915 , _ZFP_MtdP_EXPAND(ZFMP_5) \
916 , _ZFP_MtdP_EXPAND(ZFMP_6) \
917 , _ZFP_MtdP_EXPAND(ZFMP_7) \
918 )
920#define ZFMethodUserRegisterForWrapperFuncStatic_8(resultMethod, OriginalClass, WrapperClass, \
921 ReturnType, methodName \
922 , ZFMP_0 \
923 , ZFMP_1 \
924 , ZFMP_2 \
925 , ZFMP_3 \
926 , ZFMP_4 \
927 , ZFMP_5 \
928 , ZFMP_6 \
929 , ZFMP_7 \
930 ) \
931 _ZFP_ZFMethodUserRegisterForWrapperFuncStatic(resultMethod, OriginalClass, WrapperClass, \
932 ReturnType, methodName \
933 , _ZFP_MtdP_EXPAND(ZFMP_0) \
934 , _ZFP_MtdP_EXPAND(ZFMP_1) \
935 , _ZFP_MtdP_EXPAND(ZFMP_2) \
936 , _ZFP_MtdP_EXPAND(ZFMP_3) \
937 , _ZFP_MtdP_EXPAND(ZFMP_4) \
938 , _ZFP_MtdP_EXPAND(ZFMP_5) \
939 , _ZFP_MtdP_EXPAND(ZFMP_6) \
940 , _ZFP_MtdP_EXPAND(ZFMP_7) \
941 )
943#define ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC_8(OriginalClass, WrapperClass, \
944 ReturnType, methodName \
945 , ZFMP_0 \
946 , ZFMP_1 \
947 , ZFMP_2 \
948 , ZFMP_3 \
949 , ZFMP_4 \
950 , ZFMP_5 \
951 , ZFMP_6 \
952 , ZFMP_7 \
953 ) \
954 _ZFP_ZFMETHOD_USER_REGISTER_FOR_WRAPPER_FUNC_STATIC(OriginalClass, WrapperClass, \
955 ReturnType, methodName \
956 , _ZFP_MtdP_EXPAND(ZFMP_0) \
957 , _ZFP_MtdP_EXPAND(ZFMP_1) \
958 , _ZFP_MtdP_EXPAND(ZFMP_2) \
959 , _ZFP_MtdP_EXPAND(ZFMP_3) \
960 , _ZFP_MtdP_EXPAND(ZFMP_4) \
961 , _ZFP_MtdP_EXPAND(ZFMP_5) \
962 , _ZFP_MtdP_EXPAND(ZFMP_6) \
963 , _ZFP_MtdP_EXPAND(ZFMP_7) \
964 )
965
966/* ZFMETHOD_MAX_PARAM */
967
969#endif // #ifndef _ZFI_ZFMethodUserRegister_Wrapper_h_
970
reflectable method definination for ZFFramework
#define ZF_NAMESPACE_GLOBAL_BEGIN
begin namespace ZFFramework
Definition ZFNamespace.h:97
#define ZF_NAMESPACE_GLOBAL_END
end namespace ZFFramework
Definition ZFNamespace.h:98