rice 2.1.3 → 4.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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
-