2 /* Do not edit! -- generated file */
3 #ifndef _SIGC_ADAPTORS_MACROS_RETYPEHM4_
4 #define _SIGC_ADAPTORS_MACROS_RETYPEHM4_
5 #include <sigc++/adaptors/adaptor_trait.h>
6 #include <sigc++/functors/ptr_fun.h>
7 #include <sigc++/functors/mem_fun.h>
8 #include <sigc++/functors/slot.h>
12 /** @defgroup retype retype(), retype_return()
13 * sigc::retype() alters a sigc::pointer_functor, a sigc::mem_functor or a sigc::slot
14 * in that it makes C-style casts to the functor's parameter types
15 * of all parameters passed through operator()().
17 * Use this adaptor for inline conversion between numeric or other simple types.
21 * sigc::retype(sigc::ptr_fun(&foo))(5.7F); // calls foo(5)
24 * The functor sigc::retype() returns can be passed into
25 * sigc::signal::connect() directly.
29 * sigc::signal<void,float> some_signal;
31 * some_signal.connect(sigc::retype(sigc::ptr_fun(&foo)));
34 * This adaptor builds an exception in that it only works on sig::pointer_functor,
35 * sigc::mem_functor and sigc::slot because it needs sophisticated information about
36 * the parameter types that cannot be deduced from arbitrary functor types.
38 * sigc::retype_return() alters the return type of an arbitrary functor.
39 * Like in sigc::retype() a C-style cast is preformed. Usage sigc::retype_return() is
40 * not restricted to libsigc++ functor types but you need to
41 * specify the new return type as a template parameter.
46 * std::cout << sigc::retype_return<int>(&foo)(); // converts foo's return value to an integer
52 /** Adaptor that performs C-style casts on the parameters passed on to the functor.
53 * Use the convenience function sigc::retype() to create an instance of retype_functor.
55 * The following template arguments are used:
56 * - @e T_functor Type of the functor to wrap.
57 * - @e T_type1 Type of @e T_functor's 1th argument.
58 * - @e T_type2 Type of @e T_functor's 2th argument.
59 * - @e T_type3 Type of @e T_functor's 3th argument.
60 * - @e T_type4 Type of @e T_functor's 4th argument.
61 * - @e T_type5 Type of @e T_functor's 5th argument.
62 * - @e T_type6 Type of @e T_functor's 6th argument.
63 * - @e T_type7 Type of @e T_functor's 7th argument.
67 template <class T_functor, class T_type1=nil,class T_type2=nil,class T_type3=nil,class T_type4=nil,class T_type5=nil,class T_type6=nil,class T_type7=nil>
69 : public adapts<T_functor>
71 typedef typename adapts<T_functor>::adaptor_type adaptor_type;
73 template <class T_arg1=void,class T_arg2=void,class T_arg3=void,class T_arg4=void,class T_arg5=void,class T_arg6=void,class T_arg7=void>
74 struct deduce_result_type
75 { typedef typename adaptor_type::template deduce_result_type<typename type_trait<T_arg1>::pass,typename type_trait<T_arg2>::pass,typename type_trait<T_arg3>::pass,typename type_trait<T_arg4>::pass,typename type_trait<T_arg5>::pass,typename type_trait<T_arg6>::pass,typename type_trait<T_arg7>::pass>::type type; };
76 typedef typename adapts<T_functor>::result_type result_type;
78 result_type operator()();
80 template <class T_arg1>
81 typename deduce_result_type<T_arg1>::type
82 operator()(T_arg1 _A_a1)
83 { return this->functor_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename type_trait<T_type1>::take>
84 (static_cast<T_type1>(_A_a1));
87 #ifndef SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD
88 template <class T_arg1>
89 typename deduce_result_type<T_arg1>::type
90 sun_forte_workaround(T_arg1 _A_a1)
91 { return this->functor_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename type_trait<T_type1>::take>
92 (static_cast<T_type1>(_A_a1));
96 template <class T_arg1,class T_arg2>
97 typename deduce_result_type<T_arg1,T_arg2>::type
98 operator()(T_arg1 _A_a1,T_arg2 _A_a2)
99 { return this->functor_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename type_trait<T_type1>::take,typename type_trait<T_type2>::take>
100 (static_cast<T_type1>(_A_a1),static_cast<T_type2>(_A_a2));
103 #ifndef SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD
104 template <class T_arg1,class T_arg2>
105 typename deduce_result_type<T_arg1,T_arg2>::type
106 sun_forte_workaround(T_arg1 _A_a1,T_arg2 _A_a2)
107 { return this->functor_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename type_trait<T_type1>::take,typename type_trait<T_type2>::take>
108 (static_cast<T_type1>(_A_a1),static_cast<T_type2>(_A_a2));
112 template <class T_arg1,class T_arg2,class T_arg3>
113 typename deduce_result_type<T_arg1,T_arg2,T_arg3>::type
114 operator()(T_arg1 _A_a1,T_arg2 _A_a2,T_arg3 _A_a3)
115 { return this->functor_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename type_trait<T_type1>::take,typename type_trait<T_type2>::take,typename type_trait<T_type3>::take>
116 (static_cast<T_type1>(_A_a1),static_cast<T_type2>(_A_a2),static_cast<T_type3>(_A_a3));
119 #ifndef SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD
120 template <class T_arg1,class T_arg2,class T_arg3>
121 typename deduce_result_type<T_arg1,T_arg2,T_arg3>::type
122 sun_forte_workaround(T_arg1 _A_a1,T_arg2 _A_a2,T_arg3 _A_a3)
123 { return this->functor_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename type_trait<T_type1>::take,typename type_trait<T_type2>::take,typename type_trait<T_type3>::take>
124 (static_cast<T_type1>(_A_a1),static_cast<T_type2>(_A_a2),static_cast<T_type3>(_A_a3));
128 template <class T_arg1,class T_arg2,class T_arg3,class T_arg4>
129 typename deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4>::type
130 operator()(T_arg1 _A_a1,T_arg2 _A_a2,T_arg3 _A_a3,T_arg4 _A_a4)
131 { return this->functor_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename type_trait<T_type1>::take,typename type_trait<T_type2>::take,typename type_trait<T_type3>::take,typename type_trait<T_type4>::take>
132 (static_cast<T_type1>(_A_a1),static_cast<T_type2>(_A_a2),static_cast<T_type3>(_A_a3),static_cast<T_type4>(_A_a4));
135 #ifndef SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD
136 template <class T_arg1,class T_arg2,class T_arg3,class T_arg4>
137 typename deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4>::type
138 sun_forte_workaround(T_arg1 _A_a1,T_arg2 _A_a2,T_arg3 _A_a3,T_arg4 _A_a4)
139 { return this->functor_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename type_trait<T_type1>::take,typename type_trait<T_type2>::take,typename type_trait<T_type3>::take,typename type_trait<T_type4>::take>
140 (static_cast<T_type1>(_A_a1),static_cast<T_type2>(_A_a2),static_cast<T_type3>(_A_a3),static_cast<T_type4>(_A_a4));
144 template <class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5>
145 typename deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>::type
146 operator()(T_arg1 _A_a1,T_arg2 _A_a2,T_arg3 _A_a3,T_arg4 _A_a4,T_arg5 _A_a5)
147 { return this->functor_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename type_trait<T_type1>::take,typename type_trait<T_type2>::take,typename type_trait<T_type3>::take,typename type_trait<T_type4>::take,typename type_trait<T_type5>::take>
148 (static_cast<T_type1>(_A_a1),static_cast<T_type2>(_A_a2),static_cast<T_type3>(_A_a3),static_cast<T_type4>(_A_a4),static_cast<T_type5>(_A_a5));
151 #ifndef SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD
152 template <class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5>
153 typename deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>::type
154 sun_forte_workaround(T_arg1 _A_a1,T_arg2 _A_a2,T_arg3 _A_a3,T_arg4 _A_a4,T_arg5 _A_a5)
155 { return this->functor_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename type_trait<T_type1>::take,typename type_trait<T_type2>::take,typename type_trait<T_type3>::take,typename type_trait<T_type4>::take,typename type_trait<T_type5>::take>
156 (static_cast<T_type1>(_A_a1),static_cast<T_type2>(_A_a2),static_cast<T_type3>(_A_a3),static_cast<T_type4>(_A_a4),static_cast<T_type5>(_A_a5));
160 template <class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6>
161 typename deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>::type
162 operator()(T_arg1 _A_a1,T_arg2 _A_a2,T_arg3 _A_a3,T_arg4 _A_a4,T_arg5 _A_a5,T_arg6 _A_a6)
163 { return this->functor_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename type_trait<T_type1>::take,typename type_trait<T_type2>::take,typename type_trait<T_type3>::take,typename type_trait<T_type4>::take,typename type_trait<T_type5>::take,typename type_trait<T_type6>::take>
164 (static_cast<T_type1>(_A_a1),static_cast<T_type2>(_A_a2),static_cast<T_type3>(_A_a3),static_cast<T_type4>(_A_a4),static_cast<T_type5>(_A_a5),static_cast<T_type6>(_A_a6));
167 #ifndef SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD
168 template <class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6>
169 typename deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>::type
170 sun_forte_workaround(T_arg1 _A_a1,T_arg2 _A_a2,T_arg3 _A_a3,T_arg4 _A_a4,T_arg5 _A_a5,T_arg6 _A_a6)
171 { return this->functor_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename type_trait<T_type1>::take,typename type_trait<T_type2>::take,typename type_trait<T_type3>::take,typename type_trait<T_type4>::take,typename type_trait<T_type5>::take,typename type_trait<T_type6>::take>
172 (static_cast<T_type1>(_A_a1),static_cast<T_type2>(_A_a2),static_cast<T_type3>(_A_a3),static_cast<T_type4>(_A_a4),static_cast<T_type5>(_A_a5),static_cast<T_type6>(_A_a6));
176 template <class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7>
177 typename deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>::type
178 operator()(T_arg1 _A_a1,T_arg2 _A_a2,T_arg3 _A_a3,T_arg4 _A_a4,T_arg5 _A_a5,T_arg6 _A_a6,T_arg7 _A_a7)
179 { return this->functor_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename type_trait<T_type1>::take,typename type_trait<T_type2>::take,typename type_trait<T_type3>::take,typename type_trait<T_type4>::take,typename type_trait<T_type5>::take,typename type_trait<T_type6>::take,typename type_trait<T_type7>::take>
180 (static_cast<T_type1>(_A_a1),static_cast<T_type2>(_A_a2),static_cast<T_type3>(_A_a3),static_cast<T_type4>(_A_a4),static_cast<T_type5>(_A_a5),static_cast<T_type6>(_A_a6),static_cast<T_type7>(_A_a7));
183 #ifndef SIGC_TEMPLATE_SPECIALIZATION_OPERATOR_OVERLOAD
184 template <class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7>
185 typename deduce_result_type<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>::type
186 sun_forte_workaround(T_arg1 _A_a1,T_arg2 _A_a2,T_arg3 _A_a3,T_arg4 _A_a4,T_arg5 _A_a5,T_arg6 _A_a6,T_arg7 _A_a7)
187 { return this->functor_.SIGC_WORKAROUND_OPERATOR_PARENTHESES<typename type_trait<T_type1>::take,typename type_trait<T_type2>::take,typename type_trait<T_type3>::take,typename type_trait<T_type4>::take,typename type_trait<T_type5>::take,typename type_trait<T_type6>::take,typename type_trait<T_type7>::take>
188 (static_cast<T_type1>(_A_a1),static_cast<T_type2>(_A_a2),static_cast<T_type3>(_A_a3),static_cast<T_type4>(_A_a4),static_cast<T_type5>(_A_a5),static_cast<T_type6>(_A_a6),static_cast<T_type7>(_A_a7));
193 /** Constructs a retype_functor object that performs C-style casts on the parameters passed on to the functor.
194 * @param _A_functor Functor to invoke from operator()().
196 explicit retype_functor(typename type_trait<T_functor>::take _A_functor)
197 : adapts<T_functor>(_A_functor)
201 template <class T_functor, class T_type1,class T_type2,class T_type3,class T_type4,class T_type5,class T_type6,class T_type7>
202 typename retype_functor<T_functor, T_type1,T_type2,T_type3,T_type4,T_type5,T_type6,T_type7>::result_type
203 retype_functor<T_functor, T_type1,T_type2,T_type3,T_type4,T_type5,T_type6,T_type7>::operator()()
204 { return this->functor_(); }
207 //template specialization of visit_each<>(action, functor):
208 /** Performs a functor on each of the targets of a functor.
209 * The function overload for sigc::retype_functor performs a functor on the
210 * functor stored in the sigc::retype_functor object.
214 template <class T_action, class T_functor, class T_type1,class T_type2,class T_type3,class T_type4,class T_type5,class T_type6,class T_type7>
215 void visit_each(const T_action& _A_action,
216 const retype_functor<T_functor, T_type1,T_type2,T_type3,T_type4,T_type5,T_type6,T_type7>& _A_target)
218 visit_each(_A_action, _A_target.functor_);
222 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
223 * This function template specialization works on sigc::slot.
225 * @param _A_functor Functor that should be wrapped.
226 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
230 template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7>
231 inline retype_functor<slot<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
232 retype(const slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>& _A_functor)
233 { return retype_functor<slot<T_return, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
237 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
238 * This function template specialization works on sigc::pointer_functor.
240 * @param _A_functor Functor that should be wrapped.
241 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
245 template <class T_return>
246 inline retype_functor<pointer_functor0<T_return> >
247 retype(const pointer_functor0<T_return>& _A_functor)
248 { return retype_functor<pointer_functor0<T_return> >
251 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
252 * This function template specialization works on sigc::pointer_functor.
254 * @param _A_functor Functor that should be wrapped.
255 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
259 template <class T_arg1, class T_return>
260 inline retype_functor<pointer_functor1<T_arg1, T_return>, T_arg1 >
261 retype(const pointer_functor1<T_arg1, T_return>& _A_functor)
262 { return retype_functor<pointer_functor1<T_arg1, T_return>, T_arg1 >
265 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
266 * This function template specialization works on sigc::pointer_functor.
268 * @param _A_functor Functor that should be wrapped.
269 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
273 template <class T_arg1,class T_arg2, class T_return>
274 inline retype_functor<pointer_functor2<T_arg1, T_arg2, T_return>, T_arg1,T_arg2 >
275 retype(const pointer_functor2<T_arg1,T_arg2, T_return>& _A_functor)
276 { return retype_functor<pointer_functor2<T_arg1, T_arg2, T_return>, T_arg1,T_arg2 >
279 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
280 * This function template specialization works on sigc::pointer_functor.
282 * @param _A_functor Functor that should be wrapped.
283 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
287 template <class T_arg1,class T_arg2,class T_arg3, class T_return>
288 inline retype_functor<pointer_functor3<T_arg1, T_arg2, T_arg3, T_return>, T_arg1,T_arg2,T_arg3 >
289 retype(const pointer_functor3<T_arg1,T_arg2,T_arg3, T_return>& _A_functor)
290 { return retype_functor<pointer_functor3<T_arg1, T_arg2, T_arg3, T_return>, T_arg1,T_arg2,T_arg3 >
293 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
294 * This function template specialization works on sigc::pointer_functor.
296 * @param _A_functor Functor that should be wrapped.
297 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
301 template <class T_arg1,class T_arg2,class T_arg3,class T_arg4, class T_return>
302 inline retype_functor<pointer_functor4<T_arg1, T_arg2, T_arg3, T_arg4, T_return>, T_arg1,T_arg2,T_arg3,T_arg4 >
303 retype(const pointer_functor4<T_arg1,T_arg2,T_arg3,T_arg4, T_return>& _A_functor)
304 { return retype_functor<pointer_functor4<T_arg1, T_arg2, T_arg3, T_arg4, T_return>, T_arg1,T_arg2,T_arg3,T_arg4 >
307 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
308 * This function template specialization works on sigc::pointer_functor.
310 * @param _A_functor Functor that should be wrapped.
311 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
315 template <class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5, class T_return>
316 inline retype_functor<pointer_functor5<T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_return>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
317 retype(const pointer_functor5<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5, T_return>& _A_functor)
318 { return retype_functor<pointer_functor5<T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_return>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
321 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
322 * This function template specialization works on sigc::pointer_functor.
324 * @param _A_functor Functor that should be wrapped.
325 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
329 template <class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6, class T_return>
330 inline retype_functor<pointer_functor6<T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_return>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
331 retype(const pointer_functor6<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6, T_return>& _A_functor)
332 { return retype_functor<pointer_functor6<T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_return>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
335 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
336 * This function template specialization works on sigc::pointer_functor.
338 * @param _A_functor Functor that should be wrapped.
339 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
343 template <class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7, class T_return>
344 inline retype_functor<pointer_functor7<T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_return>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
345 retype(const pointer_functor7<T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7, T_return>& _A_functor)
346 { return retype_functor<pointer_functor7<T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7, T_return>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
350 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
351 * This function template specialization works on sigc::mem_functor.
353 * @param _A_functor Functor that should be wrapped.
354 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
358 template <class T_return, class T_obj>
359 inline retype_functor<mem_functor0<T_return, T_obj> >
360 retype(const mem_functor0<T_return, T_obj>& _A_functor)
361 { return retype_functor<mem_functor0<T_return, T_obj> >
364 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
365 * This function template specialization works on sigc::mem_functor.
367 * @param _A_functor Functor that should be wrapped.
368 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
372 template <class T_return, class T_obj, class T_arg1>
373 inline retype_functor<mem_functor1<T_return, T_obj, T_arg1>, T_arg1 >
374 retype(const mem_functor1<T_return, T_obj, T_arg1>& _A_functor)
375 { return retype_functor<mem_functor1<T_return, T_obj, T_arg1>, T_arg1 >
378 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
379 * This function template specialization works on sigc::mem_functor.
381 * @param _A_functor Functor that should be wrapped.
382 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
386 template <class T_return, class T_obj, class T_arg1,class T_arg2>
387 inline retype_functor<mem_functor2<T_return, T_obj, T_arg1, T_arg2>, T_arg1,T_arg2 >
388 retype(const mem_functor2<T_return, T_obj, T_arg1,T_arg2>& _A_functor)
389 { return retype_functor<mem_functor2<T_return, T_obj, T_arg1, T_arg2>, T_arg1,T_arg2 >
392 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
393 * This function template specialization works on sigc::mem_functor.
395 * @param _A_functor Functor that should be wrapped.
396 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
400 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3>
401 inline retype_functor<mem_functor3<T_return, T_obj, T_arg1, T_arg2, T_arg3>, T_arg1,T_arg2,T_arg3 >
402 retype(const mem_functor3<T_return, T_obj, T_arg1,T_arg2,T_arg3>& _A_functor)
403 { return retype_functor<mem_functor3<T_return, T_obj, T_arg1, T_arg2, T_arg3>, T_arg1,T_arg2,T_arg3 >
406 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
407 * This function template specialization works on sigc::mem_functor.
409 * @param _A_functor Functor that should be wrapped.
410 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
414 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4>
415 inline retype_functor<mem_functor4<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4>, T_arg1,T_arg2,T_arg3,T_arg4 >
416 retype(const mem_functor4<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4>& _A_functor)
417 { return retype_functor<mem_functor4<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4>, T_arg1,T_arg2,T_arg3,T_arg4 >
420 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
421 * This function template specialization works on sigc::mem_functor.
423 * @param _A_functor Functor that should be wrapped.
424 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
428 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5>
429 inline retype_functor<mem_functor5<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
430 retype(const mem_functor5<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>& _A_functor)
431 { return retype_functor<mem_functor5<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
434 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
435 * This function template specialization works on sigc::mem_functor.
437 * @param _A_functor Functor that should be wrapped.
438 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
442 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6>
443 inline retype_functor<mem_functor6<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
444 retype(const mem_functor6<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>& _A_functor)
445 { return retype_functor<mem_functor6<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
448 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
449 * This function template specialization works on sigc::mem_functor.
451 * @param _A_functor Functor that should be wrapped.
452 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
456 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7>
457 inline retype_functor<mem_functor7<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
458 retype(const mem_functor7<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>& _A_functor)
459 { return retype_functor<mem_functor7<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
462 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
463 * This function template specialization works on sigc::const_mem_functor.
465 * @param _A_functor Functor that should be wrapped.
466 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
470 template <class T_return, class T_obj>
471 inline retype_functor<const_mem_functor0<T_return, T_obj> >
472 retype(const const_mem_functor0<T_return, T_obj>& _A_functor)
473 { return retype_functor<const_mem_functor0<T_return, T_obj> >
476 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
477 * This function template specialization works on sigc::const_mem_functor.
479 * @param _A_functor Functor that should be wrapped.
480 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
484 template <class T_return, class T_obj, class T_arg1>
485 inline retype_functor<const_mem_functor1<T_return, T_obj, T_arg1>, T_arg1 >
486 retype(const const_mem_functor1<T_return, T_obj, T_arg1>& _A_functor)
487 { return retype_functor<const_mem_functor1<T_return, T_obj, T_arg1>, T_arg1 >
490 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
491 * This function template specialization works on sigc::const_mem_functor.
493 * @param _A_functor Functor that should be wrapped.
494 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
498 template <class T_return, class T_obj, class T_arg1,class T_arg2>
499 inline retype_functor<const_mem_functor2<T_return, T_obj, T_arg1, T_arg2>, T_arg1,T_arg2 >
500 retype(const const_mem_functor2<T_return, T_obj, T_arg1,T_arg2>& _A_functor)
501 { return retype_functor<const_mem_functor2<T_return, T_obj, T_arg1, T_arg2>, T_arg1,T_arg2 >
504 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
505 * This function template specialization works on sigc::const_mem_functor.
507 * @param _A_functor Functor that should be wrapped.
508 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
512 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3>
513 inline retype_functor<const_mem_functor3<T_return, T_obj, T_arg1, T_arg2, T_arg3>, T_arg1,T_arg2,T_arg3 >
514 retype(const const_mem_functor3<T_return, T_obj, T_arg1,T_arg2,T_arg3>& _A_functor)
515 { return retype_functor<const_mem_functor3<T_return, T_obj, T_arg1, T_arg2, T_arg3>, T_arg1,T_arg2,T_arg3 >
518 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
519 * This function template specialization works on sigc::const_mem_functor.
521 * @param _A_functor Functor that should be wrapped.
522 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
526 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4>
527 inline retype_functor<const_mem_functor4<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4>, T_arg1,T_arg2,T_arg3,T_arg4 >
528 retype(const const_mem_functor4<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4>& _A_functor)
529 { return retype_functor<const_mem_functor4<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4>, T_arg1,T_arg2,T_arg3,T_arg4 >
532 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
533 * This function template specialization works on sigc::const_mem_functor.
535 * @param _A_functor Functor that should be wrapped.
536 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
540 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5>
541 inline retype_functor<const_mem_functor5<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
542 retype(const const_mem_functor5<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>& _A_functor)
543 { return retype_functor<const_mem_functor5<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
546 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
547 * This function template specialization works on sigc::const_mem_functor.
549 * @param _A_functor Functor that should be wrapped.
550 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
554 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6>
555 inline retype_functor<const_mem_functor6<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
556 retype(const const_mem_functor6<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>& _A_functor)
557 { return retype_functor<const_mem_functor6<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
560 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
561 * This function template specialization works on sigc::const_mem_functor.
563 * @param _A_functor Functor that should be wrapped.
564 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
568 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7>
569 inline retype_functor<const_mem_functor7<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
570 retype(const const_mem_functor7<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>& _A_functor)
571 { return retype_functor<const_mem_functor7<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
574 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
575 * This function template specialization works on sigc::volatile_mem_functor.
577 * @param _A_functor Functor that should be wrapped.
578 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
582 template <class T_return, class T_obj>
583 inline retype_functor<volatile_mem_functor0<T_return, T_obj> >
584 retype(const volatile_mem_functor0<T_return, T_obj>& _A_functor)
585 { return retype_functor<volatile_mem_functor0<T_return, T_obj> >
588 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
589 * This function template specialization works on sigc::volatile_mem_functor.
591 * @param _A_functor Functor that should be wrapped.
592 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
596 template <class T_return, class T_obj, class T_arg1>
597 inline retype_functor<volatile_mem_functor1<T_return, T_obj, T_arg1>, T_arg1 >
598 retype(const volatile_mem_functor1<T_return, T_obj, T_arg1>& _A_functor)
599 { return retype_functor<volatile_mem_functor1<T_return, T_obj, T_arg1>, T_arg1 >
602 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
603 * This function template specialization works on sigc::volatile_mem_functor.
605 * @param _A_functor Functor that should be wrapped.
606 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
610 template <class T_return, class T_obj, class T_arg1,class T_arg2>
611 inline retype_functor<volatile_mem_functor2<T_return, T_obj, T_arg1, T_arg2>, T_arg1,T_arg2 >
612 retype(const volatile_mem_functor2<T_return, T_obj, T_arg1,T_arg2>& _A_functor)
613 { return retype_functor<volatile_mem_functor2<T_return, T_obj, T_arg1, T_arg2>, T_arg1,T_arg2 >
616 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
617 * This function template specialization works on sigc::volatile_mem_functor.
619 * @param _A_functor Functor that should be wrapped.
620 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
624 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3>
625 inline retype_functor<volatile_mem_functor3<T_return, T_obj, T_arg1, T_arg2, T_arg3>, T_arg1,T_arg2,T_arg3 >
626 retype(const volatile_mem_functor3<T_return, T_obj, T_arg1,T_arg2,T_arg3>& _A_functor)
627 { return retype_functor<volatile_mem_functor3<T_return, T_obj, T_arg1, T_arg2, T_arg3>, T_arg1,T_arg2,T_arg3 >
630 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
631 * This function template specialization works on sigc::volatile_mem_functor.
633 * @param _A_functor Functor that should be wrapped.
634 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
638 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4>
639 inline retype_functor<volatile_mem_functor4<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4>, T_arg1,T_arg2,T_arg3,T_arg4 >
640 retype(const volatile_mem_functor4<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4>& _A_functor)
641 { return retype_functor<volatile_mem_functor4<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4>, T_arg1,T_arg2,T_arg3,T_arg4 >
644 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
645 * This function template specialization works on sigc::volatile_mem_functor.
647 * @param _A_functor Functor that should be wrapped.
648 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
652 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5>
653 inline retype_functor<volatile_mem_functor5<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
654 retype(const volatile_mem_functor5<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>& _A_functor)
655 { return retype_functor<volatile_mem_functor5<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
658 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
659 * This function template specialization works on sigc::volatile_mem_functor.
661 * @param _A_functor Functor that should be wrapped.
662 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
666 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6>
667 inline retype_functor<volatile_mem_functor6<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
668 retype(const volatile_mem_functor6<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>& _A_functor)
669 { return retype_functor<volatile_mem_functor6<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
672 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
673 * This function template specialization works on sigc::volatile_mem_functor.
675 * @param _A_functor Functor that should be wrapped.
676 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
680 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7>
681 inline retype_functor<volatile_mem_functor7<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
682 retype(const volatile_mem_functor7<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>& _A_functor)
683 { return retype_functor<volatile_mem_functor7<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
686 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
687 * This function template specialization works on sigc::const_volatile_mem_functor.
689 * @param _A_functor Functor that should be wrapped.
690 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
694 template <class T_return, class T_obj>
695 inline retype_functor<const_volatile_mem_functor0<T_return, T_obj> >
696 retype(const const_volatile_mem_functor0<T_return, T_obj>& _A_functor)
697 { return retype_functor<const_volatile_mem_functor0<T_return, T_obj> >
700 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
701 * This function template specialization works on sigc::const_volatile_mem_functor.
703 * @param _A_functor Functor that should be wrapped.
704 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
708 template <class T_return, class T_obj, class T_arg1>
709 inline retype_functor<const_volatile_mem_functor1<T_return, T_obj, T_arg1>, T_arg1 >
710 retype(const const_volatile_mem_functor1<T_return, T_obj, T_arg1>& _A_functor)
711 { return retype_functor<const_volatile_mem_functor1<T_return, T_obj, T_arg1>, T_arg1 >
714 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
715 * This function template specialization works on sigc::const_volatile_mem_functor.
717 * @param _A_functor Functor that should be wrapped.
718 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
722 template <class T_return, class T_obj, class T_arg1,class T_arg2>
723 inline retype_functor<const_volatile_mem_functor2<T_return, T_obj, T_arg1, T_arg2>, T_arg1,T_arg2 >
724 retype(const const_volatile_mem_functor2<T_return, T_obj, T_arg1,T_arg2>& _A_functor)
725 { return retype_functor<const_volatile_mem_functor2<T_return, T_obj, T_arg1, T_arg2>, T_arg1,T_arg2 >
728 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
729 * This function template specialization works on sigc::const_volatile_mem_functor.
731 * @param _A_functor Functor that should be wrapped.
732 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
736 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3>
737 inline retype_functor<const_volatile_mem_functor3<T_return, T_obj, T_arg1, T_arg2, T_arg3>, T_arg1,T_arg2,T_arg3 >
738 retype(const const_volatile_mem_functor3<T_return, T_obj, T_arg1,T_arg2,T_arg3>& _A_functor)
739 { return retype_functor<const_volatile_mem_functor3<T_return, T_obj, T_arg1, T_arg2, T_arg3>, T_arg1,T_arg2,T_arg3 >
742 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
743 * This function template specialization works on sigc::const_volatile_mem_functor.
745 * @param _A_functor Functor that should be wrapped.
746 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
750 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4>
751 inline retype_functor<const_volatile_mem_functor4<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4>, T_arg1,T_arg2,T_arg3,T_arg4 >
752 retype(const const_volatile_mem_functor4<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4>& _A_functor)
753 { return retype_functor<const_volatile_mem_functor4<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4>, T_arg1,T_arg2,T_arg3,T_arg4 >
756 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
757 * This function template specialization works on sigc::const_volatile_mem_functor.
759 * @param _A_functor Functor that should be wrapped.
760 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
764 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5>
765 inline retype_functor<const_volatile_mem_functor5<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
766 retype(const const_volatile_mem_functor5<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>& _A_functor)
767 { return retype_functor<const_volatile_mem_functor5<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
770 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
771 * This function template specialization works on sigc::const_volatile_mem_functor.
773 * @param _A_functor Functor that should be wrapped.
774 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
778 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6>
779 inline retype_functor<const_volatile_mem_functor6<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
780 retype(const const_volatile_mem_functor6<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>& _A_functor)
781 { return retype_functor<const_volatile_mem_functor6<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
784 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
785 * This function template specialization works on sigc::const_volatile_mem_functor.
787 * @param _A_functor Functor that should be wrapped.
788 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
792 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7>
793 inline retype_functor<const_volatile_mem_functor7<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
794 retype(const const_volatile_mem_functor7<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>& _A_functor)
795 { return retype_functor<const_volatile_mem_functor7<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
798 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
799 * This function template specialization works on sigc::bound_mem_functor.
801 * @param _A_functor Functor that should be wrapped.
802 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
806 template <class T_return, class T_obj>
807 inline retype_functor<bound_mem_functor0<T_return, T_obj> >
808 retype(const bound_mem_functor0<T_return, T_obj>& _A_functor)
809 { return retype_functor<bound_mem_functor0<T_return, T_obj> >
812 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
813 * This function template specialization works on sigc::bound_mem_functor.
815 * @param _A_functor Functor that should be wrapped.
816 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
820 template <class T_return, class T_obj, class T_arg1>
821 inline retype_functor<bound_mem_functor1<T_return, T_obj, T_arg1>, T_arg1 >
822 retype(const bound_mem_functor1<T_return, T_obj, T_arg1>& _A_functor)
823 { return retype_functor<bound_mem_functor1<T_return, T_obj, T_arg1>, T_arg1 >
826 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
827 * This function template specialization works on sigc::bound_mem_functor.
829 * @param _A_functor Functor that should be wrapped.
830 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
834 template <class T_return, class T_obj, class T_arg1,class T_arg2>
835 inline retype_functor<bound_mem_functor2<T_return, T_obj, T_arg1, T_arg2>, T_arg1,T_arg2 >
836 retype(const bound_mem_functor2<T_return, T_obj, T_arg1,T_arg2>& _A_functor)
837 { return retype_functor<bound_mem_functor2<T_return, T_obj, T_arg1, T_arg2>, T_arg1,T_arg2 >
840 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
841 * This function template specialization works on sigc::bound_mem_functor.
843 * @param _A_functor Functor that should be wrapped.
844 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
848 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3>
849 inline retype_functor<bound_mem_functor3<T_return, T_obj, T_arg1, T_arg2, T_arg3>, T_arg1,T_arg2,T_arg3 >
850 retype(const bound_mem_functor3<T_return, T_obj, T_arg1,T_arg2,T_arg3>& _A_functor)
851 { return retype_functor<bound_mem_functor3<T_return, T_obj, T_arg1, T_arg2, T_arg3>, T_arg1,T_arg2,T_arg3 >
854 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
855 * This function template specialization works on sigc::bound_mem_functor.
857 * @param _A_functor Functor that should be wrapped.
858 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
862 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4>
863 inline retype_functor<bound_mem_functor4<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4>, T_arg1,T_arg2,T_arg3,T_arg4 >
864 retype(const bound_mem_functor4<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4>& _A_functor)
865 { return retype_functor<bound_mem_functor4<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4>, T_arg1,T_arg2,T_arg3,T_arg4 >
868 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
869 * This function template specialization works on sigc::bound_mem_functor.
871 * @param _A_functor Functor that should be wrapped.
872 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
876 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5>
877 inline retype_functor<bound_mem_functor5<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
878 retype(const bound_mem_functor5<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>& _A_functor)
879 { return retype_functor<bound_mem_functor5<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
882 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
883 * This function template specialization works on sigc::bound_mem_functor.
885 * @param _A_functor Functor that should be wrapped.
886 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
890 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6>
891 inline retype_functor<bound_mem_functor6<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
892 retype(const bound_mem_functor6<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>& _A_functor)
893 { return retype_functor<bound_mem_functor6<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
896 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
897 * This function template specialization works on sigc::bound_mem_functor.
899 * @param _A_functor Functor that should be wrapped.
900 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
904 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7>
905 inline retype_functor<bound_mem_functor7<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
906 retype(const bound_mem_functor7<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>& _A_functor)
907 { return retype_functor<bound_mem_functor7<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
910 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
911 * This function template specialization works on sigc::bound_const_mem_functor.
913 * @param _A_functor Functor that should be wrapped.
914 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
918 template <class T_return, class T_obj>
919 inline retype_functor<bound_const_mem_functor0<T_return, T_obj> >
920 retype(const bound_const_mem_functor0<T_return, T_obj>& _A_functor)
921 { return retype_functor<bound_const_mem_functor0<T_return, T_obj> >
924 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
925 * This function template specialization works on sigc::bound_const_mem_functor.
927 * @param _A_functor Functor that should be wrapped.
928 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
932 template <class T_return, class T_obj, class T_arg1>
933 inline retype_functor<bound_const_mem_functor1<T_return, T_obj, T_arg1>, T_arg1 >
934 retype(const bound_const_mem_functor1<T_return, T_obj, T_arg1>& _A_functor)
935 { return retype_functor<bound_const_mem_functor1<T_return, T_obj, T_arg1>, T_arg1 >
938 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
939 * This function template specialization works on sigc::bound_const_mem_functor.
941 * @param _A_functor Functor that should be wrapped.
942 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
946 template <class T_return, class T_obj, class T_arg1,class T_arg2>
947 inline retype_functor<bound_const_mem_functor2<T_return, T_obj, T_arg1, T_arg2>, T_arg1,T_arg2 >
948 retype(const bound_const_mem_functor2<T_return, T_obj, T_arg1,T_arg2>& _A_functor)
949 { return retype_functor<bound_const_mem_functor2<T_return, T_obj, T_arg1, T_arg2>, T_arg1,T_arg2 >
952 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
953 * This function template specialization works on sigc::bound_const_mem_functor.
955 * @param _A_functor Functor that should be wrapped.
956 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
960 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3>
961 inline retype_functor<bound_const_mem_functor3<T_return, T_obj, T_arg1, T_arg2, T_arg3>, T_arg1,T_arg2,T_arg3 >
962 retype(const bound_const_mem_functor3<T_return, T_obj, T_arg1,T_arg2,T_arg3>& _A_functor)
963 { return retype_functor<bound_const_mem_functor3<T_return, T_obj, T_arg1, T_arg2, T_arg3>, T_arg1,T_arg2,T_arg3 >
966 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
967 * This function template specialization works on sigc::bound_const_mem_functor.
969 * @param _A_functor Functor that should be wrapped.
970 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
974 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4>
975 inline retype_functor<bound_const_mem_functor4<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4>, T_arg1,T_arg2,T_arg3,T_arg4 >
976 retype(const bound_const_mem_functor4<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4>& _A_functor)
977 { return retype_functor<bound_const_mem_functor4<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4>, T_arg1,T_arg2,T_arg3,T_arg4 >
980 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
981 * This function template specialization works on sigc::bound_const_mem_functor.
983 * @param _A_functor Functor that should be wrapped.
984 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
988 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5>
989 inline retype_functor<bound_const_mem_functor5<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
990 retype(const bound_const_mem_functor5<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>& _A_functor)
991 { return retype_functor<bound_const_mem_functor5<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
994 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
995 * This function template specialization works on sigc::bound_const_mem_functor.
997 * @param _A_functor Functor that should be wrapped.
998 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1002 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6>
1003 inline retype_functor<bound_const_mem_functor6<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
1004 retype(const bound_const_mem_functor6<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>& _A_functor)
1005 { return retype_functor<bound_const_mem_functor6<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
1008 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
1009 * This function template specialization works on sigc::bound_const_mem_functor.
1011 * @param _A_functor Functor that should be wrapped.
1012 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1016 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7>
1017 inline retype_functor<bound_const_mem_functor7<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
1018 retype(const bound_const_mem_functor7<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>& _A_functor)
1019 { return retype_functor<bound_const_mem_functor7<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
1022 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
1023 * This function template specialization works on sigc::bound_volatile_mem_functor.
1025 * @param _A_functor Functor that should be wrapped.
1026 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1030 template <class T_return, class T_obj>
1031 inline retype_functor<bound_volatile_mem_functor0<T_return, T_obj> >
1032 retype(const bound_volatile_mem_functor0<T_return, T_obj>& _A_functor)
1033 { return retype_functor<bound_volatile_mem_functor0<T_return, T_obj> >
1036 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
1037 * This function template specialization works on sigc::bound_volatile_mem_functor.
1039 * @param _A_functor Functor that should be wrapped.
1040 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1044 template <class T_return, class T_obj, class T_arg1>
1045 inline retype_functor<bound_volatile_mem_functor1<T_return, T_obj, T_arg1>, T_arg1 >
1046 retype(const bound_volatile_mem_functor1<T_return, T_obj, T_arg1>& _A_functor)
1047 { return retype_functor<bound_volatile_mem_functor1<T_return, T_obj, T_arg1>, T_arg1 >
1050 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
1051 * This function template specialization works on sigc::bound_volatile_mem_functor.
1053 * @param _A_functor Functor that should be wrapped.
1054 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1058 template <class T_return, class T_obj, class T_arg1,class T_arg2>
1059 inline retype_functor<bound_volatile_mem_functor2<T_return, T_obj, T_arg1, T_arg2>, T_arg1,T_arg2 >
1060 retype(const bound_volatile_mem_functor2<T_return, T_obj, T_arg1,T_arg2>& _A_functor)
1061 { return retype_functor<bound_volatile_mem_functor2<T_return, T_obj, T_arg1, T_arg2>, T_arg1,T_arg2 >
1064 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
1065 * This function template specialization works on sigc::bound_volatile_mem_functor.
1067 * @param _A_functor Functor that should be wrapped.
1068 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1072 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3>
1073 inline retype_functor<bound_volatile_mem_functor3<T_return, T_obj, T_arg1, T_arg2, T_arg3>, T_arg1,T_arg2,T_arg3 >
1074 retype(const bound_volatile_mem_functor3<T_return, T_obj, T_arg1,T_arg2,T_arg3>& _A_functor)
1075 { return retype_functor<bound_volatile_mem_functor3<T_return, T_obj, T_arg1, T_arg2, T_arg3>, T_arg1,T_arg2,T_arg3 >
1078 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
1079 * This function template specialization works on sigc::bound_volatile_mem_functor.
1081 * @param _A_functor Functor that should be wrapped.
1082 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1086 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4>
1087 inline retype_functor<bound_volatile_mem_functor4<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4>, T_arg1,T_arg2,T_arg3,T_arg4 >
1088 retype(const bound_volatile_mem_functor4<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4>& _A_functor)
1089 { return retype_functor<bound_volatile_mem_functor4<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4>, T_arg1,T_arg2,T_arg3,T_arg4 >
1092 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
1093 * This function template specialization works on sigc::bound_volatile_mem_functor.
1095 * @param _A_functor Functor that should be wrapped.
1096 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1100 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5>
1101 inline retype_functor<bound_volatile_mem_functor5<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
1102 retype(const bound_volatile_mem_functor5<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>& _A_functor)
1103 { return retype_functor<bound_volatile_mem_functor5<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
1106 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
1107 * This function template specialization works on sigc::bound_volatile_mem_functor.
1109 * @param _A_functor Functor that should be wrapped.
1110 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1114 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6>
1115 inline retype_functor<bound_volatile_mem_functor6<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
1116 retype(const bound_volatile_mem_functor6<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>& _A_functor)
1117 { return retype_functor<bound_volatile_mem_functor6<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
1120 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
1121 * This function template specialization works on sigc::bound_volatile_mem_functor.
1123 * @param _A_functor Functor that should be wrapped.
1124 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1128 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7>
1129 inline retype_functor<bound_volatile_mem_functor7<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
1130 retype(const bound_volatile_mem_functor7<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>& _A_functor)
1131 { return retype_functor<bound_volatile_mem_functor7<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
1134 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
1135 * This function template specialization works on sigc::bound_const_volatile_mem_functor.
1137 * @param _A_functor Functor that should be wrapped.
1138 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1142 template <class T_return, class T_obj>
1143 inline retype_functor<bound_const_volatile_mem_functor0<T_return, T_obj> >
1144 retype(const bound_const_volatile_mem_functor0<T_return, T_obj>& _A_functor)
1145 { return retype_functor<bound_const_volatile_mem_functor0<T_return, T_obj> >
1148 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
1149 * This function template specialization works on sigc::bound_const_volatile_mem_functor.
1151 * @param _A_functor Functor that should be wrapped.
1152 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1156 template <class T_return, class T_obj, class T_arg1>
1157 inline retype_functor<bound_const_volatile_mem_functor1<T_return, T_obj, T_arg1>, T_arg1 >
1158 retype(const bound_const_volatile_mem_functor1<T_return, T_obj, T_arg1>& _A_functor)
1159 { return retype_functor<bound_const_volatile_mem_functor1<T_return, T_obj, T_arg1>, T_arg1 >
1162 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
1163 * This function template specialization works on sigc::bound_const_volatile_mem_functor.
1165 * @param _A_functor Functor that should be wrapped.
1166 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1170 template <class T_return, class T_obj, class T_arg1,class T_arg2>
1171 inline retype_functor<bound_const_volatile_mem_functor2<T_return, T_obj, T_arg1, T_arg2>, T_arg1,T_arg2 >
1172 retype(const bound_const_volatile_mem_functor2<T_return, T_obj, T_arg1,T_arg2>& _A_functor)
1173 { return retype_functor<bound_const_volatile_mem_functor2<T_return, T_obj, T_arg1, T_arg2>, T_arg1,T_arg2 >
1176 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
1177 * This function template specialization works on sigc::bound_const_volatile_mem_functor.
1179 * @param _A_functor Functor that should be wrapped.
1180 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1184 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3>
1185 inline retype_functor<bound_const_volatile_mem_functor3<T_return, T_obj, T_arg1, T_arg2, T_arg3>, T_arg1,T_arg2,T_arg3 >
1186 retype(const bound_const_volatile_mem_functor3<T_return, T_obj, T_arg1,T_arg2,T_arg3>& _A_functor)
1187 { return retype_functor<bound_const_volatile_mem_functor3<T_return, T_obj, T_arg1, T_arg2, T_arg3>, T_arg1,T_arg2,T_arg3 >
1190 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
1191 * This function template specialization works on sigc::bound_const_volatile_mem_functor.
1193 * @param _A_functor Functor that should be wrapped.
1194 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1198 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4>
1199 inline retype_functor<bound_const_volatile_mem_functor4<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4>, T_arg1,T_arg2,T_arg3,T_arg4 >
1200 retype(const bound_const_volatile_mem_functor4<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4>& _A_functor)
1201 { return retype_functor<bound_const_volatile_mem_functor4<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4>, T_arg1,T_arg2,T_arg3,T_arg4 >
1204 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
1205 * This function template specialization works on sigc::bound_const_volatile_mem_functor.
1207 * @param _A_functor Functor that should be wrapped.
1208 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1212 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5>
1213 inline retype_functor<bound_const_volatile_mem_functor5<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
1214 retype(const bound_const_volatile_mem_functor5<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>& _A_functor)
1215 { return retype_functor<bound_const_volatile_mem_functor5<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5 >
1218 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
1219 * This function template specialization works on sigc::bound_const_volatile_mem_functor.
1221 * @param _A_functor Functor that should be wrapped.
1222 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1226 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6>
1227 inline retype_functor<bound_const_volatile_mem_functor6<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
1228 retype(const bound_const_volatile_mem_functor6<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>& _A_functor)
1229 { return retype_functor<bound_const_volatile_mem_functor6<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6 >
1232 /** Creates an adaptor of type sigc::retype_functor which performs C-style casts on the parameters passed on to the functor.
1233 * This function template specialization works on sigc::bound_const_volatile_mem_functor.
1235 * @param _A_functor Functor that should be wrapped.
1236 * @return Adaptor that executes @e _A_functor performing C-style casts on the paramters passed on.
1240 template <class T_return, class T_obj, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7>
1241 inline retype_functor<bound_const_volatile_mem_functor7<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
1242 retype(const bound_const_volatile_mem_functor7<T_return, T_obj, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>& _A_functor)
1243 { return retype_functor<bound_const_volatile_mem_functor7<T_return, T_obj, T_arg1, T_arg2, T_arg3, T_arg4, T_arg5, T_arg6, T_arg7>, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7 >
1247 } /* namespace sigc */
1248 #endif /* _SIGC_ADAPTORS_MACROS_RETYPEHM4_ */