rice 2.1.3 → 4.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (246) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +121 -0
  3. data/CONTRIBUTORS.md +19 -0
  4. data/COPYING +2 -2
  5. data/Gemfile +3 -0
  6. data/README.md +45 -1028
  7. data/Rakefile +95 -12
  8. data/include/rice/rice.hpp +7766 -0
  9. data/include/rice/stl.hpp +1113 -0
  10. data/lib/mkmf-rice.rb +127 -0
  11. data/lib/version.rb +3 -0
  12. data/rice/Address_Registration_Guard.ipp +75 -32
  13. data/rice/Address_Registration_Guard_defn.hpp +60 -56
  14. data/rice/Arg.hpp +80 -4
  15. data/rice/Arg.ipp +51 -0
  16. data/rice/Constructor.hpp +30 -376
  17. data/rice/Data_Object.ipp +234 -107
  18. data/rice/Data_Object_defn.hpp +77 -117
  19. data/rice/Data_Type.hpp +1 -2
  20. data/rice/Data_Type.ipp +251 -295
  21. data/rice/Data_Type_defn.hpp +175 -243
  22. data/rice/Director.hpp +14 -9
  23. data/rice/Enum.hpp +54 -104
  24. data/rice/Enum.ipp +104 -230
  25. data/rice/Exception.hpp +2 -8
  26. data/rice/Exception.ipp +65 -0
  27. data/rice/Exception_defn.hpp +46 -47
  28. data/rice/Identifier.hpp +28 -28
  29. data/rice/Identifier.ipp +23 -27
  30. data/rice/Return.hpp +39 -0
  31. data/rice/Return.ipp +33 -0
  32. data/rice/detail/Exception_Handler.ipp +22 -62
  33. data/rice/detail/Exception_Handler_defn.hpp +76 -91
  34. data/rice/detail/Iterator.hpp +18 -88
  35. data/rice/detail/Iterator.ipp +47 -0
  36. data/rice/detail/Jump_Tag.hpp +21 -0
  37. data/rice/detail/MethodInfo.hpp +44 -0
  38. data/rice/detail/MethodInfo.ipp +78 -0
  39. data/rice/detail/NativeAttribute.hpp +53 -0
  40. data/rice/detail/NativeAttribute.ipp +83 -0
  41. data/rice/detail/NativeFunction.hpp +69 -0
  42. data/rice/detail/NativeFunction.ipp +248 -0
  43. data/rice/detail/RubyFunction.hpp +39 -0
  44. data/rice/detail/RubyFunction.ipp +92 -0
  45. data/rice/detail/Type.hpp +29 -0
  46. data/rice/detail/Type.ipp +138 -0
  47. data/rice/detail/TypeRegistry.hpp +50 -0
  48. data/rice/detail/TypeRegistry.ipp +106 -0
  49. data/rice/detail/Wrapper.hpp +51 -0
  50. data/rice/detail/Wrapper.ipp +151 -0
  51. data/rice/detail/default_allocation_func.hpp +8 -19
  52. data/rice/detail/default_allocation_func.ipp +9 -8
  53. data/rice/detail/from_ruby.hpp +2 -37
  54. data/rice/detail/from_ruby.ipp +1020 -46
  55. data/rice/detail/from_ruby_defn.hpp +38 -0
  56. data/rice/detail/function_traits.hpp +124 -0
  57. data/rice/detail/method_data.hpp +23 -15
  58. data/rice/detail/method_data.ipp +53 -0
  59. data/rice/detail/rice_traits.hpp +116 -0
  60. data/rice/detail/ruby.hpp +9 -50
  61. data/rice/detail/to_ruby.hpp +3 -17
  62. data/rice/detail/to_ruby.ipp +409 -31
  63. data/rice/detail/to_ruby_defn.hpp +48 -0
  64. data/rice/forward_declares.ipp +82 -0
  65. data/rice/global_function.hpp +16 -20
  66. data/rice/global_function.ipp +8 -17
  67. data/rice/rice.hpp +59 -0
  68. data/rice/ruby_mark.hpp +5 -3
  69. data/rice/ruby_try_catch.hpp +4 -4
  70. data/rice/stl.hpp +11 -0
  71. data/sample/callbacks/extconf.rb +6 -0
  72. data/sample/callbacks/sample_callbacks.cpp +35 -0
  73. data/sample/callbacks/test.rb +28 -0
  74. data/sample/enum/extconf.rb +3 -0
  75. data/sample/enum/sample_enum.cpp +3 -17
  76. data/sample/enum/test.rb +2 -2
  77. data/sample/inheritance/animals.cpp +8 -24
  78. data/sample/inheritance/extconf.rb +3 -0
  79. data/sample/inheritance/test.rb +1 -1
  80. data/sample/map/extconf.rb +3 -0
  81. data/sample/map/map.cpp +10 -18
  82. data/sample/map/test.rb +1 -1
  83. data/test/embed_ruby.cpp +34 -0
  84. data/test/embed_ruby.hpp +4 -0
  85. data/test/ext/t1/extconf.rb +3 -0
  86. data/test/ext/t1/t1.cpp +1 -3
  87. data/test/ext/t2/extconf.rb +3 -0
  88. data/test/ext/t2/t2.cpp +1 -1
  89. data/test/extconf.rb +23 -0
  90. data/test/ruby/test_callbacks_sample.rb +28 -0
  91. data/test/ruby/test_multiple_extensions.rb +18 -0
  92. data/test/ruby/test_multiple_extensions_same_class.rb +14 -0
  93. data/test/ruby/test_multiple_extensions_with_inheritance.rb +20 -0
  94. data/test/test_Address_Registration_Guard.cpp +25 -11
  95. data/test/test_Array.cpp +131 -74
  96. data/test/test_Attribute.cpp +147 -0
  97. data/test/test_Builtin_Object.cpp +36 -15
  98. data/test/test_Class.cpp +151 -276
  99. data/test/test_Constructor.cpp +10 -9
  100. data/test/test_Data_Object.cpp +135 -193
  101. data/test/test_Data_Type.cpp +323 -252
  102. data/test/test_Director.cpp +56 -42
  103. data/test/test_Enum.cpp +230 -104
  104. data/test/test_Exception.cpp +7 -7
  105. data/test/test_Hash.cpp +33 -31
  106. data/test/test_Identifier.cpp +6 -6
  107. data/test/test_Inheritance.cpp +221 -0
  108. data/test/test_Iterator.cpp +161 -0
  109. data/test/test_Jump_Tag.cpp +1 -1
  110. data/test/test_Keep_Alive.cpp +161 -0
  111. data/test/test_Memory_Management.cpp +4 -5
  112. data/test/test_Module.cpp +169 -111
  113. data/test/test_Object.cpp +51 -19
  114. data/test/test_Ownership.cpp +275 -0
  115. data/test/test_Self.cpp +205 -0
  116. data/test/test_Stl_Optional.cpp +90 -0
  117. data/test/test_Stl_Pair.cpp +144 -0
  118. data/test/test_Stl_SmartPointer.cpp +200 -0
  119. data/test/test_Stl_String.cpp +74 -0
  120. data/test/test_Stl_Vector.cpp +652 -0
  121. data/test/test_String.cpp +3 -3
  122. data/test/test_Struct.cpp +31 -40
  123. data/test/test_Symbol.cpp +3 -3
  124. data/test/test_To_From_Ruby.cpp +283 -218
  125. data/test/test_global_functions.cpp +41 -20
  126. data/test/unittest.cpp +34 -8
  127. data/test/unittest.hpp +0 -4
  128. metadata +121 -136
  129. data/Doxyfile +0 -2268
  130. data/Makefile.am +0 -26
  131. data/Makefile.in +0 -923
  132. data/README.mingw +0 -8
  133. data/aclocal.m4 +0 -1088
  134. data/bootstrap +0 -8
  135. data/check_stdcxx_11.ac +0 -103
  136. data/config.guess +0 -1421
  137. data/config.sub +0 -1807
  138. data/configure +0 -7367
  139. data/configure.ac +0 -55
  140. data/depcomp +0 -791
  141. data/doxygen.ac +0 -314
  142. data/doxygen.am +0 -186
  143. data/extconf.rb +0 -69
  144. data/install-sh +0 -501
  145. data/missing +0 -215
  146. data/post-autoconf.rb +0 -22
  147. data/post-automake.rb +0 -28
  148. data/rice/Address_Registration_Guard.cpp +0 -22
  149. data/rice/Arg_impl.hpp +0 -129
  150. data/rice/Arg_operators.cpp +0 -21
  151. data/rice/Arg_operators.hpp +0 -19
  152. data/rice/Array.hpp +0 -214
  153. data/rice/Array.ipp +0 -256
  154. data/rice/Builtin_Object.hpp +0 -8
  155. data/rice/Builtin_Object.ipp +0 -50
  156. data/rice/Builtin_Object_defn.hpp +0 -50
  157. data/rice/Class.cpp +0 -57
  158. data/rice/Class.hpp +0 -8
  159. data/rice/Class.ipp +0 -6
  160. data/rice/Class_defn.hpp +0 -83
  161. data/rice/Data_Type.cpp +0 -54
  162. data/rice/Data_Type_fwd.hpp +0 -12
  163. data/rice/Director.cpp +0 -13
  164. data/rice/Exception.cpp +0 -59
  165. data/rice/Exception_Base.hpp +0 -8
  166. data/rice/Exception_Base.ipp +0 -13
  167. data/rice/Exception_Base_defn.hpp +0 -27
  168. data/rice/Hash.hpp +0 -227
  169. data/rice/Hash.ipp +0 -329
  170. data/rice/Identifier.cpp +0 -8
  171. data/rice/Jump_Tag.hpp +0 -24
  172. data/rice/Makefile.am +0 -125
  173. data/rice/Makefile.in +0 -888
  174. data/rice/Module.cpp +0 -84
  175. data/rice/Module.hpp +0 -8
  176. data/rice/Module.ipp +0 -6
  177. data/rice/Module_defn.hpp +0 -88
  178. data/rice/Module_impl.hpp +0 -281
  179. data/rice/Module_impl.ipp +0 -345
  180. data/rice/Object.cpp +0 -169
  181. data/rice/Object.hpp +0 -8
  182. data/rice/Object.ipp +0 -19
  183. data/rice/Object_defn.hpp +0 -191
  184. data/rice/Require_Guard.hpp +0 -21
  185. data/rice/String.cpp +0 -94
  186. data/rice/String.hpp +0 -91
  187. data/rice/Struct.cpp +0 -117
  188. data/rice/Struct.hpp +0 -162
  189. data/rice/Struct.ipp +0 -26
  190. data/rice/Symbol.cpp +0 -25
  191. data/rice/Symbol.hpp +0 -66
  192. data/rice/Symbol.ipp +0 -44
  193. data/rice/config.hpp +0 -47
  194. data/rice/config.hpp.in +0 -46
  195. data/rice/detail/Arguments.hpp +0 -118
  196. data/rice/detail/Auto_Function_Wrapper.hpp +0 -898
  197. data/rice/detail/Auto_Function_Wrapper.ipp +0 -3694
  198. data/rice/detail/Auto_Member_Function_Wrapper.hpp +0 -897
  199. data/rice/detail/Auto_Member_Function_Wrapper.ipp +0 -2774
  200. data/rice/detail/Caster.hpp +0 -103
  201. data/rice/detail/Not_Copyable.hpp +0 -25
  202. data/rice/detail/Wrapped_Function.hpp +0 -33
  203. data/rice/detail/cfp.hpp +0 -24
  204. data/rice/detail/cfp.ipp +0 -51
  205. data/rice/detail/check_ruby_type.cpp +0 -27
  206. data/rice/detail/check_ruby_type.hpp +0 -23
  207. data/rice/detail/creation_funcs.hpp +0 -37
  208. data/rice/detail/creation_funcs.ipp +0 -36
  209. data/rice/detail/define_method_and_auto_wrap.hpp +0 -31
  210. data/rice/detail/define_method_and_auto_wrap.ipp +0 -30
  211. data/rice/detail/demangle.cpp +0 -56
  212. data/rice/detail/demangle.hpp +0 -19
  213. data/rice/detail/env.hpp +0 -11
  214. data/rice/detail/method_data.cpp +0 -86
  215. data/rice/detail/node.hpp +0 -13
  216. data/rice/detail/object_call.hpp +0 -69
  217. data/rice/detail/object_call.ipp +0 -131
  218. data/rice/detail/protect.cpp +0 -29
  219. data/rice/detail/protect.hpp +0 -34
  220. data/rice/detail/ruby_version_code.hpp +0 -6
  221. data/rice/detail/ruby_version_code.hpp.in +0 -6
  222. data/rice/detail/st.hpp +0 -22
  223. data/rice/detail/traits.hpp +0 -43
  224. data/rice/detail/win32.hpp +0 -16
  225. data/rice/detail/wrap_function.hpp +0 -341
  226. data/rice/detail/wrap_function.ipp +0 -514
  227. data/rice/protect.hpp +0 -92
  228. data/rice/protect.ipp +0 -1134
  229. data/rice/rubypp.rb +0 -97
  230. data/rice/to_from_ruby.hpp +0 -8
  231. data/rice/to_from_ruby.ipp +0 -294
  232. data/rice/to_from_ruby_defn.hpp +0 -70
  233. data/ruby.ac +0 -135
  234. data/ruby/Makefile.am +0 -1
  235. data/ruby/Makefile.in +0 -628
  236. data/ruby/lib/Makefile.am +0 -3
  237. data/ruby/lib/Makefile.in +0 -506
  238. data/ruby/lib/mkmf-rice.rb.in +0 -217
  239. data/ruby/lib/version.rb +0 -3
  240. data/sample/Makefile.am +0 -47
  241. data/sample/Makefile.in +0 -489
  242. data/test/Makefile.am +0 -72
  243. data/test/Makefile.in +0 -1213
  244. data/test/ext/Makefile.am +0 -41
  245. data/test/ext/Makefile.in +0 -483
  246. data/test/test_rice.rb +0 -41
@@ -1,897 +0,0 @@
1
- #ifndef Rice__detail__Auto_Member_Function_Wrapper__hpp_
2
- #define Rice__detail__Auto_Member_Function_Wrapper__hpp_
3
-
4
- // This is a generated file. DO NOT EDIT!!
5
-
6
-
7
- // This causes problems with certain C++ libraries
8
- #undef TYPE
9
-
10
- namespace Rice
11
- {
12
-
13
- namespace detail
14
- {
15
-
16
- #ifdef DOXYGEN
17
-
18
- #else
19
-
20
- template<typename Func_T, typename Ret_T, typename Self_T, typename Arg0_T = void, typename Arg1_T = void, typename Arg2_T = void, typename Arg3_T = void, typename Arg4_T = void, typename Arg5_T = void, typename Arg6_T = void, typename Arg7_T = void, typename Arg8_T = void, typename Arg9_T = void, typename Arg10_T = void, typename Arg11_T = void, typename Arg12_T = void, typename Arg13_T = void, typename Arg14_T = void, typename Arg15_T = void>
21
- class Auto_Member_Function_Wrapper
22
- : public Wrapped_Function
23
- {
24
- public:
25
- typedef Func_T Func;
26
-
27
- static const int Num_Args = 16;
28
-
29
- Auto_Member_Function_Wrapper(
30
- Func func,
31
- Data_Object<Exception_Handler> handler,
32
- Arguments* arguments = 0);
33
-
34
- ~Auto_Member_Function_Wrapper();
35
-
36
- static VALUE call(int argc, VALUE* argv, VALUE self);
37
-
38
- private:
39
- Func func_;
40
- Data_Object<Exception_Handler> handler_;
41
- Address_Registration_Guard handler_guard_;
42
- Arguments* arguments_;
43
- };
44
-
45
- template<typename Func_T, typename Self_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>
46
- class Auto_Member_Function_Wrapper<Func_T, void, Self_T, 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>
47
- : public Wrapped_Function
48
- {
49
- public:
50
- typedef Func_T Func;
51
-
52
- static const int Num_Args = 16;
53
-
54
- Auto_Member_Function_Wrapper(
55
- Func func,
56
- Data_Object<Exception_Handler> handler,
57
- Arguments* arguments = 0);
58
-
59
- ~Auto_Member_Function_Wrapper();
60
-
61
- static VALUE call(int argc, VALUE* argv, VALUE self);
62
-
63
- private:
64
- Func func_;
65
- Data_Object<Exception_Handler> handler_;
66
- Address_Registration_Guard handler_guard_;
67
- Arguments* arguments_;
68
- };
69
-
70
- // ---------------------------------------------------------------------
71
- template<typename Func_T, typename Ret_T, typename Self_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>
72
- class Auto_Member_Function_Wrapper<Func_T, Ret_T, Self_T, 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
- : public Wrapped_Function
74
- {
75
- public:
76
- typedef Func_T Func;
77
-
78
- static const int Num_Args = 15;
79
-
80
- Auto_Member_Function_Wrapper(
81
- Func func,
82
- Data_Object<Exception_Handler> handler,
83
- Arguments* arguments = 0);
84
-
85
- ~Auto_Member_Function_Wrapper();
86
-
87
- static VALUE call(int argc, VALUE* argv, VALUE self);
88
-
89
- private:
90
- Func func_;
91
- Data_Object<Exception_Handler> handler_;
92
- Address_Registration_Guard handler_guard_;
93
- Arguments* arguments_;
94
- };
95
-
96
- template<typename Func_T, typename Self_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>
97
- class Auto_Member_Function_Wrapper<Func_T, void, Self_T, 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>
98
- : public Wrapped_Function
99
- {
100
- public:
101
- typedef Func_T Func;
102
-
103
- static const int Num_Args = 15;
104
-
105
- Auto_Member_Function_Wrapper(
106
- Func func,
107
- Data_Object<Exception_Handler> handler,
108
- Arguments* arguments = 0);
109
-
110
- ~Auto_Member_Function_Wrapper();
111
-
112
- static VALUE call(int argc, VALUE* argv, VALUE self);
113
-
114
- private:
115
- Func func_;
116
- Data_Object<Exception_Handler> handler_;
117
- Address_Registration_Guard handler_guard_;
118
- Arguments* arguments_;
119
- };
120
-
121
- // ---------------------------------------------------------------------
122
- template<typename Func_T, typename Ret_T, typename Self_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>
123
- class Auto_Member_Function_Wrapper<Func_T, Ret_T, Self_T, 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>
124
- : public Wrapped_Function
125
- {
126
- public:
127
- typedef Func_T Func;
128
-
129
- static const int Num_Args = 14;
130
-
131
- Auto_Member_Function_Wrapper(
132
- Func func,
133
- Data_Object<Exception_Handler> handler,
134
- Arguments* arguments = 0);
135
-
136
- ~Auto_Member_Function_Wrapper();
137
-
138
- static VALUE call(int argc, VALUE* argv, VALUE self);
139
-
140
- private:
141
- Func func_;
142
- Data_Object<Exception_Handler> handler_;
143
- Address_Registration_Guard handler_guard_;
144
- Arguments* arguments_;
145
- };
146
-
147
- template<typename Func_T, typename Self_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>
148
- class Auto_Member_Function_Wrapper<Func_T, void, Self_T, 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>
149
- : public Wrapped_Function
150
- {
151
- public:
152
- typedef Func_T Func;
153
-
154
- static const int Num_Args = 14;
155
-
156
- Auto_Member_Function_Wrapper(
157
- Func func,
158
- Data_Object<Exception_Handler> handler,
159
- Arguments* arguments = 0);
160
-
161
- ~Auto_Member_Function_Wrapper();
162
-
163
- static VALUE call(int argc, VALUE* argv, VALUE self);
164
-
165
- private:
166
- Func func_;
167
- Data_Object<Exception_Handler> handler_;
168
- Address_Registration_Guard handler_guard_;
169
- Arguments* arguments_;
170
- };
171
-
172
- // ---------------------------------------------------------------------
173
- template<typename Func_T, typename Ret_T, typename Self_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>
174
- class Auto_Member_Function_Wrapper<Func_T, Ret_T, Self_T, 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>
175
- : public Wrapped_Function
176
- {
177
- public:
178
- typedef Func_T Func;
179
-
180
- static const int Num_Args = 13;
181
-
182
- Auto_Member_Function_Wrapper(
183
- Func func,
184
- Data_Object<Exception_Handler> handler,
185
- Arguments* arguments = 0);
186
-
187
- ~Auto_Member_Function_Wrapper();
188
-
189
- static VALUE call(int argc, VALUE* argv, VALUE self);
190
-
191
- private:
192
- Func func_;
193
- Data_Object<Exception_Handler> handler_;
194
- Address_Registration_Guard handler_guard_;
195
- Arguments* arguments_;
196
- };
197
-
198
- template<typename Func_T, typename Self_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>
199
- class Auto_Member_Function_Wrapper<Func_T, void, Self_T, 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>
200
- : public Wrapped_Function
201
- {
202
- public:
203
- typedef Func_T Func;
204
-
205
- static const int Num_Args = 13;
206
-
207
- Auto_Member_Function_Wrapper(
208
- Func func,
209
- Data_Object<Exception_Handler> handler,
210
- Arguments* arguments = 0);
211
-
212
- ~Auto_Member_Function_Wrapper();
213
-
214
- static VALUE call(int argc, VALUE* argv, VALUE self);
215
-
216
- private:
217
- Func func_;
218
- Data_Object<Exception_Handler> handler_;
219
- Address_Registration_Guard handler_guard_;
220
- Arguments* arguments_;
221
- };
222
-
223
- // ---------------------------------------------------------------------
224
- template<typename Func_T, typename Ret_T, typename Self_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>
225
- class Auto_Member_Function_Wrapper<Func_T, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T, Arg11_T>
226
- : public Wrapped_Function
227
- {
228
- public:
229
- typedef Func_T Func;
230
-
231
- static const int Num_Args = 12;
232
-
233
- Auto_Member_Function_Wrapper(
234
- Func func,
235
- Data_Object<Exception_Handler> handler,
236
- Arguments* arguments = 0);
237
-
238
- ~Auto_Member_Function_Wrapper();
239
-
240
- static VALUE call(int argc, VALUE* argv, VALUE self);
241
-
242
- private:
243
- Func func_;
244
- Data_Object<Exception_Handler> handler_;
245
- Address_Registration_Guard handler_guard_;
246
- Arguments* arguments_;
247
- };
248
-
249
- template<typename Func_T, typename Self_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>
250
- class Auto_Member_Function_Wrapper<Func_T, void, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T, Arg11_T>
251
- : public Wrapped_Function
252
- {
253
- public:
254
- typedef Func_T Func;
255
-
256
- static const int Num_Args = 12;
257
-
258
- Auto_Member_Function_Wrapper(
259
- Func func,
260
- Data_Object<Exception_Handler> handler,
261
- Arguments* arguments = 0);
262
-
263
- ~Auto_Member_Function_Wrapper();
264
-
265
- static VALUE call(int argc, VALUE* argv, VALUE self);
266
-
267
- private:
268
- Func func_;
269
- Data_Object<Exception_Handler> handler_;
270
- Address_Registration_Guard handler_guard_;
271
- Arguments* arguments_;
272
- };
273
-
274
- // ---------------------------------------------------------------------
275
- template<typename Func_T, typename Ret_T, typename Self_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>
276
- class Auto_Member_Function_Wrapper<Func_T, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T>
277
- : public Wrapped_Function
278
- {
279
- public:
280
- typedef Func_T Func;
281
-
282
- static const int Num_Args = 11;
283
-
284
- Auto_Member_Function_Wrapper(
285
- Func func,
286
- Data_Object<Exception_Handler> handler,
287
- Arguments* arguments = 0);
288
-
289
- ~Auto_Member_Function_Wrapper();
290
-
291
- static VALUE call(int argc, VALUE* argv, VALUE self);
292
-
293
- private:
294
- Func func_;
295
- Data_Object<Exception_Handler> handler_;
296
- Address_Registration_Guard handler_guard_;
297
- Arguments* arguments_;
298
- };
299
-
300
- template<typename Func_T, typename Self_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>
301
- class Auto_Member_Function_Wrapper<Func_T, void, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T>
302
- : public Wrapped_Function
303
- {
304
- public:
305
- typedef Func_T Func;
306
-
307
- static const int Num_Args = 11;
308
-
309
- Auto_Member_Function_Wrapper(
310
- Func func,
311
- Data_Object<Exception_Handler> handler,
312
- Arguments* arguments = 0);
313
-
314
- ~Auto_Member_Function_Wrapper();
315
-
316
- static VALUE call(int argc, VALUE* argv, VALUE self);
317
-
318
- private:
319
- Func func_;
320
- Data_Object<Exception_Handler> handler_;
321
- Address_Registration_Guard handler_guard_;
322
- Arguments* arguments_;
323
- };
324
-
325
- // ---------------------------------------------------------------------
326
- template<typename Func_T, typename Ret_T, typename Self_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>
327
- class Auto_Member_Function_Wrapper<Func_T, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T>
328
- : public Wrapped_Function
329
- {
330
- public:
331
- typedef Func_T Func;
332
-
333
- static const int Num_Args = 10;
334
-
335
- Auto_Member_Function_Wrapper(
336
- Func func,
337
- Data_Object<Exception_Handler> handler,
338
- Arguments* arguments = 0);
339
-
340
- ~Auto_Member_Function_Wrapper();
341
-
342
- static VALUE call(int argc, VALUE* argv, VALUE self);
343
-
344
- private:
345
- Func func_;
346
- Data_Object<Exception_Handler> handler_;
347
- Address_Registration_Guard handler_guard_;
348
- Arguments* arguments_;
349
- };
350
-
351
- template<typename Func_T, typename Self_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>
352
- class Auto_Member_Function_Wrapper<Func_T, void, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T>
353
- : public Wrapped_Function
354
- {
355
- public:
356
- typedef Func_T Func;
357
-
358
- static const int Num_Args = 10;
359
-
360
- Auto_Member_Function_Wrapper(
361
- Func func,
362
- Data_Object<Exception_Handler> handler,
363
- Arguments* arguments = 0);
364
-
365
- ~Auto_Member_Function_Wrapper();
366
-
367
- static VALUE call(int argc, VALUE* argv, VALUE self);
368
-
369
- private:
370
- Func func_;
371
- Data_Object<Exception_Handler> handler_;
372
- Address_Registration_Guard handler_guard_;
373
- Arguments* arguments_;
374
- };
375
-
376
- // ---------------------------------------------------------------------
377
- template<typename Func_T, typename Ret_T, typename Self_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>
378
- class Auto_Member_Function_Wrapper<Func_T, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T>
379
- : public Wrapped_Function
380
- {
381
- public:
382
- typedef Func_T Func;
383
-
384
- static const int Num_Args = 9;
385
-
386
- Auto_Member_Function_Wrapper(
387
- Func func,
388
- Data_Object<Exception_Handler> handler,
389
- Arguments* arguments = 0);
390
-
391
- ~Auto_Member_Function_Wrapper();
392
-
393
- static VALUE call(int argc, VALUE* argv, VALUE self);
394
-
395
- private:
396
- Func func_;
397
- Data_Object<Exception_Handler> handler_;
398
- Address_Registration_Guard handler_guard_;
399
- Arguments* arguments_;
400
- };
401
-
402
- template<typename Func_T, typename Self_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>
403
- class Auto_Member_Function_Wrapper<Func_T, void, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T>
404
- : public Wrapped_Function
405
- {
406
- public:
407
- typedef Func_T Func;
408
-
409
- static const int Num_Args = 9;
410
-
411
- Auto_Member_Function_Wrapper(
412
- Func func,
413
- Data_Object<Exception_Handler> handler,
414
- Arguments* arguments = 0);
415
-
416
- ~Auto_Member_Function_Wrapper();
417
-
418
- static VALUE call(int argc, VALUE* argv, VALUE self);
419
-
420
- private:
421
- Func func_;
422
- Data_Object<Exception_Handler> handler_;
423
- Address_Registration_Guard handler_guard_;
424
- Arguments* arguments_;
425
- };
426
-
427
- // ---------------------------------------------------------------------
428
- template<typename Func_T, typename Ret_T, typename Self_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>
429
- class Auto_Member_Function_Wrapper<Func_T, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T>
430
- : public Wrapped_Function
431
- {
432
- public:
433
- typedef Func_T Func;
434
-
435
- static const int Num_Args = 8;
436
-
437
- Auto_Member_Function_Wrapper(
438
- Func func,
439
- Data_Object<Exception_Handler> handler,
440
- Arguments* arguments = 0);
441
-
442
- ~Auto_Member_Function_Wrapper();
443
-
444
- static VALUE call(int argc, VALUE* argv, VALUE self);
445
-
446
- private:
447
- Func func_;
448
- Data_Object<Exception_Handler> handler_;
449
- Address_Registration_Guard handler_guard_;
450
- Arguments* arguments_;
451
- };
452
-
453
- template<typename Func_T, typename Self_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>
454
- class Auto_Member_Function_Wrapper<Func_T, void, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T>
455
- : public Wrapped_Function
456
- {
457
- public:
458
- typedef Func_T Func;
459
-
460
- static const int Num_Args = 8;
461
-
462
- Auto_Member_Function_Wrapper(
463
- Func func,
464
- Data_Object<Exception_Handler> handler,
465
- Arguments* arguments = 0);
466
-
467
- ~Auto_Member_Function_Wrapper();
468
-
469
- static VALUE call(int argc, VALUE* argv, VALUE self);
470
-
471
- private:
472
- Func func_;
473
- Data_Object<Exception_Handler> handler_;
474
- Address_Registration_Guard handler_guard_;
475
- Arguments* arguments_;
476
- };
477
-
478
- // ---------------------------------------------------------------------
479
- template<typename Func_T, typename Ret_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T, typename Arg6_T>
480
- class Auto_Member_Function_Wrapper<Func_T, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T>
481
- : public Wrapped_Function
482
- {
483
- public:
484
- typedef Func_T Func;
485
-
486
- static const int Num_Args = 7;
487
-
488
- Auto_Member_Function_Wrapper(
489
- Func func,
490
- Data_Object<Exception_Handler> handler,
491
- Arguments* arguments = 0);
492
-
493
- ~Auto_Member_Function_Wrapper();
494
-
495
- static VALUE call(int argc, VALUE* argv, VALUE self);
496
-
497
- private:
498
- Func func_;
499
- Data_Object<Exception_Handler> handler_;
500
- Address_Registration_Guard handler_guard_;
501
- Arguments* arguments_;
502
- };
503
-
504
- template<typename Func_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T, typename Arg6_T>
505
- class Auto_Member_Function_Wrapper<Func_T, void, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T>
506
- : public Wrapped_Function
507
- {
508
- public:
509
- typedef Func_T Func;
510
-
511
- static const int Num_Args = 7;
512
-
513
- Auto_Member_Function_Wrapper(
514
- Func func,
515
- Data_Object<Exception_Handler> handler,
516
- Arguments* arguments = 0);
517
-
518
- ~Auto_Member_Function_Wrapper();
519
-
520
- static VALUE call(int argc, VALUE* argv, VALUE self);
521
-
522
- private:
523
- Func func_;
524
- Data_Object<Exception_Handler> handler_;
525
- Address_Registration_Guard handler_guard_;
526
- Arguments* arguments_;
527
- };
528
-
529
- // ---------------------------------------------------------------------
530
- template<typename Func_T, typename Ret_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T>
531
- class Auto_Member_Function_Wrapper<Func_T, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T>
532
- : public Wrapped_Function
533
- {
534
- public:
535
- typedef Func_T Func;
536
-
537
- static const int Num_Args = 6;
538
-
539
- Auto_Member_Function_Wrapper(
540
- Func func,
541
- Data_Object<Exception_Handler> handler,
542
- Arguments* arguments = 0);
543
-
544
- ~Auto_Member_Function_Wrapper();
545
-
546
- static VALUE call(int argc, VALUE* argv, VALUE self);
547
-
548
- private:
549
- Func func_;
550
- Data_Object<Exception_Handler> handler_;
551
- Address_Registration_Guard handler_guard_;
552
- Arguments* arguments_;
553
- };
554
-
555
- template<typename Func_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T>
556
- class Auto_Member_Function_Wrapper<Func_T, void, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T>
557
- : public Wrapped_Function
558
- {
559
- public:
560
- typedef Func_T Func;
561
-
562
- static const int Num_Args = 6;
563
-
564
- Auto_Member_Function_Wrapper(
565
- Func func,
566
- Data_Object<Exception_Handler> handler,
567
- Arguments* arguments = 0);
568
-
569
- ~Auto_Member_Function_Wrapper();
570
-
571
- static VALUE call(int argc, VALUE* argv, VALUE self);
572
-
573
- private:
574
- Func func_;
575
- Data_Object<Exception_Handler> handler_;
576
- Address_Registration_Guard handler_guard_;
577
- Arguments* arguments_;
578
- };
579
-
580
- // ---------------------------------------------------------------------
581
- template<typename Func_T, typename Ret_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T>
582
- class Auto_Member_Function_Wrapper<Func_T, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T>
583
- : public Wrapped_Function
584
- {
585
- public:
586
- typedef Func_T Func;
587
-
588
- static const int Num_Args = 5;
589
-
590
- Auto_Member_Function_Wrapper(
591
- Func func,
592
- Data_Object<Exception_Handler> handler,
593
- Arguments* arguments = 0);
594
-
595
- ~Auto_Member_Function_Wrapper();
596
-
597
- static VALUE call(int argc, VALUE* argv, VALUE self);
598
-
599
- private:
600
- Func func_;
601
- Data_Object<Exception_Handler> handler_;
602
- Address_Registration_Guard handler_guard_;
603
- Arguments* arguments_;
604
- };
605
-
606
- template<typename Func_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T>
607
- class Auto_Member_Function_Wrapper<Func_T, void, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T>
608
- : public Wrapped_Function
609
- {
610
- public:
611
- typedef Func_T Func;
612
-
613
- static const int Num_Args = 5;
614
-
615
- Auto_Member_Function_Wrapper(
616
- Func func,
617
- Data_Object<Exception_Handler> handler,
618
- Arguments* arguments = 0);
619
-
620
- ~Auto_Member_Function_Wrapper();
621
-
622
- static VALUE call(int argc, VALUE* argv, VALUE self);
623
-
624
- private:
625
- Func func_;
626
- Data_Object<Exception_Handler> handler_;
627
- Address_Registration_Guard handler_guard_;
628
- Arguments* arguments_;
629
- };
630
-
631
- // ---------------------------------------------------------------------
632
- template<typename Func_T, typename Ret_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T>
633
- class Auto_Member_Function_Wrapper<Func_T, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T>
634
- : public Wrapped_Function
635
- {
636
- public:
637
- typedef Func_T Func;
638
-
639
- static const int Num_Args = 4;
640
-
641
- Auto_Member_Function_Wrapper(
642
- Func func,
643
- Data_Object<Exception_Handler> handler,
644
- Arguments* arguments = 0);
645
-
646
- ~Auto_Member_Function_Wrapper();
647
-
648
- static VALUE call(int argc, VALUE* argv, VALUE self);
649
-
650
- private:
651
- Func func_;
652
- Data_Object<Exception_Handler> handler_;
653
- Address_Registration_Guard handler_guard_;
654
- Arguments* arguments_;
655
- };
656
-
657
- template<typename Func_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T>
658
- class Auto_Member_Function_Wrapper<Func_T, void, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T>
659
- : public Wrapped_Function
660
- {
661
- public:
662
- typedef Func_T Func;
663
-
664
- static const int Num_Args = 4;
665
-
666
- Auto_Member_Function_Wrapper(
667
- Func func,
668
- Data_Object<Exception_Handler> handler,
669
- Arguments* arguments = 0);
670
-
671
- ~Auto_Member_Function_Wrapper();
672
-
673
- static VALUE call(int argc, VALUE* argv, VALUE self);
674
-
675
- private:
676
- Func func_;
677
- Data_Object<Exception_Handler> handler_;
678
- Address_Registration_Guard handler_guard_;
679
- Arguments* arguments_;
680
- };
681
-
682
- // ---------------------------------------------------------------------
683
- template<typename Func_T, typename Ret_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T>
684
- class Auto_Member_Function_Wrapper<Func_T, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T>
685
- : public Wrapped_Function
686
- {
687
- public:
688
- typedef Func_T Func;
689
-
690
- static const int Num_Args = 3;
691
-
692
- Auto_Member_Function_Wrapper(
693
- Func func,
694
- Data_Object<Exception_Handler> handler,
695
- Arguments* arguments = 0);
696
-
697
- ~Auto_Member_Function_Wrapper();
698
-
699
- static VALUE call(int argc, VALUE* argv, VALUE self);
700
-
701
- private:
702
- Func func_;
703
- Data_Object<Exception_Handler> handler_;
704
- Address_Registration_Guard handler_guard_;
705
- Arguments* arguments_;
706
- };
707
-
708
- template<typename Func_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T>
709
- class Auto_Member_Function_Wrapper<Func_T, void, Self_T, Arg0_T, Arg1_T, Arg2_T>
710
- : public Wrapped_Function
711
- {
712
- public:
713
- typedef Func_T Func;
714
-
715
- static const int Num_Args = 3;
716
-
717
- Auto_Member_Function_Wrapper(
718
- Func func,
719
- Data_Object<Exception_Handler> handler,
720
- Arguments* arguments = 0);
721
-
722
- ~Auto_Member_Function_Wrapper();
723
-
724
- static VALUE call(int argc, VALUE* argv, VALUE self);
725
-
726
- private:
727
- Func func_;
728
- Data_Object<Exception_Handler> handler_;
729
- Address_Registration_Guard handler_guard_;
730
- Arguments* arguments_;
731
- };
732
-
733
- // ---------------------------------------------------------------------
734
- template<typename Func_T, typename Ret_T, typename Self_T, typename Arg0_T, typename Arg1_T>
735
- class Auto_Member_Function_Wrapper<Func_T, Ret_T, Self_T, Arg0_T, Arg1_T>
736
- : public Wrapped_Function
737
- {
738
- public:
739
- typedef Func_T Func;
740
-
741
- static const int Num_Args = 2;
742
-
743
- Auto_Member_Function_Wrapper(
744
- Func func,
745
- Data_Object<Exception_Handler> handler,
746
- Arguments* arguments = 0);
747
-
748
- ~Auto_Member_Function_Wrapper();
749
-
750
- static VALUE call(int argc, VALUE* argv, VALUE self);
751
-
752
- private:
753
- Func func_;
754
- Data_Object<Exception_Handler> handler_;
755
- Address_Registration_Guard handler_guard_;
756
- Arguments* arguments_;
757
- };
758
-
759
- template<typename Func_T, typename Self_T, typename Arg0_T, typename Arg1_T>
760
- class Auto_Member_Function_Wrapper<Func_T, void, Self_T, Arg0_T, Arg1_T>
761
- : public Wrapped_Function
762
- {
763
- public:
764
- typedef Func_T Func;
765
-
766
- static const int Num_Args = 2;
767
-
768
- Auto_Member_Function_Wrapper(
769
- Func func,
770
- Data_Object<Exception_Handler> handler,
771
- Arguments* arguments = 0);
772
-
773
- ~Auto_Member_Function_Wrapper();
774
-
775
- static VALUE call(int argc, VALUE* argv, VALUE self);
776
-
777
- private:
778
- Func func_;
779
- Data_Object<Exception_Handler> handler_;
780
- Address_Registration_Guard handler_guard_;
781
- Arguments* arguments_;
782
- };
783
-
784
- // ---------------------------------------------------------------------
785
- template<typename Func_T, typename Ret_T, typename Self_T, typename Arg0_T>
786
- class Auto_Member_Function_Wrapper<Func_T, Ret_T, Self_T, Arg0_T>
787
- : public Wrapped_Function
788
- {
789
- public:
790
- typedef Func_T Func;
791
-
792
- static const int Num_Args = 1;
793
-
794
- Auto_Member_Function_Wrapper(
795
- Func func,
796
- Data_Object<Exception_Handler> handler,
797
- Arguments* arguments = 0);
798
-
799
- ~Auto_Member_Function_Wrapper();
800
-
801
- static VALUE call(int argc, VALUE* argv, VALUE self);
802
-
803
- private:
804
- Func func_;
805
- Data_Object<Exception_Handler> handler_;
806
- Address_Registration_Guard handler_guard_;
807
- Arguments* arguments_;
808
- };
809
-
810
- template<typename Func_T, typename Self_T, typename Arg0_T>
811
- class Auto_Member_Function_Wrapper<Func_T, void, Self_T, Arg0_T>
812
- : public Wrapped_Function
813
- {
814
- public:
815
- typedef Func_T Func;
816
-
817
- static const int Num_Args = 1;
818
-
819
- Auto_Member_Function_Wrapper(
820
- Func func,
821
- Data_Object<Exception_Handler> handler,
822
- Arguments* arguments = 0);
823
-
824
- ~Auto_Member_Function_Wrapper();
825
-
826
- static VALUE call(int argc, VALUE* argv, VALUE self);
827
-
828
- private:
829
- Func func_;
830
- Data_Object<Exception_Handler> handler_;
831
- Address_Registration_Guard handler_guard_;
832
- Arguments* arguments_;
833
- };
834
-
835
- // ---------------------------------------------------------------------
836
-
837
- template<typename Func_T, typename Ret_T, typename Self_T>
838
- class Auto_Member_Function_Wrapper<Func_T, Ret_T, Self_T>
839
- : public Wrapped_Function
840
- {
841
- public:
842
- typedef Func_T Func;
843
-
844
- static const int Num_Args = 0;
845
-
846
- Auto_Member_Function_Wrapper(
847
- Func func,
848
- Data_Object<Exception_Handler> handler,
849
- Arguments* arguments = 0);
850
-
851
- ~Auto_Member_Function_Wrapper();
852
-
853
- static VALUE call(int argc, VALUE* argv, VALUE self);
854
-
855
- private:
856
- Func func_;
857
- Data_Object<Exception_Handler> handler_;
858
- Address_Registration_Guard handler_guard_;
859
- Arguments* arguments_;
860
- };
861
-
862
- template<typename Func_T, typename Self_T>
863
- class Auto_Member_Function_Wrapper<Func_T, void, Self_T>
864
- : public Wrapped_Function
865
- {
866
- public:
867
- typedef Func_T Func;
868
-
869
- static const int Num_Args = 0;
870
-
871
- Auto_Member_Function_Wrapper(
872
- Func func,
873
- Data_Object<Exception_Handler> handler,
874
- Arguments* arguments = 0);
875
-
876
- ~Auto_Member_Function_Wrapper();
877
-
878
- static VALUE call(int argc, VALUE* argv, VALUE self);
879
-
880
- private:
881
- Func func_;
882
- Data_Object<Exception_Handler> handler_;
883
- Address_Registration_Guard handler_guard_;
884
- Arguments* arguments_;
885
- };
886
-
887
- // ---------------------------------------------------------------------
888
- #endif // DOXYGEN
889
-
890
- } // namespace detail
891
-
892
- } // namespace Rice
893
-
894
- #include "Auto_Member_Function_Wrapper.ipp"
895
-
896
- #endif // Rice__detail__Auto_Member_Function_Wrapper__hpp_
897
-