rice 1.1.0 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Doxyfile +1 -1
- data/Makefile.in +3 -2
- data/README +247 -16
- data/aclocal.m4 +62 -51
- data/configure +1585 -1456
- data/extconf.rb +9 -1
- data/rice/Arg.hpp +8 -0
- data/rice/Arg_impl.hpp +124 -0
- data/rice/Arg_operators.cpp +21 -0
- data/rice/Arg_operators.hpp +19 -0
- data/rice/Constructor.hpp +150 -0
- data/rice/Data_Type.ipp +51 -6
- data/rice/Director.cpp +19 -0
- data/rice/Director.hpp +47 -0
- data/rice/Enum.hpp +2 -3
- data/rice/Enum.ipp +1 -1
- data/rice/Hash.hpp +1 -1
- data/rice/Makefile.am +7 -0
- data/rice/Makefile.in +18 -7
- data/rice/Module_impl.hpp +36 -3
- data/rice/Module_impl.ipp +56 -7
- data/rice/VM.cpp +2 -2
- data/rice/config.hpp +1 -1
- data/rice/detail/Arguments.hpp +118 -0
- data/rice/detail/Auto_Function_Wrapper.hpp +206 -96
- data/rice/detail/Auto_Function_Wrapper.ipp +1687 -144
- data/rice/detail/Auto_Member_Function_Wrapper.hpp +234 -123
- data/rice/detail/Auto_Member_Function_Wrapper.ipp +1133 -306
- data/rice/detail/Caster.hpp +3 -1
- data/rice/detail/creation_funcs.hpp +0 -8
- data/rice/detail/creation_funcs.ipp +1 -27
- data/rice/detail/define_method_and_auto_wrap.hpp +3 -1
- data/rice/detail/define_method_and_auto_wrap.ipp +4 -3
- data/rice/detail/object_call.ipp +1 -1
- data/rice/detail/ruby.hpp +1 -33
- data/rice/detail/wrap_function.hpp +103 -48
- data/rice/detail/wrap_function.ipp +154 -96
- data/rice/generate_code.rb +520 -55
- data/rice/global_function.hpp +12 -1
- data/rice/global_function.ipp +14 -2
- data/ruby/Makefile.in +5 -4
- data/ruby/lib/Makefile.in +4 -3
- data/ruby/lib/version.rb +1 -1
- data/sample/Makefile.in +4 -3
- data/test/Makefile.am +2 -0
- data/test/Makefile.in +32 -13
- data/test/test_Class.cpp +36 -14
- data/test/test_Constructor.cpp +176 -1
- data/test/test_Data_Type.cpp +121 -0
- data/test/test_Director.cpp +225 -0
- data/test/test_Enum.cpp +33 -0
- data/test/test_Module.cpp +175 -0
- data/test/test_global_functions.cpp +70 -1
- metadata +27 -7
@@ -27,18 +27,20 @@ public:
|
|
27
27
|
// typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T, Arg11_T, Arg12_T, Arg13_T, Arg14_T, Arg15_T);
|
28
28
|
typedef Func_T Func;
|
29
29
|
|
30
|
-
static const int Num_Args =
|
30
|
+
static const int Num_Args = 16;
|
31
31
|
|
32
32
|
Auto_Function_Wrapper(
|
33
33
|
Func func,
|
34
|
-
Data_Object<Exception_Handler> handler
|
34
|
+
Data_Object<Exception_Handler> handler,
|
35
|
+
Arguments* arguments = 0);
|
35
36
|
|
36
|
-
static VALUE call(
|
37
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
37
38
|
|
38
39
|
private:
|
39
40
|
Func func_;
|
40
41
|
Data_Object<Exception_Handler> handler_;
|
41
42
|
Address_Registration_Guard handler_guard_;
|
43
|
+
Arguments* arguments_;
|
42
44
|
};
|
43
45
|
|
44
46
|
template<typename Func_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T, typename Arg6_T, typename Arg7_T, typename Arg8_T, typename Arg9_T, typename Arg10_T, typename Arg11_T, typename Arg12_T, typename Arg13_T, typename Arg14_T, typename Arg15_T>
|
@@ -49,18 +51,20 @@ public:
|
|
49
51
|
// typedef void (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T, Arg11_T, Arg12_T, Arg13_T, Arg14_T, Arg15_T);
|
50
52
|
typedef Func_T Func;
|
51
53
|
|
52
|
-
static const int Num_Args =
|
54
|
+
static const int Num_Args = 16;
|
53
55
|
|
54
56
|
Auto_Function_Wrapper(
|
55
57
|
Func func,
|
56
|
-
Data_Object<Exception_Handler> handler
|
58
|
+
Data_Object<Exception_Handler> handler,
|
59
|
+
Arguments* arguments = 0);
|
57
60
|
|
58
|
-
static VALUE call(
|
61
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
59
62
|
|
60
63
|
private:
|
61
64
|
Func func_;
|
62
65
|
Data_Object<Exception_Handler> handler_;
|
63
66
|
Address_Registration_Guard handler_guard_;
|
67
|
+
Arguments* arguments_;
|
64
68
|
};
|
65
69
|
|
66
70
|
// ---------------------------------------------------------------------
|
@@ -72,18 +76,20 @@ public:
|
|
72
76
|
// typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T, Arg11_T, Arg12_T, Arg13_T, Arg14_T);
|
73
77
|
typedef Func_T Func;
|
74
78
|
|
75
|
-
static const int Num_Args =
|
79
|
+
static const int Num_Args = 15;
|
76
80
|
|
77
81
|
Auto_Function_Wrapper(
|
78
82
|
Func func,
|
79
|
-
Data_Object<Exception_Handler> handler
|
83
|
+
Data_Object<Exception_Handler> handler,
|
84
|
+
Arguments* arguments = 0);
|
80
85
|
|
81
|
-
static VALUE call(
|
86
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
82
87
|
|
83
88
|
private:
|
84
89
|
Func func_;
|
85
90
|
Data_Object<Exception_Handler> handler_;
|
86
91
|
Address_Registration_Guard handler_guard_;
|
92
|
+
Arguments* arguments_;
|
87
93
|
};
|
88
94
|
|
89
95
|
template<typename Func_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T, typename Arg6_T, typename Arg7_T, typename Arg8_T, typename Arg9_T, typename Arg10_T, typename Arg11_T, typename Arg12_T, typename Arg13_T, typename Arg14_T>
|
@@ -94,18 +100,20 @@ public:
|
|
94
100
|
// typedef void (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T, Arg11_T, Arg12_T, Arg13_T, Arg14_T);
|
95
101
|
typedef Func_T Func;
|
96
102
|
|
97
|
-
static const int Num_Args =
|
103
|
+
static const int Num_Args = 15;
|
98
104
|
|
99
105
|
Auto_Function_Wrapper(
|
100
106
|
Func func,
|
101
|
-
Data_Object<Exception_Handler> handler
|
107
|
+
Data_Object<Exception_Handler> handler,
|
108
|
+
Arguments* arguments = 0);
|
102
109
|
|
103
|
-
static VALUE call(
|
110
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
104
111
|
|
105
112
|
private:
|
106
113
|
Func func_;
|
107
114
|
Data_Object<Exception_Handler> handler_;
|
108
115
|
Address_Registration_Guard handler_guard_;
|
116
|
+
Arguments* arguments_;
|
109
117
|
};
|
110
118
|
|
111
119
|
// ---------------------------------------------------------------------
|
@@ -117,18 +125,20 @@ public:
|
|
117
125
|
// typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T, Arg11_T, Arg12_T, Arg13_T);
|
118
126
|
typedef Func_T Func;
|
119
127
|
|
120
|
-
static const int Num_Args =
|
128
|
+
static const int Num_Args = 14;
|
121
129
|
|
122
130
|
Auto_Function_Wrapper(
|
123
131
|
Func func,
|
124
|
-
Data_Object<Exception_Handler> handler
|
132
|
+
Data_Object<Exception_Handler> handler,
|
133
|
+
Arguments* arguments = 0);
|
125
134
|
|
126
|
-
static VALUE call(
|
135
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
127
136
|
|
128
137
|
private:
|
129
138
|
Func func_;
|
130
139
|
Data_Object<Exception_Handler> handler_;
|
131
140
|
Address_Registration_Guard handler_guard_;
|
141
|
+
Arguments* arguments_;
|
132
142
|
};
|
133
143
|
|
134
144
|
template<typename Func_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T, typename Arg6_T, typename Arg7_T, typename Arg8_T, typename Arg9_T, typename Arg10_T, typename Arg11_T, typename Arg12_T, typename Arg13_T>
|
@@ -139,18 +149,20 @@ public:
|
|
139
149
|
// typedef void (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T, Arg11_T, Arg12_T, Arg13_T);
|
140
150
|
typedef Func_T Func;
|
141
151
|
|
142
|
-
static const int Num_Args =
|
152
|
+
static const int Num_Args = 14;
|
143
153
|
|
144
154
|
Auto_Function_Wrapper(
|
145
155
|
Func func,
|
146
|
-
Data_Object<Exception_Handler> handler
|
156
|
+
Data_Object<Exception_Handler> handler,
|
157
|
+
Arguments* arguments = 0);
|
147
158
|
|
148
|
-
static VALUE call(
|
159
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
149
160
|
|
150
161
|
private:
|
151
162
|
Func func_;
|
152
163
|
Data_Object<Exception_Handler> handler_;
|
153
164
|
Address_Registration_Guard handler_guard_;
|
165
|
+
Arguments* arguments_;
|
154
166
|
};
|
155
167
|
|
156
168
|
// ---------------------------------------------------------------------
|
@@ -162,18 +174,20 @@ public:
|
|
162
174
|
// typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T, Arg11_T, Arg12_T);
|
163
175
|
typedef Func_T Func;
|
164
176
|
|
165
|
-
static const int Num_Args =
|
177
|
+
static const int Num_Args = 13;
|
166
178
|
|
167
179
|
Auto_Function_Wrapper(
|
168
180
|
Func func,
|
169
|
-
Data_Object<Exception_Handler> handler
|
181
|
+
Data_Object<Exception_Handler> handler,
|
182
|
+
Arguments* arguments = 0);
|
170
183
|
|
171
|
-
static VALUE call(
|
184
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
172
185
|
|
173
186
|
private:
|
174
187
|
Func func_;
|
175
188
|
Data_Object<Exception_Handler> handler_;
|
176
189
|
Address_Registration_Guard handler_guard_;
|
190
|
+
Arguments* arguments_;
|
177
191
|
};
|
178
192
|
|
179
193
|
template<typename Func_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T, typename Arg6_T, typename Arg7_T, typename Arg8_T, typename Arg9_T, typename Arg10_T, typename Arg11_T, typename Arg12_T>
|
@@ -184,18 +198,20 @@ public:
|
|
184
198
|
// typedef void (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T, Arg11_T, Arg12_T);
|
185
199
|
typedef Func_T Func;
|
186
200
|
|
187
|
-
static const int Num_Args =
|
201
|
+
static const int Num_Args = 13;
|
188
202
|
|
189
203
|
Auto_Function_Wrapper(
|
190
204
|
Func func,
|
191
|
-
Data_Object<Exception_Handler> handler
|
205
|
+
Data_Object<Exception_Handler> handler,
|
206
|
+
Arguments* arguments = 0);
|
192
207
|
|
193
|
-
static VALUE call(
|
208
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
194
209
|
|
195
210
|
private:
|
196
211
|
Func func_;
|
197
212
|
Data_Object<Exception_Handler> handler_;
|
198
213
|
Address_Registration_Guard handler_guard_;
|
214
|
+
Arguments* arguments_;
|
199
215
|
};
|
200
216
|
|
201
217
|
// ---------------------------------------------------------------------
|
@@ -207,18 +223,20 @@ public:
|
|
207
223
|
// typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T, Arg11_T);
|
208
224
|
typedef Func_T Func;
|
209
225
|
|
210
|
-
static const int Num_Args =
|
226
|
+
static const int Num_Args = 12;
|
211
227
|
|
212
228
|
Auto_Function_Wrapper(
|
213
229
|
Func func,
|
214
|
-
Data_Object<Exception_Handler> handler
|
230
|
+
Data_Object<Exception_Handler> handler,
|
231
|
+
Arguments* arguments = 0);
|
215
232
|
|
216
|
-
static VALUE call(
|
233
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
217
234
|
|
218
235
|
private:
|
219
236
|
Func func_;
|
220
237
|
Data_Object<Exception_Handler> handler_;
|
221
238
|
Address_Registration_Guard handler_guard_;
|
239
|
+
Arguments* arguments_;
|
222
240
|
};
|
223
241
|
|
224
242
|
template<typename Func_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T, typename Arg6_T, typename Arg7_T, typename Arg8_T, typename Arg9_T, typename Arg10_T, typename Arg11_T>
|
@@ -229,18 +247,20 @@ public:
|
|
229
247
|
// typedef void (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T, Arg11_T);
|
230
248
|
typedef Func_T Func;
|
231
249
|
|
232
|
-
static const int Num_Args =
|
250
|
+
static const int Num_Args = 12;
|
233
251
|
|
234
252
|
Auto_Function_Wrapper(
|
235
253
|
Func func,
|
236
|
-
Data_Object<Exception_Handler> handler
|
254
|
+
Data_Object<Exception_Handler> handler,
|
255
|
+
Arguments* arguments = 0);
|
237
256
|
|
238
|
-
static VALUE call(
|
257
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
239
258
|
|
240
259
|
private:
|
241
260
|
Func func_;
|
242
261
|
Data_Object<Exception_Handler> handler_;
|
243
262
|
Address_Registration_Guard handler_guard_;
|
263
|
+
Arguments* arguments_;
|
244
264
|
};
|
245
265
|
|
246
266
|
// ---------------------------------------------------------------------
|
@@ -252,18 +272,20 @@ public:
|
|
252
272
|
// typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T);
|
253
273
|
typedef Func_T Func;
|
254
274
|
|
255
|
-
static const int Num_Args =
|
275
|
+
static const int Num_Args = 11;
|
256
276
|
|
257
277
|
Auto_Function_Wrapper(
|
258
278
|
Func func,
|
259
|
-
Data_Object<Exception_Handler> handler
|
279
|
+
Data_Object<Exception_Handler> handler,
|
280
|
+
Arguments* arguments = 0);
|
260
281
|
|
261
|
-
static VALUE call(
|
282
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
262
283
|
|
263
284
|
private:
|
264
285
|
Func func_;
|
265
286
|
Data_Object<Exception_Handler> handler_;
|
266
287
|
Address_Registration_Guard handler_guard_;
|
288
|
+
Arguments* arguments_;
|
267
289
|
};
|
268
290
|
|
269
291
|
template<typename Func_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T, typename Arg6_T, typename Arg7_T, typename Arg8_T, typename Arg9_T, typename Arg10_T>
|
@@ -274,18 +296,20 @@ public:
|
|
274
296
|
// typedef void (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T);
|
275
297
|
typedef Func_T Func;
|
276
298
|
|
277
|
-
static const int Num_Args =
|
299
|
+
static const int Num_Args = 11;
|
278
300
|
|
279
301
|
Auto_Function_Wrapper(
|
280
302
|
Func func,
|
281
|
-
Data_Object<Exception_Handler> handler
|
303
|
+
Data_Object<Exception_Handler> handler,
|
304
|
+
Arguments* arguments = 0);
|
282
305
|
|
283
|
-
static VALUE call(
|
306
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
284
307
|
|
285
308
|
private:
|
286
309
|
Func func_;
|
287
310
|
Data_Object<Exception_Handler> handler_;
|
288
311
|
Address_Registration_Guard handler_guard_;
|
312
|
+
Arguments* arguments_;
|
289
313
|
};
|
290
314
|
|
291
315
|
// ---------------------------------------------------------------------
|
@@ -297,18 +321,20 @@ public:
|
|
297
321
|
// typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T);
|
298
322
|
typedef Func_T Func;
|
299
323
|
|
300
|
-
static const int Num_Args =
|
324
|
+
static const int Num_Args = 10;
|
301
325
|
|
302
326
|
Auto_Function_Wrapper(
|
303
327
|
Func func,
|
304
|
-
Data_Object<Exception_Handler> handler
|
328
|
+
Data_Object<Exception_Handler> handler,
|
329
|
+
Arguments* arguments = 0);
|
305
330
|
|
306
|
-
static VALUE call(
|
331
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
307
332
|
|
308
333
|
private:
|
309
334
|
Func func_;
|
310
335
|
Data_Object<Exception_Handler> handler_;
|
311
336
|
Address_Registration_Guard handler_guard_;
|
337
|
+
Arguments* arguments_;
|
312
338
|
};
|
313
339
|
|
314
340
|
template<typename Func_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T, typename Arg6_T, typename Arg7_T, typename Arg8_T, typename Arg9_T>
|
@@ -319,18 +345,20 @@ public:
|
|
319
345
|
// typedef void (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T);
|
320
346
|
typedef Func_T Func;
|
321
347
|
|
322
|
-
static const int Num_Args =
|
348
|
+
static const int Num_Args = 10;
|
323
349
|
|
324
350
|
Auto_Function_Wrapper(
|
325
351
|
Func func,
|
326
|
-
Data_Object<Exception_Handler> handler
|
352
|
+
Data_Object<Exception_Handler> handler,
|
353
|
+
Arguments* arguments = 0);
|
327
354
|
|
328
|
-
static VALUE call(
|
355
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
329
356
|
|
330
357
|
private:
|
331
358
|
Func func_;
|
332
359
|
Data_Object<Exception_Handler> handler_;
|
333
360
|
Address_Registration_Guard handler_guard_;
|
361
|
+
Arguments* arguments_;
|
334
362
|
};
|
335
363
|
|
336
364
|
// ---------------------------------------------------------------------
|
@@ -342,18 +370,20 @@ public:
|
|
342
370
|
// typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T);
|
343
371
|
typedef Func_T Func;
|
344
372
|
|
345
|
-
static const int Num_Args =
|
373
|
+
static const int Num_Args = 9;
|
346
374
|
|
347
375
|
Auto_Function_Wrapper(
|
348
376
|
Func func,
|
349
|
-
Data_Object<Exception_Handler> handler
|
377
|
+
Data_Object<Exception_Handler> handler,
|
378
|
+
Arguments* arguments = 0);
|
350
379
|
|
351
|
-
static VALUE call(
|
380
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
352
381
|
|
353
382
|
private:
|
354
383
|
Func func_;
|
355
384
|
Data_Object<Exception_Handler> handler_;
|
356
385
|
Address_Registration_Guard handler_guard_;
|
386
|
+
Arguments* arguments_;
|
357
387
|
};
|
358
388
|
|
359
389
|
template<typename Func_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T, typename Arg6_T, typename Arg7_T, typename Arg8_T>
|
@@ -364,18 +394,20 @@ public:
|
|
364
394
|
// typedef void (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T);
|
365
395
|
typedef Func_T Func;
|
366
396
|
|
367
|
-
static const int Num_Args =
|
397
|
+
static const int Num_Args = 9;
|
368
398
|
|
369
399
|
Auto_Function_Wrapper(
|
370
400
|
Func func,
|
371
|
-
Data_Object<Exception_Handler> handler
|
401
|
+
Data_Object<Exception_Handler> handler,
|
402
|
+
Arguments* arguments = 0);
|
372
403
|
|
373
|
-
static VALUE call(
|
404
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
374
405
|
|
375
406
|
private:
|
376
407
|
Func func_;
|
377
408
|
Data_Object<Exception_Handler> handler_;
|
378
409
|
Address_Registration_Guard handler_guard_;
|
410
|
+
Arguments* arguments_;
|
379
411
|
};
|
380
412
|
|
381
413
|
// ---------------------------------------------------------------------
|
@@ -387,18 +419,20 @@ public:
|
|
387
419
|
// typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T);
|
388
420
|
typedef Func_T Func;
|
389
421
|
|
390
|
-
static const int Num_Args =
|
422
|
+
static const int Num_Args = 8;
|
391
423
|
|
392
424
|
Auto_Function_Wrapper(
|
393
425
|
Func func,
|
394
|
-
Data_Object<Exception_Handler> handler
|
426
|
+
Data_Object<Exception_Handler> handler,
|
427
|
+
Arguments* arguments = 0);
|
395
428
|
|
396
|
-
static VALUE call(
|
429
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
397
430
|
|
398
431
|
private:
|
399
432
|
Func func_;
|
400
433
|
Data_Object<Exception_Handler> handler_;
|
401
434
|
Address_Registration_Guard handler_guard_;
|
435
|
+
Arguments* arguments_;
|
402
436
|
};
|
403
437
|
|
404
438
|
template<typename Func_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T, typename Arg6_T, typename Arg7_T>
|
@@ -409,18 +443,20 @@ public:
|
|
409
443
|
// typedef void (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T);
|
410
444
|
typedef Func_T Func;
|
411
445
|
|
412
|
-
static const int Num_Args =
|
446
|
+
static const int Num_Args = 8;
|
413
447
|
|
414
448
|
Auto_Function_Wrapper(
|
415
449
|
Func func,
|
416
|
-
Data_Object<Exception_Handler> handler
|
450
|
+
Data_Object<Exception_Handler> handler,
|
451
|
+
Arguments* arguments = 0);
|
417
452
|
|
418
|
-
static VALUE call(
|
453
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
419
454
|
|
420
455
|
private:
|
421
456
|
Func func_;
|
422
457
|
Data_Object<Exception_Handler> handler_;
|
423
458
|
Address_Registration_Guard handler_guard_;
|
459
|
+
Arguments* arguments_;
|
424
460
|
};
|
425
461
|
|
426
462
|
// ---------------------------------------------------------------------
|
@@ -432,18 +468,20 @@ public:
|
|
432
468
|
// typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T);
|
433
469
|
typedef Func_T Func;
|
434
470
|
|
435
|
-
static const int Num_Args =
|
471
|
+
static const int Num_Args = 7;
|
436
472
|
|
437
473
|
Auto_Function_Wrapper(
|
438
474
|
Func func,
|
439
|
-
Data_Object<Exception_Handler> handler
|
475
|
+
Data_Object<Exception_Handler> handler,
|
476
|
+
Arguments* arguments = 0);
|
440
477
|
|
441
|
-
static VALUE call(
|
478
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
442
479
|
|
443
480
|
private:
|
444
481
|
Func func_;
|
445
482
|
Data_Object<Exception_Handler> handler_;
|
446
483
|
Address_Registration_Guard handler_guard_;
|
484
|
+
Arguments* arguments_;
|
447
485
|
};
|
448
486
|
|
449
487
|
template<typename Func_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T, typename Arg6_T>
|
@@ -454,18 +492,20 @@ public:
|
|
454
492
|
// typedef void (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T);
|
455
493
|
typedef Func_T Func;
|
456
494
|
|
457
|
-
static const int Num_Args =
|
495
|
+
static const int Num_Args = 7;
|
458
496
|
|
459
497
|
Auto_Function_Wrapper(
|
460
498
|
Func func,
|
461
|
-
Data_Object<Exception_Handler> handler
|
499
|
+
Data_Object<Exception_Handler> handler,
|
500
|
+
Arguments* arguments = 0);
|
462
501
|
|
463
|
-
static VALUE call(
|
502
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
464
503
|
|
465
504
|
private:
|
466
505
|
Func func_;
|
467
506
|
Data_Object<Exception_Handler> handler_;
|
468
507
|
Address_Registration_Guard handler_guard_;
|
508
|
+
Arguments* arguments_;
|
469
509
|
};
|
470
510
|
|
471
511
|
// ---------------------------------------------------------------------
|
@@ -477,18 +517,20 @@ public:
|
|
477
517
|
// typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T);
|
478
518
|
typedef Func_T Func;
|
479
519
|
|
480
|
-
static const int Num_Args =
|
520
|
+
static const int Num_Args = 6;
|
481
521
|
|
482
522
|
Auto_Function_Wrapper(
|
483
523
|
Func func,
|
484
|
-
Data_Object<Exception_Handler> handler
|
524
|
+
Data_Object<Exception_Handler> handler,
|
525
|
+
Arguments* arguments = 0);
|
485
526
|
|
486
|
-
static VALUE call(
|
527
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
487
528
|
|
488
529
|
private:
|
489
530
|
Func func_;
|
490
531
|
Data_Object<Exception_Handler> handler_;
|
491
532
|
Address_Registration_Guard handler_guard_;
|
533
|
+
Arguments* arguments_;
|
492
534
|
};
|
493
535
|
|
494
536
|
template<typename Func_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T>
|
@@ -499,18 +541,20 @@ public:
|
|
499
541
|
// typedef void (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T);
|
500
542
|
typedef Func_T Func;
|
501
543
|
|
502
|
-
static const int Num_Args =
|
544
|
+
static const int Num_Args = 6;
|
503
545
|
|
504
546
|
Auto_Function_Wrapper(
|
505
547
|
Func func,
|
506
|
-
Data_Object<Exception_Handler> handler
|
548
|
+
Data_Object<Exception_Handler> handler,
|
549
|
+
Arguments* arguments = 0);
|
507
550
|
|
508
|
-
static VALUE call(
|
551
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
509
552
|
|
510
553
|
private:
|
511
554
|
Func func_;
|
512
555
|
Data_Object<Exception_Handler> handler_;
|
513
556
|
Address_Registration_Guard handler_guard_;
|
557
|
+
Arguments* arguments_;
|
514
558
|
};
|
515
559
|
|
516
560
|
// ---------------------------------------------------------------------
|
@@ -522,18 +566,20 @@ public:
|
|
522
566
|
// typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T);
|
523
567
|
typedef Func_T Func;
|
524
568
|
|
525
|
-
static const int Num_Args =
|
569
|
+
static const int Num_Args = 5;
|
526
570
|
|
527
571
|
Auto_Function_Wrapper(
|
528
572
|
Func func,
|
529
|
-
Data_Object<Exception_Handler> handler
|
573
|
+
Data_Object<Exception_Handler> handler,
|
574
|
+
Arguments* arguments = 0);
|
530
575
|
|
531
|
-
static VALUE call(
|
576
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
532
577
|
|
533
578
|
private:
|
534
579
|
Func func_;
|
535
580
|
Data_Object<Exception_Handler> handler_;
|
536
581
|
Address_Registration_Guard handler_guard_;
|
582
|
+
Arguments* arguments_;
|
537
583
|
};
|
538
584
|
|
539
585
|
template<typename Func_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T>
|
@@ -544,18 +590,20 @@ public:
|
|
544
590
|
// typedef void (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T);
|
545
591
|
typedef Func_T Func;
|
546
592
|
|
547
|
-
static const int Num_Args =
|
593
|
+
static const int Num_Args = 5;
|
548
594
|
|
549
595
|
Auto_Function_Wrapper(
|
550
596
|
Func func,
|
551
|
-
Data_Object<Exception_Handler> handler
|
597
|
+
Data_Object<Exception_Handler> handler,
|
598
|
+
Arguments* arguments = 0);
|
552
599
|
|
553
|
-
static VALUE call(
|
600
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
554
601
|
|
555
602
|
private:
|
556
603
|
Func func_;
|
557
604
|
Data_Object<Exception_Handler> handler_;
|
558
605
|
Address_Registration_Guard handler_guard_;
|
606
|
+
Arguments* arguments_;
|
559
607
|
};
|
560
608
|
|
561
609
|
// ---------------------------------------------------------------------
|
@@ -567,18 +615,20 @@ public:
|
|
567
615
|
// typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T);
|
568
616
|
typedef Func_T Func;
|
569
617
|
|
570
|
-
static const int Num_Args =
|
618
|
+
static const int Num_Args = 4;
|
571
619
|
|
572
620
|
Auto_Function_Wrapper(
|
573
621
|
Func func,
|
574
|
-
Data_Object<Exception_Handler> handler
|
622
|
+
Data_Object<Exception_Handler> handler,
|
623
|
+
Arguments* arguments = 0);
|
575
624
|
|
576
|
-
static VALUE call(
|
625
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
577
626
|
|
578
627
|
private:
|
579
628
|
Func func_;
|
580
629
|
Data_Object<Exception_Handler> handler_;
|
581
630
|
Address_Registration_Guard handler_guard_;
|
631
|
+
Arguments* arguments_;
|
582
632
|
};
|
583
633
|
|
584
634
|
template<typename Func_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T>
|
@@ -589,18 +639,20 @@ public:
|
|
589
639
|
// typedef void (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T);
|
590
640
|
typedef Func_T Func;
|
591
641
|
|
592
|
-
static const int Num_Args =
|
642
|
+
static const int Num_Args = 4;
|
593
643
|
|
594
644
|
Auto_Function_Wrapper(
|
595
645
|
Func func,
|
596
|
-
Data_Object<Exception_Handler> handler
|
646
|
+
Data_Object<Exception_Handler> handler,
|
647
|
+
Arguments* arguments = 0);
|
597
648
|
|
598
|
-
static VALUE call(
|
649
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
599
650
|
|
600
651
|
private:
|
601
652
|
Func func_;
|
602
653
|
Data_Object<Exception_Handler> handler_;
|
603
654
|
Address_Registration_Guard handler_guard_;
|
655
|
+
Arguments* arguments_;
|
604
656
|
};
|
605
657
|
|
606
658
|
// ---------------------------------------------------------------------
|
@@ -612,18 +664,20 @@ public:
|
|
612
664
|
// typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T);
|
613
665
|
typedef Func_T Func;
|
614
666
|
|
615
|
-
static const int Num_Args =
|
667
|
+
static const int Num_Args = 3;
|
616
668
|
|
617
669
|
Auto_Function_Wrapper(
|
618
670
|
Func func,
|
619
|
-
Data_Object<Exception_Handler> handler
|
671
|
+
Data_Object<Exception_Handler> handler,
|
672
|
+
Arguments* arguments = 0);
|
620
673
|
|
621
|
-
static VALUE call(
|
674
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
622
675
|
|
623
676
|
private:
|
624
677
|
Func func_;
|
625
678
|
Data_Object<Exception_Handler> handler_;
|
626
679
|
Address_Registration_Guard handler_guard_;
|
680
|
+
Arguments* arguments_;
|
627
681
|
};
|
628
682
|
|
629
683
|
template<typename Func_T, typename Arg0_T, typename Arg1_T, typename Arg2_T>
|
@@ -634,18 +688,20 @@ public:
|
|
634
688
|
// typedef void (*Func)(Arg0_T, Arg1_T, Arg2_T);
|
635
689
|
typedef Func_T Func;
|
636
690
|
|
637
|
-
static const int Num_Args =
|
691
|
+
static const int Num_Args = 3;
|
638
692
|
|
639
693
|
Auto_Function_Wrapper(
|
640
694
|
Func func,
|
641
|
-
Data_Object<Exception_Handler> handler
|
695
|
+
Data_Object<Exception_Handler> handler,
|
696
|
+
Arguments* arguments = 0);
|
642
697
|
|
643
|
-
static VALUE call(
|
698
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
644
699
|
|
645
700
|
private:
|
646
701
|
Func func_;
|
647
702
|
Data_Object<Exception_Handler> handler_;
|
648
703
|
Address_Registration_Guard handler_guard_;
|
704
|
+
Arguments* arguments_;
|
649
705
|
};
|
650
706
|
|
651
707
|
// ---------------------------------------------------------------------
|
@@ -657,18 +713,20 @@ public:
|
|
657
713
|
// typedef Ret_T (*Func)(Arg0_T, Arg1_T);
|
658
714
|
typedef Func_T Func;
|
659
715
|
|
660
|
-
static const int Num_Args =
|
716
|
+
static const int Num_Args = 2;
|
661
717
|
|
662
718
|
Auto_Function_Wrapper(
|
663
719
|
Func func,
|
664
|
-
Data_Object<Exception_Handler> handler
|
720
|
+
Data_Object<Exception_Handler> handler,
|
721
|
+
Arguments* arguments = 0);
|
665
722
|
|
666
|
-
static VALUE call(VALUE
|
723
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
667
724
|
|
668
725
|
private:
|
669
726
|
Func func_;
|
670
727
|
Data_Object<Exception_Handler> handler_;
|
671
728
|
Address_Registration_Guard handler_guard_;
|
729
|
+
Arguments* arguments_;
|
672
730
|
};
|
673
731
|
|
674
732
|
template<typename Func_T, typename Arg0_T, typename Arg1_T>
|
@@ -679,18 +737,20 @@ public:
|
|
679
737
|
// typedef void (*Func)(Arg0_T, Arg1_T);
|
680
738
|
typedef Func_T Func;
|
681
739
|
|
682
|
-
static const int Num_Args =
|
740
|
+
static const int Num_Args = 2;
|
683
741
|
|
684
742
|
Auto_Function_Wrapper(
|
685
743
|
Func func,
|
686
|
-
Data_Object<Exception_Handler> handler
|
744
|
+
Data_Object<Exception_Handler> handler,
|
745
|
+
Arguments* arguments = 0);
|
687
746
|
|
688
|
-
static VALUE call(VALUE
|
747
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
689
748
|
|
690
749
|
private:
|
691
750
|
Func func_;
|
692
751
|
Data_Object<Exception_Handler> handler_;
|
693
752
|
Address_Registration_Guard handler_guard_;
|
753
|
+
Arguments* arguments_;
|
694
754
|
};
|
695
755
|
|
696
756
|
// ---------------------------------------------------------------------
|
@@ -702,18 +762,20 @@ public:
|
|
702
762
|
// typedef Ret_T (*Func)(Arg0_T);
|
703
763
|
typedef Func_T Func;
|
704
764
|
|
705
|
-
static const int Num_Args =
|
765
|
+
static const int Num_Args = 1;
|
706
766
|
|
707
767
|
Auto_Function_Wrapper(
|
708
768
|
Func func,
|
709
|
-
Data_Object<Exception_Handler> handler
|
769
|
+
Data_Object<Exception_Handler> handler,
|
770
|
+
Arguments* arguments = 0);
|
710
771
|
|
711
|
-
static VALUE call(VALUE
|
772
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
712
773
|
|
713
774
|
private:
|
714
775
|
Func func_;
|
715
776
|
Data_Object<Exception_Handler> handler_;
|
716
777
|
Address_Registration_Guard handler_guard_;
|
778
|
+
Arguments* arguments_;
|
717
779
|
};
|
718
780
|
|
719
781
|
template<typename Func_T, typename Arg0_T>
|
@@ -724,21 +786,69 @@ public:
|
|
724
786
|
// typedef void (*Func)(Arg0_T);
|
725
787
|
typedef Func_T Func;
|
726
788
|
|
727
|
-
static const int Num_Args =
|
789
|
+
static const int Num_Args = 1;
|
728
790
|
|
729
791
|
Auto_Function_Wrapper(
|
730
792
|
Func func,
|
731
|
-
Data_Object<Exception_Handler> handler
|
793
|
+
Data_Object<Exception_Handler> handler,
|
794
|
+
Arguments* arguments = 0);
|
732
795
|
|
733
|
-
static VALUE call(VALUE
|
796
|
+
static VALUE call(int argc, VALUE* args, VALUE self);
|
734
797
|
|
735
798
|
private:
|
736
799
|
Func func_;
|
737
800
|
Data_Object<Exception_Handler> handler_;
|
738
801
|
Address_Registration_Guard handler_guard_;
|
802
|
+
Arguments* arguments_;
|
739
803
|
};
|
740
804
|
|
741
805
|
// ---------------------------------------------------------------------
|
806
|
+
|
807
|
+
template<typename Func_T, typename Ret_T>
|
808
|
+
class Auto_Function_Wrapper<Func_T, Ret_T>
|
809
|
+
: public Wrapped_Function
|
810
|
+
{
|
811
|
+
public:
|
812
|
+
// typedef void (*Func)();
|
813
|
+
typedef Func_T Func;
|
814
|
+
|
815
|
+
static const int Num_Args = 0;
|
816
|
+
|
817
|
+
Auto_Function_Wrapper(
|
818
|
+
Func func,
|
819
|
+
Data_Object<Exception_Handler> handler,
|
820
|
+
Arguments* arguments = new Arguments());
|
821
|
+
|
822
|
+
static VALUE call();
|
823
|
+
|
824
|
+
private:
|
825
|
+
Func func_;
|
826
|
+
Data_Object<Exception_Handler> handler_;
|
827
|
+
Arguments* arguments_;
|
828
|
+
};
|
829
|
+
|
830
|
+
template<typename Func_T>
|
831
|
+
class Auto_Function_Wrapper<Func_T, void>
|
832
|
+
: public Wrapped_Function
|
833
|
+
{
|
834
|
+
public:
|
835
|
+
// typedef void (*Func)();
|
836
|
+
typedef Func_T Func;
|
837
|
+
|
838
|
+
static const int Num_Args = 0;
|
839
|
+
|
840
|
+
Auto_Function_Wrapper(
|
841
|
+
Func func,
|
842
|
+
Data_Object<Exception_Handler> handler,
|
843
|
+
Arguments* arguments = new Arguments());
|
844
|
+
|
845
|
+
static VALUE call();
|
846
|
+
|
847
|
+
private:
|
848
|
+
Func func_;
|
849
|
+
Data_Object<Exception_Handler> handler_;
|
850
|
+
Arguments* arguments_;
|
851
|
+
};
|
742
852
|
#endif // DOXYGEN
|
743
853
|
|
744
854
|
} // namespace detail
|