rice-jdguyot 1.4.0.p1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (203) hide show
  1. data/COPYING +23 -0
  2. data/Doxyfile +1253 -0
  3. data/Makefile.am +26 -0
  4. data/Makefile.in +743 -0
  5. data/README +1119 -0
  6. data/README.mingw +8 -0
  7. data/Rakefile +33 -0
  8. data/aclocal.m4 +874 -0
  9. data/bootstrap +8 -0
  10. data/config.guess +1500 -0
  11. data/config.sub +1616 -0
  12. data/configure +7461 -0
  13. data/configure.ac +52 -0
  14. data/depcomp +584 -0
  15. data/doxygen.ac +314 -0
  16. data/doxygen.am +186 -0
  17. data/extconf.rb +34 -0
  18. data/install-sh +507 -0
  19. data/missing +367 -0
  20. data/post-autoconf.rb +22 -0
  21. data/post-automake.rb +28 -0
  22. data/rice/Address_Registration_Guard.cpp +22 -0
  23. data/rice/Address_Registration_Guard.hpp +7 -0
  24. data/rice/Address_Registration_Guard.ipp +37 -0
  25. data/rice/Address_Registration_Guard_defn.hpp +75 -0
  26. data/rice/Allocation_Strategies.hpp +37 -0
  27. data/rice/Arg.hpp +8 -0
  28. data/rice/Arg_impl.hpp +127 -0
  29. data/rice/Arg_operators.cpp +21 -0
  30. data/rice/Arg_operators.hpp +19 -0
  31. data/rice/Array.hpp +220 -0
  32. data/rice/Array.ipp +263 -0
  33. data/rice/Builtin_Object.hpp +8 -0
  34. data/rice/Builtin_Object.ipp +50 -0
  35. data/rice/Builtin_Object_defn.hpp +51 -0
  36. data/rice/Class.cpp +57 -0
  37. data/rice/Class.hpp +8 -0
  38. data/rice/Class.ipp +6 -0
  39. data/rice/Class_defn.hpp +83 -0
  40. data/rice/Constructor.hpp +367 -0
  41. data/rice/Critical_Guard.hpp +40 -0
  42. data/rice/Critical_Guard.ipp +26 -0
  43. data/rice/Data_Object.hpp +8 -0
  44. data/rice/Data_Object.ipp +133 -0
  45. data/rice/Data_Object_defn.hpp +132 -0
  46. data/rice/Data_Type.cpp +54 -0
  47. data/rice/Data_Type.hpp +8 -0
  48. data/rice/Data_Type.ipp +365 -0
  49. data/rice/Data_Type_defn.hpp +261 -0
  50. data/rice/Data_Type_fwd.hpp +12 -0
  51. data/rice/Director.cpp +13 -0
  52. data/rice/Director.hpp +39 -0
  53. data/rice/Enum.hpp +117 -0
  54. data/rice/Enum.ipp +246 -0
  55. data/rice/Exception.cpp +59 -0
  56. data/rice/Exception.hpp +9 -0
  57. data/rice/Exception_Base.hpp +8 -0
  58. data/rice/Exception_Base.ipp +13 -0
  59. data/rice/Exception_Base_defn.hpp +27 -0
  60. data/rice/Exception_defn.hpp +69 -0
  61. data/rice/Hash.hpp +210 -0
  62. data/rice/Hash.ipp +338 -0
  63. data/rice/Identifier.cpp +8 -0
  64. data/rice/Identifier.hpp +50 -0
  65. data/rice/Identifier.ipp +33 -0
  66. data/rice/Jump_Tag.hpp +24 -0
  67. data/rice/Makefile.am +130 -0
  68. data/rice/Makefile.in +716 -0
  69. data/rice/Module.cpp +84 -0
  70. data/rice/Module.hpp +8 -0
  71. data/rice/Module.ipp +6 -0
  72. data/rice/Module_defn.hpp +88 -0
  73. data/rice/Module_impl.hpp +281 -0
  74. data/rice/Module_impl.ipp +348 -0
  75. data/rice/Object.cpp +160 -0
  76. data/rice/Object.hpp +8 -0
  77. data/rice/Object.ipp +19 -0
  78. data/rice/Object_defn.hpp +191 -0
  79. data/rice/Require_Guard.hpp +21 -0
  80. data/rice/String.cpp +94 -0
  81. data/rice/String.hpp +89 -0
  82. data/rice/Struct.cpp +117 -0
  83. data/rice/Struct.hpp +162 -0
  84. data/rice/Struct.ipp +26 -0
  85. data/rice/Symbol.cpp +25 -0
  86. data/rice/Symbol.hpp +66 -0
  87. data/rice/Symbol.ipp +44 -0
  88. data/rice/VM.cpp +92 -0
  89. data/rice/VM.hpp +32 -0
  90. data/rice/config.hpp +41 -0
  91. data/rice/config.hpp.in +40 -0
  92. data/rice/detail/Arguments.hpp +118 -0
  93. data/rice/detail/Auto_Function_Wrapper.hpp +829 -0
  94. data/rice/detail/Auto_Function_Wrapper.ipp +3391 -0
  95. data/rice/detail/Auto_Member_Function_Wrapper.hpp +828 -0
  96. data/rice/detail/Auto_Member_Function_Wrapper.ipp +2503 -0
  97. data/rice/detail/Caster.hpp +103 -0
  98. data/rice/detail/Exception_Handler.hpp +8 -0
  99. data/rice/detail/Exception_Handler.ipp +68 -0
  100. data/rice/detail/Exception_Handler_defn.hpp +96 -0
  101. data/rice/detail/Iterator.hpp +93 -0
  102. data/rice/detail/Not_Copyable.hpp +25 -0
  103. data/rice/detail/Wrapped_Function.hpp +33 -0
  104. data/rice/detail/cfp.hpp +24 -0
  105. data/rice/detail/cfp.ipp +51 -0
  106. data/rice/detail/check_ruby_type.cpp +27 -0
  107. data/rice/detail/check_ruby_type.hpp +23 -0
  108. data/rice/detail/creation_funcs.hpp +37 -0
  109. data/rice/detail/creation_funcs.ipp +36 -0
  110. data/rice/detail/default_allocation_func.hpp +23 -0
  111. data/rice/detail/default_allocation_func.ipp +11 -0
  112. data/rice/detail/define_method_and_auto_wrap.hpp +31 -0
  113. data/rice/detail/define_method_and_auto_wrap.ipp +30 -0
  114. data/rice/detail/demangle.cpp +56 -0
  115. data/rice/detail/demangle.hpp +19 -0
  116. data/rice/detail/env.hpp +19 -0
  117. data/rice/detail/from_ruby.hpp +43 -0
  118. data/rice/detail/from_ruby.ipp +60 -0
  119. data/rice/detail/method_data.cpp +159 -0
  120. data/rice/detail/method_data.hpp +21 -0
  121. data/rice/detail/mininode.cpp +1220 -0
  122. data/rice/detail/mininode.hpp +320 -0
  123. data/rice/detail/node.hpp +13 -0
  124. data/rice/detail/object_call.hpp +68 -0
  125. data/rice/detail/object_call.ipp +131 -0
  126. data/rice/detail/protect.cpp +29 -0
  127. data/rice/detail/protect.hpp +34 -0
  128. data/rice/detail/ruby.hpp +93 -0
  129. data/rice/detail/ruby_version_code.hpp +6 -0
  130. data/rice/detail/ruby_version_code.hpp.in +6 -0
  131. data/rice/detail/rubysig.hpp +19 -0
  132. data/rice/detail/st.hpp +60 -0
  133. data/rice/detail/to_ruby.hpp +22 -0
  134. data/rice/detail/to_ruby.ipp +36 -0
  135. data/rice/detail/traits.hpp +43 -0
  136. data/rice/detail/win32.hpp +16 -0
  137. data/rice/detail/wrap_function.hpp +341 -0
  138. data/rice/detail/wrap_function.ipp +514 -0
  139. data/rice/global_function.hpp +33 -0
  140. data/rice/global_function.ipp +22 -0
  141. data/rice/protect.hpp +91 -0
  142. data/rice/protect.ipp +1133 -0
  143. data/rice/ruby_mark.hpp +13 -0
  144. data/rice/ruby_try_catch.hpp +86 -0
  145. data/rice/rubypp.rb +97 -0
  146. data/rice/to_from_ruby.hpp +8 -0
  147. data/rice/to_from_ruby.ipp +294 -0
  148. data/rice/to_from_ruby_defn.hpp +71 -0
  149. data/ruby/Makefile.am +1 -0
  150. data/ruby/Makefile.in +497 -0
  151. data/ruby/lib/Makefile.am +3 -0
  152. data/ruby/lib/Makefile.in +373 -0
  153. data/ruby/lib/mkmf-rice.rb.in +216 -0
  154. data/ruby/lib/version.rb +3 -0
  155. data/ruby.ac +136 -0
  156. data/sample/Makefile.am +47 -0
  157. data/sample/Makefile.in +379 -0
  158. data/sample/enum/extconf.rb +3 -0
  159. data/sample/enum/sample_enum.cpp +54 -0
  160. data/sample/enum/test.rb +8 -0
  161. data/sample/inheritance/animals.cpp +98 -0
  162. data/sample/inheritance/extconf.rb +3 -0
  163. data/sample/inheritance/test.rb +7 -0
  164. data/sample/map/extconf.rb +3 -0
  165. data/sample/map/map.cpp +81 -0
  166. data/sample/map/test.rb +7 -0
  167. data/test/Makefile.am +78 -0
  168. data/test/Makefile.in +728 -0
  169. data/test/ext/Makefile.am +43 -0
  170. data/test/ext/Makefile.in +375 -0
  171. data/test/ext/t1/Foo.hpp +10 -0
  172. data/test/ext/t1/extconf.rb +2 -0
  173. data/test/ext/t1/t1.cpp +15 -0
  174. data/test/ext/t2/extconf.rb +2 -0
  175. data/test/ext/t2/t2.cpp +11 -0
  176. data/test/test_Address_Registration_Guard.cpp +43 -0
  177. data/test/test_Allocation_Strategies.cpp +77 -0
  178. data/test/test_Array.cpp +241 -0
  179. data/test/test_Builtin_Object.cpp +72 -0
  180. data/test/test_Class.cpp +498 -0
  181. data/test/test_Constructor.cpp +128 -0
  182. data/test/test_Critical_Guard.cpp +51 -0
  183. data/test/test_Data_Object.cpp +275 -0
  184. data/test/test_Data_Type.cpp +348 -0
  185. data/test/test_Director.cpp +301 -0
  186. data/test/test_Enum.cpp +195 -0
  187. data/test/test_Exception.cpp +46 -0
  188. data/test/test_Hash.cpp +195 -0
  189. data/test/test_Identifier.cpp +70 -0
  190. data/test/test_Jump_Tag.cpp +17 -0
  191. data/test/test_Memory_Management.cpp +50 -0
  192. data/test/test_Module.cpp +481 -0
  193. data/test/test_Object.cpp +148 -0
  194. data/test/test_String.cpp +94 -0
  195. data/test/test_Struct.cpp +192 -0
  196. data/test/test_Symbol.cpp +63 -0
  197. data/test/test_To_From_Ruby.cpp +277 -0
  198. data/test/test_VM.cpp +26 -0
  199. data/test/test_global_functions.cpp +114 -0
  200. data/test/test_rice.rb +43 -0
  201. data/test/unittest.cpp +136 -0
  202. data/test/unittest.hpp +292 -0
  203. metadata +289 -0
@@ -0,0 +1,514 @@
1
+ #ifndef Rice__detail__wrap_function__ipp_
2
+ #define Rice__detail__wrap_function__ipp_
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
+ #include "Auto_Function_Wrapper.hpp"
11
+ #include "Auto_Member_Function_Wrapper.hpp"
12
+ namespace Rice
13
+ {
14
+
15
+ namespace detail
16
+ {
17
+
18
+ template<typename Ret_T>
19
+ Wrapped_Function * wrap_function(
20
+ Ret_T (*func)(),
21
+ Data_Object<Exception_Handler> handler,
22
+ Arguments* arguments)
23
+ {
24
+ typedef Ret_T (*Func)();
25
+ return new Auto_Function_Wrapper<Func, Ret_T>(func, handler, arguments);
26
+ }
27
+
28
+ template<typename Ret_T, typename Arg0_T>
29
+ Wrapped_Function * wrap_function(
30
+ Ret_T (*func)(Arg0_T),
31
+ Data_Object<Exception_Handler> handler,
32
+ Arguments* arguments)
33
+ {
34
+ typedef Ret_T (*Func)(Arg0_T);
35
+ return new Auto_Function_Wrapper<Func, Ret_T, Arg0_T>(func, handler, arguments);
36
+ }
37
+
38
+ template<typename Ret_T, typename Self_T>
39
+ Wrapped_Function * wrap_function(
40
+ Ret_T (Self_T::*func)(),
41
+ Data_Object<Exception_Handler> handler,
42
+ Arguments* arguments)
43
+ {
44
+ typedef Ret_T (Self_T::*Func)();
45
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T>(func, handler, arguments);
46
+ }
47
+
48
+ template<typename Ret_T, typename Self_T>
49
+ Wrapped_Function * wrap_function(
50
+ Ret_T (Self_T::*func)() const,
51
+ Data_Object<Exception_Handler> handler,
52
+ Arguments* arguments)
53
+ {
54
+ typedef Ret_T (Self_T::*Func)() const;
55
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T>(func, handler, arguments);
56
+ }
57
+
58
+ // ---------------------------------------------------------------------
59
+
60
+ template<typename Ret_T, typename Arg0_T, typename Arg1_T>
61
+ Wrapped_Function * wrap_function(
62
+ Ret_T (*func)(Arg0_T, Arg1_T),
63
+ Data_Object<Exception_Handler> handler,
64
+ Arguments* arguments)
65
+ {
66
+ typedef Ret_T (*Func)(Arg0_T, Arg1_T);
67
+ return new Auto_Function_Wrapper<Func, Ret_T, Arg0_T, Arg1_T>(func, handler, arguments);
68
+ }
69
+
70
+ template<typename Ret_T, typename Self_T, typename Arg0_T>
71
+ Wrapped_Function * wrap_function(
72
+ Ret_T (Self_T::*func)(Arg0_T),
73
+ Data_Object<Exception_Handler> handler,
74
+ Arguments* arguments)
75
+ {
76
+ typedef Ret_T (Self_T::*Func)(Arg0_T);
77
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T>(func, handler, arguments);
78
+ }
79
+
80
+ template<typename Ret_T, typename Self_T, typename Arg0_T>
81
+ Wrapped_Function * wrap_function(
82
+ Ret_T (Self_T::*func)(Arg0_T) const,
83
+ Data_Object<Exception_Handler> handler,
84
+ Arguments* arguments)
85
+ {
86
+ typedef Ret_T (Self_T::*Func)(Arg0_T) const;
87
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T>(func, handler, arguments);
88
+ }
89
+
90
+ // ---------------------------------------------------------------------
91
+
92
+ template<typename Ret_T, typename Arg0_T, typename Arg1_T, typename Arg2_T>
93
+ Wrapped_Function * wrap_function(
94
+ Ret_T (*func)(Arg0_T, Arg1_T, Arg2_T),
95
+ Data_Object<Exception_Handler> handler,
96
+ Arguments* arguments)
97
+ {
98
+ typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T);
99
+ return new Auto_Function_Wrapper<Func, Ret_T, Arg0_T, Arg1_T, Arg2_T>(func, handler, arguments);
100
+ }
101
+
102
+ template<typename Ret_T, typename Self_T, typename Arg0_T, typename Arg1_T>
103
+ Wrapped_Function * wrap_function(
104
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T),
105
+ Data_Object<Exception_Handler> handler,
106
+ Arguments* arguments)
107
+ {
108
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T);
109
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T>(func, handler, arguments);
110
+ }
111
+
112
+ template<typename Ret_T, typename Self_T, typename Arg0_T, typename Arg1_T>
113
+ Wrapped_Function * wrap_function(
114
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T) const,
115
+ Data_Object<Exception_Handler> handler,
116
+ Arguments* arguments)
117
+ {
118
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T) const;
119
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T>(func, handler, arguments);
120
+ }
121
+
122
+ // ---------------------------------------------------------------------
123
+
124
+ template<typename Ret_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T>
125
+ Wrapped_Function * wrap_function(
126
+ Ret_T (*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T),
127
+ Data_Object<Exception_Handler> handler,
128
+ Arguments* arguments)
129
+ {
130
+ typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T);
131
+ return new Auto_Function_Wrapper<Func, Ret_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T>(func, handler, arguments);
132
+ }
133
+
134
+ template<typename Ret_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T>
135
+ Wrapped_Function * wrap_function(
136
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T),
137
+ Data_Object<Exception_Handler> handler,
138
+ Arguments* arguments)
139
+ {
140
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T);
141
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T>(func, handler, arguments);
142
+ }
143
+
144
+ template<typename Ret_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T>
145
+ Wrapped_Function * wrap_function(
146
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T) const,
147
+ Data_Object<Exception_Handler> handler,
148
+ Arguments* arguments)
149
+ {
150
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T) const;
151
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T>(func, handler, arguments);
152
+ }
153
+
154
+ // ---------------------------------------------------------------------
155
+
156
+ template<typename Ret_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T>
157
+ Wrapped_Function * wrap_function(
158
+ Ret_T (*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T),
159
+ Data_Object<Exception_Handler> handler,
160
+ Arguments* arguments)
161
+ {
162
+ typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T);
163
+ return new Auto_Function_Wrapper<Func, Ret_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T>(func, handler, arguments);
164
+ }
165
+
166
+ template<typename Ret_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T>
167
+ Wrapped_Function * wrap_function(
168
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T),
169
+ Data_Object<Exception_Handler> handler,
170
+ Arguments* arguments)
171
+ {
172
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T);
173
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T>(func, handler, arguments);
174
+ }
175
+
176
+ template<typename Ret_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T>
177
+ Wrapped_Function * wrap_function(
178
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T) const,
179
+ Data_Object<Exception_Handler> handler,
180
+ Arguments* arguments)
181
+ {
182
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T) const;
183
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T>(func, handler, arguments);
184
+ }
185
+
186
+ // ---------------------------------------------------------------------
187
+
188
+ template<typename Ret_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T>
189
+ Wrapped_Function * wrap_function(
190
+ Ret_T (*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T),
191
+ Data_Object<Exception_Handler> handler,
192
+ Arguments* arguments)
193
+ {
194
+ typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T);
195
+ return new Auto_Function_Wrapper<Func, Ret_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T>(func, handler, arguments);
196
+ }
197
+
198
+ template<typename Ret_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T>
199
+ Wrapped_Function * wrap_function(
200
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T),
201
+ Data_Object<Exception_Handler> handler,
202
+ Arguments* arguments)
203
+ {
204
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T);
205
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T>(func, handler, arguments);
206
+ }
207
+
208
+ template<typename Ret_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T>
209
+ Wrapped_Function * wrap_function(
210
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T) const,
211
+ Data_Object<Exception_Handler> handler,
212
+ Arguments* arguments)
213
+ {
214
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T) const;
215
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T>(func, handler, arguments);
216
+ }
217
+
218
+ // ---------------------------------------------------------------------
219
+
220
+ template<typename Ret_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T, typename Arg6_T>
221
+ Wrapped_Function * wrap_function(
222
+ Ret_T (*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T),
223
+ Data_Object<Exception_Handler> handler,
224
+ Arguments* arguments)
225
+ {
226
+ typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T);
227
+ return new Auto_Function_Wrapper<Func, Ret_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T>(func, handler, arguments);
228
+ }
229
+
230
+ template<typename Ret_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T>
231
+ Wrapped_Function * wrap_function(
232
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T),
233
+ Data_Object<Exception_Handler> handler,
234
+ Arguments* arguments)
235
+ {
236
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T);
237
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T>(func, handler, arguments);
238
+ }
239
+
240
+ template<typename Ret_T, typename Self_T, typename Arg0_T, typename Arg1_T, typename Arg2_T, typename Arg3_T, typename Arg4_T, typename Arg5_T>
241
+ Wrapped_Function * wrap_function(
242
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T) const,
243
+ Data_Object<Exception_Handler> handler,
244
+ Arguments* arguments)
245
+ {
246
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T) const;
247
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T>(func, handler, arguments);
248
+ }
249
+
250
+ // ---------------------------------------------------------------------
251
+
252
+ template<typename Ret_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>
253
+ Wrapped_Function * wrap_function(
254
+ Ret_T (*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T),
255
+ Data_Object<Exception_Handler> handler,
256
+ Arguments* arguments)
257
+ {
258
+ typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T);
259
+ return new Auto_Function_Wrapper<Func, Ret_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T>(func, handler, arguments);
260
+ }
261
+
262
+ template<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>
263
+ Wrapped_Function * wrap_function(
264
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T),
265
+ Data_Object<Exception_Handler> handler,
266
+ Arguments* arguments)
267
+ {
268
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T);
269
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T>(func, handler, arguments);
270
+ }
271
+
272
+ template<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>
273
+ Wrapped_Function * wrap_function(
274
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T) const,
275
+ Data_Object<Exception_Handler> handler,
276
+ Arguments* arguments)
277
+ {
278
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T) const;
279
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T>(func, handler, arguments);
280
+ }
281
+
282
+ // ---------------------------------------------------------------------
283
+
284
+ template<typename Ret_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>
285
+ Wrapped_Function * wrap_function(
286
+ Ret_T (*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T),
287
+ Data_Object<Exception_Handler> handler,
288
+ Arguments* arguments)
289
+ {
290
+ typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T);
291
+ return new Auto_Function_Wrapper<Func, Ret_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T>(func, handler, arguments);
292
+ }
293
+
294
+ template<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>
295
+ Wrapped_Function * wrap_function(
296
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T),
297
+ Data_Object<Exception_Handler> handler,
298
+ Arguments* arguments)
299
+ {
300
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T);
301
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T>(func, handler, arguments);
302
+ }
303
+
304
+ template<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>
305
+ Wrapped_Function * wrap_function(
306
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T) const,
307
+ Data_Object<Exception_Handler> handler,
308
+ Arguments* arguments)
309
+ {
310
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T) const;
311
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T>(func, handler, arguments);
312
+ }
313
+
314
+ // ---------------------------------------------------------------------
315
+
316
+ template<typename Ret_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>
317
+ Wrapped_Function * wrap_function(
318
+ Ret_T (*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T),
319
+ Data_Object<Exception_Handler> handler,
320
+ Arguments* arguments)
321
+ {
322
+ typedef Ret_T (*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T);
323
+ return new Auto_Function_Wrapper<Func, Ret_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T>(func, handler, arguments);
324
+ }
325
+
326
+ template<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>
327
+ Wrapped_Function * wrap_function(
328
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T),
329
+ Data_Object<Exception_Handler> handler,
330
+ Arguments* arguments)
331
+ {
332
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T);
333
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T>(func, handler, arguments);
334
+ }
335
+
336
+ template<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>
337
+ Wrapped_Function * wrap_function(
338
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T) const,
339
+ Data_Object<Exception_Handler> handler,
340
+ Arguments* arguments)
341
+ {
342
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T) const;
343
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T>(func, handler, arguments);
344
+ }
345
+
346
+ // ---------------------------------------------------------------------
347
+
348
+ template<typename Ret_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>
349
+ Wrapped_Function * wrap_function(
350
+ 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),
351
+ Data_Object<Exception_Handler> handler,
352
+ Arguments* arguments)
353
+ {
354
+ 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);
355
+ return new Auto_Function_Wrapper<Func, Ret_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T>(func, handler, arguments);
356
+ }
357
+
358
+ template<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>
359
+ Wrapped_Function * wrap_function(
360
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T),
361
+ Data_Object<Exception_Handler> handler,
362
+ Arguments* arguments)
363
+ {
364
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T);
365
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T>(func, handler, arguments);
366
+ }
367
+
368
+ template<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>
369
+ Wrapped_Function * wrap_function(
370
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T) const,
371
+ Data_Object<Exception_Handler> handler,
372
+ Arguments* arguments)
373
+ {
374
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T) const;
375
+ return new Auto_Member_Function_Wrapper<Func, Ret_T, Self_T, Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T>(func, handler, arguments);
376
+ }
377
+
378
+ // ---------------------------------------------------------------------
379
+
380
+ template<typename Ret_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>
381
+ Wrapped_Function * wrap_function(
382
+ 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),
383
+ Data_Object<Exception_Handler> handler,
384
+ Arguments* arguments)
385
+ {
386
+ 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);
387
+ return new Auto_Function_Wrapper<Func, Ret_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>(func, handler, arguments);
388
+ }
389
+
390
+ template<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>
391
+ Wrapped_Function * wrap_function(
392
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T),
393
+ Data_Object<Exception_Handler> handler,
394
+ Arguments* arguments)
395
+ {
396
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T);
397
+ return new Auto_Member_Function_Wrapper<Func, 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>(func, handler, arguments);
398
+ }
399
+
400
+ template<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>
401
+ Wrapped_Function * wrap_function(
402
+ Ret_T (Self_T::*func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T) const,
403
+ Data_Object<Exception_Handler> handler,
404
+ Arguments* arguments)
405
+ {
406
+ typedef Ret_T (Self_T::*Func)(Arg0_T, Arg1_T, Arg2_T, Arg3_T, Arg4_T, Arg5_T, Arg6_T, Arg7_T, Arg8_T, Arg9_T, Arg10_T) const;
407
+ return new Auto_Member_Function_Wrapper<Func, 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>(func, handler, arguments);
408
+ }
409
+
410
+ // ---------------------------------------------------------------------
411
+
412
+ template<typename Ret_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>
413
+ Wrapped_Function * wrap_function(
414
+ 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),
415
+ Data_Object<Exception_Handler> handler,
416
+ Arguments* arguments)
417
+ {
418
+ 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);
419
+ return new Auto_Function_Wrapper<Func, Ret_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>(func, handler, arguments);
420
+ }
421
+
422
+ template<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>
423
+ Wrapped_Function * wrap_function(
424
+ Ret_T (Self_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),
425
+ Data_Object<Exception_Handler> handler,
426
+ Arguments* arguments)
427
+ {
428
+ typedef Ret_T (Self_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);
429
+ return new Auto_Member_Function_Wrapper<Func, 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>(func, handler, arguments);
430
+ }
431
+
432
+ template<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>
433
+ Wrapped_Function * wrap_function(
434
+ Ret_T (Self_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) const,
435
+ Data_Object<Exception_Handler> handler,
436
+ Arguments* arguments)
437
+ {
438
+ typedef Ret_T (Self_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) const;
439
+ return new Auto_Member_Function_Wrapper<Func, 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>(func, handler, arguments);
440
+ }
441
+
442
+ // ---------------------------------------------------------------------
443
+
444
+ template<typename Ret_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>
445
+ Wrapped_Function * wrap_function(
446
+ 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),
447
+ Data_Object<Exception_Handler> handler,
448
+ Arguments* arguments)
449
+ {
450
+ 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);
451
+ return new Auto_Function_Wrapper<Func, Ret_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>(func, handler, arguments);
452
+ }
453
+
454
+ template<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>
455
+ Wrapped_Function * wrap_function(
456
+ Ret_T (Self_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),
457
+ Data_Object<Exception_Handler> handler,
458
+ Arguments* arguments)
459
+ {
460
+ typedef Ret_T (Self_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);
461
+ return new Auto_Member_Function_Wrapper<Func, 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>(func, handler, arguments);
462
+ }
463
+
464
+ template<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>
465
+ Wrapped_Function * wrap_function(
466
+ Ret_T (Self_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) const,
467
+ Data_Object<Exception_Handler> handler,
468
+ Arguments* arguments)
469
+ {
470
+ typedef Ret_T (Self_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) const;
471
+ return new Auto_Member_Function_Wrapper<Func, 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>(func, handler, arguments);
472
+ }
473
+
474
+ // ---------------------------------------------------------------------
475
+
476
+ template<typename Ret_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>
477
+ Wrapped_Function * wrap_function(
478
+ 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),
479
+ Data_Object<Exception_Handler> handler,
480
+ Arguments* arguments)
481
+ {
482
+ 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);
483
+ return new Auto_Function_Wrapper<Func, Ret_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>(func, handler, arguments);
484
+ }
485
+
486
+ template<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>
487
+ Wrapped_Function * wrap_function(
488
+ Ret_T (Self_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),
489
+ Data_Object<Exception_Handler> handler,
490
+ Arguments* arguments)
491
+ {
492
+ typedef Ret_T (Self_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);
493
+ return new Auto_Member_Function_Wrapper<Func, 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>(func, handler, arguments);
494
+ }
495
+
496
+ template<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>
497
+ Wrapped_Function * wrap_function(
498
+ Ret_T (Self_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) const,
499
+ Data_Object<Exception_Handler> handler,
500
+ Arguments* arguments)
501
+ {
502
+ typedef Ret_T (Self_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) const;
503
+ return new Auto_Member_Function_Wrapper<Func, 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>(func, handler, arguments);
504
+ }
505
+
506
+ // ---------------------------------------------------------------------
507
+
508
+ } // namespace detail
509
+
510
+ } // namespace Rice
511
+
512
+
513
+ #endif // Rice__detail__wrap_function__ipp_
514
+