rice 2.2.0 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (76) hide show
  1. checksums.yaml +4 -4
  2. data/COPYING +2 -2
  3. data/Doxyfile +1 -1
  4. data/Makefile.in +15 -7
  5. data/README.md +115 -117
  6. data/aclocal.m4 +25 -28
  7. data/ax_cxx_compile_stdcxx.m4 +951 -0
  8. data/configure +486 -61
  9. data/configure.ac +3 -3
  10. data/extconf.rb +6 -2
  11. data/rice/Array.hpp +16 -16
  12. data/rice/Array.ipp +11 -11
  13. data/rice/Class_defn.hpp +1 -0
  14. data/rice/Constructor.hpp +27 -371
  15. data/rice/Director.hpp +3 -3
  16. data/rice/Exception.cpp +2 -7
  17. data/rice/Hash.hpp +8 -5
  18. data/rice/Makefile.am +0 -4
  19. data/rice/Makefile.in +6 -10
  20. data/rice/Object.cpp +1 -1
  21. data/rice/Object.ipp +15 -1
  22. data/rice/Object_defn.hpp +24 -1
  23. data/rice/String.cpp +2 -7
  24. data/rice/Struct.cpp +2 -2
  25. data/rice/Struct.hpp +1 -1
  26. data/rice/Struct.ipp +1 -1
  27. data/rice/config.hpp +2 -2
  28. data/rice/config.hpp.in +2 -2
  29. data/rice/detail/Arguments.hpp +1 -1
  30. data/rice/detail/Auto_Function_Wrapper.ipp +512 -1025
  31. data/rice/detail/Auto_Member_Function_Wrapper.ipp +272 -545
  32. data/rice/detail/ruby.hpp +0 -4
  33. data/rice/detail/ruby_version_code.hpp +1 -1
  34. data/rice/detail/wrap_function.hpp +32 -307
  35. data/rice/protect.hpp +3 -57
  36. data/rice/to_from_ruby.ipp +3 -3
  37. data/ruby/Makefile.in +4 -4
  38. data/ruby/lib/Makefile.in +4 -4
  39. data/ruby/lib/version.rb +1 -1
  40. data/sample/Makefile.am +10 -4
  41. data/sample/Makefile.in +14 -8
  42. data/sample/callbacks/extconf.rb +3 -0
  43. data/sample/callbacks/sample_callbacks.cpp +38 -0
  44. data/sample/callbacks/test.rb +28 -0
  45. data/test/Makefile.am +1 -0
  46. data/test/Makefile.in +15 -9
  47. data/test/embed_ruby.cpp +21 -0
  48. data/test/embed_ruby.hpp +4 -0
  49. data/test/ext/Makefile.in +4 -4
  50. data/test/test_Address_Registration_Guard.cpp +2 -1
  51. data/test/test_Array.cpp +2 -1
  52. data/test/test_Builtin_Object.cpp +2 -1
  53. data/test/test_Class.cpp +2 -1
  54. data/test/test_Data_Object.cpp +2 -1
  55. data/test/test_Data_Type.cpp +2 -1
  56. data/test/test_Director.cpp +2 -1
  57. data/test/test_Enum.cpp +2 -1
  58. data/test/test_Exception.cpp +2 -1
  59. data/test/test_Hash.cpp +2 -1
  60. data/test/test_Identifier.cpp +2 -1
  61. data/test/test_Memory_Management.cpp +2 -1
  62. data/test/test_Module.cpp +2 -1
  63. data/test/test_Object.cpp +13 -1
  64. data/test/test_String.cpp +2 -1
  65. data/test/test_Struct.cpp +2 -1
  66. data/test/test_Symbol.cpp +2 -1
  67. data/test/test_To_From_Ruby.cpp +2 -1
  68. data/test/test_global_functions.cpp +2 -1
  69. data/test/test_rice.rb +4 -0
  70. data/test/unittest.cpp +34 -8
  71. metadata +26 -11
  72. data/check_stdcxx_11.ac +0 -103
  73. data/rice/detail/object_call.hpp +0 -69
  74. data/rice/detail/object_call.ipp +0 -131
  75. data/rice/detail/traits.hpp +0 -43
  76. data/rice/detail/wrap_function.ipp +0 -514
@@ -1,103 +0,0 @@
1
- # ============================================================================
2
- # http://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx_11.html
3
- # ============================================================================
4
- #
5
- # SYNOPSIS
6
- #
7
- # AX_CXX_COMPILE_STDCXX_11([ext|noext],[mandatory|optional])
8
- #
9
- # DESCRIPTION
10
- #
11
- # Check for baseline language coverage in the compiler for the C++11
12
- # standard; if necessary, add switches to CXXFLAGS to enable support.
13
- #
14
- # The first argument, if specified, indicates whether you insist on an
15
- # extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g.
16
- # -std=c++11). If neither is specified, you get whatever works, with
17
- # preference for an extended mode.
18
- #
19
- # The second argument, if specified 'mandatory' or if left unspecified,
20
- # indicates that baseline C++11 support is required and that the macro
21
- # should error out if no mode with that support is found. If specified
22
- # 'optional', then configuration proceeds regardless, after defining
23
- # HAVE_CXX11 if and only if a supporting mode is found.
24
- #
25
- # LICENSE
26
- #
27
- # Copyright (c) 2008 Benjamin Kosnik <bkoz@redhat.com>
28
- # Copyright (c) 2012 Zack Weinberg <zackw@panix.com>
29
- # Copyright (c) 2013 Roy Stogner <roystgnr@ices.utexas.edu>
30
- # Copyright (c) 2014 Alexey Sokolov <sokolov@google.com>
31
- #
32
- # Copying and distribution of this file, with or without modification, are
33
- # permitted in any medium without royalty provided the copyright notice
34
- # and this notice are preserved. This file is offered as-is, without any
35
- # warranty.
36
-
37
- #serial 4
38
-
39
- m4_define([_AX_CXX_COMPILE_STDCXX_11_testbody], [[
40
- template <typename T>
41
- struct check
42
- {
43
- static_assert(sizeof(int) <= sizeof(T), "not big enough");
44
- };
45
-
46
- struct Base {
47
- virtual void f() {}
48
- };
49
- struct Child : public Base {
50
- virtual void f() override {}
51
- };
52
-
53
- typedef check<check<bool>> right_angle_brackets;
54
-
55
- int a;
56
- decltype(a) b;
57
-
58
- typedef check<int> check_type;
59
- check_type c;
60
- check_type&& cr = static_cast<check_type&&>(c);
61
-
62
- auto d = a;
63
- auto l = [](){};
64
- ]])
65
-
66
- AC_DEFUN([AX_CXX_COMPILE_STDCXX_11], [dnl
67
- m4_if([$1], [], [],
68
- [$1], [ext], [],
69
- [$1], [noext], [],
70
- [m4_fatal([invalid argument `$1' to AX_CXX_COMPILE_STDCXX_11])])dnl
71
- m4_if([$2], [], [ax_cxx_compile_cxx11_required=true],
72
- [$2], [mandatory], [ax_cxx_compile_cxx11_required=true],
73
- [$2], [optional], [ax_cxx_compile_cxx11_required=false],
74
- [m4_fatal([invalid second argument `$2' to AX_CXX_COMPILE_STDCXX_11])])
75
- AC_LANG_PUSH([C++])dnl
76
- ac_success=no
77
- AC_CACHE_CHECK(whether $CXX supports C++11 features by default,
78
- ax_cv_cxx_compile_cxx11,
79
- [AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_11_testbody])],
80
- [ax_cv_cxx_compile_cxx11=yes],
81
- [ax_cv_cxx_compile_cxx11=no])])
82
- if test x$ax_cv_cxx_compile_cxx11 = xyes; then
83
- ac_success=yes
84
- fi
85
-
86
- AC_LANG_POP([C++])
87
- if test x$ax_cxx_compile_cxx11_required = xtrue; then
88
- if test x$ac_success = xno; then
89
- AC_MSG_ERROR([*** A compiler with support for C++11 language features is required.])
90
- fi
91
- else
92
- if test x$ac_success = xno; then
93
- HAVE_CXX11=0
94
- AC_MSG_NOTICE([No compiler with C++11 support was found])
95
- else
96
- HAVE_CXX11=1
97
- AC_DEFINE(HAVE_CXX11,1,
98
- [define if the compiler supports basic C++11 syntax])
99
- fi
100
-
101
- AC_SUBST(HAVE_CXX11)
102
- fi
103
- ])
@@ -1,69 +0,0 @@
1
- // This is a generated file. DO NOT EDIT!!
2
- #ifdef DOXYGEN
3
-
4
- //! Call the Ruby method specified by 'id' on object 'obj'.
5
- /*! Pass in arguments (arg1, arg2, ...). The arguments will be converted to
6
- * Ruby objects with to_ruby<>. The return value will automatically be
7
- * converted to type Retval_T with from_ruby<>.
8
- *
9
- * E.g.:
10
- * \code
11
- * float y = x.call<float>("foo", z, 42);
12
- * \endcode
13
- */
14
- template<typename Retval_T>
15
- Retval_T call(Identifier id, T1 arg1, T2 arg2, ...) const;
16
-
17
- //! Version of call which defaults to Object return type.
18
- Object call(Identifier id, T1 arg1, T2 arg2, ...) const;
19
- #else
20
-
21
- Object call(Identifier id) const;
22
-
23
- template<typename T0>
24
- Object call(Identifier id, T0 arg0) const;
25
-
26
- template<typename T0, typename T1>
27
- Object call(Identifier id, T0 arg0, T1 arg1) const;
28
-
29
- template<typename T0, typename T1, typename T2>
30
- Object call(Identifier id, T0 arg0, T1 arg1, T2 arg2) const;
31
-
32
- template<typename T0, typename T1, typename T2, typename T3>
33
- Object call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3) const;
34
-
35
- template<typename T0, typename T1, typename T2, typename T3, typename T4>
36
- Object call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4) const;
37
-
38
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5>
39
- Object call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5) const;
40
-
41
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6>
42
- Object call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6) const;
43
-
44
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7>
45
- Object call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7) const;
46
-
47
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8>
48
- Object call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8) const;
49
-
50
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
51
- Object call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9) const;
52
-
53
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10>
54
- Object call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10) const;
55
-
56
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11>
57
- Object call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11) const;
58
-
59
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12>
60
- Object call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12) const;
61
-
62
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12, typename T13>
63
- Object call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13) const;
64
-
65
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12, typename T13, typename T14>
66
- Object call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14) const;
67
-
68
-
69
- #endif
@@ -1,131 +0,0 @@
1
- // This is a generated file. DO NOT EDIT!!
2
- #include "../protect.hpp"
3
- #include "../to_from_ruby.hpp"
4
-
5
- inline Rice::Object Rice::Object::
6
- call(Identifier id) const
7
- {
8
- VALUE args[] = { };
9
- return protect(rb_funcall2, value(), id, 0, args);
10
- }
11
-
12
- template<typename T0>
13
- inline Rice::Object Rice::Object::
14
- call(Identifier id, T0 arg0) const
15
- {
16
- VALUE args[] = { to_ruby(arg0) };
17
- return protect(rb_funcall2, value(), id, 1, args);
18
- }
19
-
20
- template<typename T0, typename T1>
21
- inline Rice::Object Rice::Object::
22
- call(Identifier id, T0 arg0, T1 arg1) const
23
- {
24
- VALUE args[] = { to_ruby(arg0), to_ruby(arg1) };
25
- return protect(rb_funcall2, value(), id, 2, args);
26
- }
27
-
28
- template<typename T0, typename T1, typename T2>
29
- inline Rice::Object Rice::Object::
30
- call(Identifier id, T0 arg0, T1 arg1, T2 arg2) const
31
- {
32
- VALUE args[] = { to_ruby(arg0), to_ruby(arg1), to_ruby(arg2) };
33
- return protect(rb_funcall2, value(), id, 3, args);
34
- }
35
-
36
- template<typename T0, typename T1, typename T2, typename T3>
37
- inline Rice::Object Rice::Object::
38
- call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3) const
39
- {
40
- VALUE args[] = { to_ruby(arg0), to_ruby(arg1), to_ruby(arg2), to_ruby(arg3) };
41
- return protect(rb_funcall2, value(), id, 4, args);
42
- }
43
-
44
- template<typename T0, typename T1, typename T2, typename T3, typename T4>
45
- inline Rice::Object Rice::Object::
46
- call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4) const
47
- {
48
- VALUE args[] = { to_ruby(arg0), to_ruby(arg1), to_ruby(arg2), to_ruby(arg3), to_ruby(arg4) };
49
- return protect(rb_funcall2, value(), id, 5, args);
50
- }
51
-
52
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5>
53
- inline Rice::Object Rice::Object::
54
- call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5) const
55
- {
56
- VALUE args[] = { to_ruby(arg0), to_ruby(arg1), to_ruby(arg2), to_ruby(arg3), to_ruby(arg4), to_ruby(arg5) };
57
- return protect(rb_funcall2, value(), id, 6, args);
58
- }
59
-
60
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6>
61
- inline Rice::Object Rice::Object::
62
- call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6) const
63
- {
64
- VALUE args[] = { to_ruby(arg0), to_ruby(arg1), to_ruby(arg2), to_ruby(arg3), to_ruby(arg4), to_ruby(arg5), to_ruby(arg6) };
65
- return protect(rb_funcall2, value(), id, 7, args);
66
- }
67
-
68
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7>
69
- inline Rice::Object Rice::Object::
70
- call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7) const
71
- {
72
- VALUE args[] = { to_ruby(arg0), to_ruby(arg1), to_ruby(arg2), to_ruby(arg3), to_ruby(arg4), to_ruby(arg5), to_ruby(arg6), to_ruby(arg7) };
73
- return protect(rb_funcall2, value(), id, 8, args);
74
- }
75
-
76
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8>
77
- inline Rice::Object Rice::Object::
78
- call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8) const
79
- {
80
- VALUE args[] = { to_ruby(arg0), to_ruby(arg1), to_ruby(arg2), to_ruby(arg3), to_ruby(arg4), to_ruby(arg5), to_ruby(arg6), to_ruby(arg7), to_ruby(arg8) };
81
- return protect(rb_funcall2, value(), id, 9, args);
82
- }
83
-
84
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
85
- inline Rice::Object Rice::Object::
86
- call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9) const
87
- {
88
- VALUE args[] = { to_ruby(arg0), to_ruby(arg1), to_ruby(arg2), to_ruby(arg3), to_ruby(arg4), to_ruby(arg5), to_ruby(arg6), to_ruby(arg7), to_ruby(arg8), to_ruby(arg9) };
89
- return protect(rb_funcall2, value(), id, 10, args);
90
- }
91
-
92
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10>
93
- inline Rice::Object Rice::Object::
94
- call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10) const
95
- {
96
- VALUE args[] = { to_ruby(arg0), to_ruby(arg1), to_ruby(arg2), to_ruby(arg3), to_ruby(arg4), to_ruby(arg5), to_ruby(arg6), to_ruby(arg7), to_ruby(arg8), to_ruby(arg9), to_ruby(arg10) };
97
- return protect(rb_funcall2, value(), id, 11, args);
98
- }
99
-
100
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11>
101
- inline Rice::Object Rice::Object::
102
- call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11) const
103
- {
104
- VALUE args[] = { to_ruby(arg0), to_ruby(arg1), to_ruby(arg2), to_ruby(arg3), to_ruby(arg4), to_ruby(arg5), to_ruby(arg6), to_ruby(arg7), to_ruby(arg8), to_ruby(arg9), to_ruby(arg10), to_ruby(arg11) };
105
- return protect(rb_funcall2, value(), id, 12, args);
106
- }
107
-
108
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12>
109
- inline Rice::Object Rice::Object::
110
- call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12) const
111
- {
112
- VALUE args[] = { to_ruby(arg0), to_ruby(arg1), to_ruby(arg2), to_ruby(arg3), to_ruby(arg4), to_ruby(arg5), to_ruby(arg6), to_ruby(arg7), to_ruby(arg8), to_ruby(arg9), to_ruby(arg10), to_ruby(arg11), to_ruby(arg12) };
113
- return protect(rb_funcall2, value(), id, 13, args);
114
- }
115
-
116
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12, typename T13>
117
- inline Rice::Object Rice::Object::
118
- call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13) const
119
- {
120
- VALUE args[] = { to_ruby(arg0), to_ruby(arg1), to_ruby(arg2), to_ruby(arg3), to_ruby(arg4), to_ruby(arg5), to_ruby(arg6), to_ruby(arg7), to_ruby(arg8), to_ruby(arg9), to_ruby(arg10), to_ruby(arg11), to_ruby(arg12), to_ruby(arg13) };
121
- return protect(rb_funcall2, value(), id, 14, args);
122
- }
123
-
124
- template<typename T0, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12, typename T13, typename T14>
125
- inline Rice::Object Rice::Object::
126
- call(Identifier id, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6, T7 arg7, T8 arg8, T9 arg9, T10 arg10, T11 arg11, T12 arg12, T13 arg13, T14 arg14) const
127
- {
128
- VALUE args[] = { to_ruby(arg0), to_ruby(arg1), to_ruby(arg2), to_ruby(arg3), to_ruby(arg4), to_ruby(arg5), to_ruby(arg6), to_ruby(arg7), to_ruby(arg8), to_ruby(arg9), to_ruby(arg10), to_ruby(arg11), to_ruby(arg12), to_ruby(arg13), to_ruby(arg14) };
129
- return protect(rb_funcall2, value(), id, 15, args);
130
- }
131
-
@@ -1,43 +0,0 @@
1
- #ifndef Rice__detail__traits__hpp_
2
- #define Rice__detail__traits__hpp_
3
-
4
- namespace Rice
5
- {
6
- namespace detail
7
- {
8
-
9
- /**
10
- * Remove const from a type
11
- */
12
- template<typename T>
13
- struct remove_const { typedef T Type; };
14
-
15
- template<typename T>
16
- struct remove_const<const T> { typedef T Type; };
17
-
18
- /**
19
- * Remove a reference from a type
20
- */
21
- template<typename T>
22
- struct remove_ref { typedef T Type; };
23
-
24
- template<typename T>
25
- struct remove_ref<T &> { typedef T Type; };
26
-
27
- /**
28
- * Do both of the above in one easy step
29
- */
30
- template<typename T>
31
- struct sanitize
32
- {
33
- typedef T Type;
34
- //typedef typename remove_const<
35
- //typename remove_ref<T>::Type
36
- //>::Type Type;
37
- };
38
-
39
- }
40
- }
41
-
42
-
43
- #endif // Rice__detail__traits__hpp_
@@ -1,514 +0,0 @@
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
-