Go to the documentation of this file. 1 #ifndef BOOST_BIND_MEM_FN_HPP_INCLUDED
2 #define BOOST_BIND_MEM_FN_HPP_INCLUDED
6 #if defined(_MSC_VER) && (_MSC_VER >= 1020)
31 #if defined(BOOST_NO_VOID_RETURNS)
33 #define BOOST_MEM_FN_CLASS_F , class F
34 #define BOOST_MEM_FN_TYPEDEF(X)
39 template<
class V>
struct mf
42 #define BOOST_MEM_FN_RETURN return
44 #define BOOST_MEM_FN_NAME(X) inner_##X
45 #define BOOST_MEM_FN_CC
49 #undef BOOST_MEM_FN_CC
50 #undef BOOST_MEM_FN_NAME
52 #ifdef BOOST_MEM_FN_ENABLE_CDECL
54 #define BOOST_MEM_FN_NAME(X) inner_##X##_cdecl
55 #define BOOST_MEM_FN_CC __cdecl
59 #undef BOOST_MEM_FN_CC
60 #undef BOOST_MEM_FN_NAME
64 #ifdef BOOST_MEM_FN_ENABLE_STDCALL
66 #define BOOST_MEM_FN_NAME(X) inner_##X##_stdcall
67 #define BOOST_MEM_FN_CC __stdcall
71 #undef BOOST_MEM_FN_CC
72 #undef BOOST_MEM_FN_NAME
76 #ifdef BOOST_MEM_FN_ENABLE_FASTCALL
78 #define BOOST_MEM_FN_NAME(X) inner_##X##_fastcall
79 #define BOOST_MEM_FN_CC __fastcall
83 #undef BOOST_MEM_FN_CC
84 #undef BOOST_MEM_FN_NAME
88 #undef BOOST_MEM_FN_RETURN
92 template<>
struct mf<void>
95 #define BOOST_MEM_FN_RETURN
97 #define BOOST_MEM_FN_NAME(X) inner_##X
98 #define BOOST_MEM_FN_CC
102 #undef BOOST_MEM_FN_CC
103 #undef BOOST_MEM_FN_NAME
105 #ifdef BOOST_MEM_FN_ENABLE_CDECL
107 #define BOOST_MEM_FN_NAME(X) inner_##X##_cdecl
108 #define BOOST_MEM_FN_CC __cdecl
112 #undef BOOST_MEM_FN_CC
113 #undef BOOST_MEM_FN_NAME
117 #ifdef BOOST_MEM_FN_ENABLE_STDCALL
119 #define BOOST_MEM_FN_NAME(X) inner_##X##_stdcall
120 #define BOOST_MEM_FN_CC __stdcall
124 #undef BOOST_MEM_FN_CC
125 #undef BOOST_MEM_FN_NAME
129 #ifdef BOOST_MEM_FN_ENABLE_FASTCALL
131 #define BOOST_MEM_FN_NAME(X) inner_##X##_fastcall
132 #define BOOST_MEM_FN_CC __fastcall
136 #undef BOOST_MEM_FN_CC
137 #undef BOOST_MEM_FN_NAME
141 #undef BOOST_MEM_FN_RETURN
145 #undef BOOST_MEM_FN_CLASS_F
146 #undef BOOST_MEM_FN_TYPEDEF_F
148 #define BOOST_MEM_FN_NAME(X) X
149 #define BOOST_MEM_FN_NAME2(X) inner_##X
150 #define BOOST_MEM_FN_CC
154 #undef BOOST_MEM_FN_NAME
155 #undef BOOST_MEM_FN_NAME2
156 #undef BOOST_MEM_FN_CC
158 #ifdef BOOST_MEM_FN_ENABLE_CDECL
160 #define BOOST_MEM_FN_NAME(X) X##_cdecl
161 #define BOOST_MEM_FN_NAME2(X) inner_##X##_cdecl
162 #define BOOST_MEM_FN_CC __cdecl
166 #undef BOOST_MEM_FN_NAME
167 #undef BOOST_MEM_FN_NAME2
168 #undef BOOST_MEM_FN_CC
172 #ifdef BOOST_MEM_FN_ENABLE_STDCALL
174 #define BOOST_MEM_FN_NAME(X) X##_stdcall
175 #define BOOST_MEM_FN_NAME2(X) inner_##X##_stdcall
176 #define BOOST_MEM_FN_CC __stdcall
180 #undef BOOST_MEM_FN_NAME
181 #undef BOOST_MEM_FN_NAME2
182 #undef BOOST_MEM_FN_CC
186 #ifdef BOOST_MEM_FN_ENABLE_FASTCALL
188 #define BOOST_MEM_FN_NAME(X) X##_fastcall
189 #define BOOST_MEM_FN_NAME2(X) inner_##X##_fastcall
190 #define BOOST_MEM_FN_CC __fastcall
194 #undef BOOST_MEM_FN_NAME
195 #undef BOOST_MEM_FN_NAME2
196 #undef BOOST_MEM_FN_CC
202 #else // #ifdef BOOST_NO_VOID_RETURNS
204 #define BOOST_MEM_FN_CLASS_F
205 #define BOOST_MEM_FN_TYPEDEF(X) typedef X;
210 #define BOOST_MEM_FN_RETURN return
212 #define BOOST_MEM_FN_NAME(X) X
213 #define BOOST_MEM_FN_CC
217 #undef BOOST_MEM_FN_CC
218 #undef BOOST_MEM_FN_NAME
220 #ifdef BOOST_MEM_FN_ENABLE_CDECL
222 #define BOOST_MEM_FN_NAME(X) X##_cdecl
223 #define BOOST_MEM_FN_CC __cdecl
227 #undef BOOST_MEM_FN_CC
228 #undef BOOST_MEM_FN_NAME
232 #ifdef BOOST_MEM_FN_ENABLE_STDCALL
234 #define BOOST_MEM_FN_NAME(X) X##_stdcall
235 #define BOOST_MEM_FN_CC __stdcall
239 #undef BOOST_MEM_FN_CC
240 #undef BOOST_MEM_FN_NAME
244 #ifdef BOOST_MEM_FN_ENABLE_FASTCALL
246 #define BOOST_MEM_FN_NAME(X) X##_fastcall
247 #define BOOST_MEM_FN_CC __fastcall
251 #undef BOOST_MEM_FN_CC
252 #undef BOOST_MEM_FN_NAME
256 #undef BOOST_MEM_FN_RETURN
260 #undef BOOST_MEM_FN_CLASS_F
261 #undef BOOST_MEM_FN_TYPEDEF
263 #endif // #ifdef BOOST_NO_VOID_RETURNS
265 #define BOOST_MEM_FN_NAME(X) X
266 #define BOOST_MEM_FN_CC
270 #undef BOOST_MEM_FN_NAME
271 #undef BOOST_MEM_FN_CC
273 #ifdef BOOST_MEM_FN_ENABLE_CDECL
275 #define BOOST_MEM_FN_NAME(X) X##_cdecl
276 #define BOOST_MEM_FN_CC __cdecl
280 #undef BOOST_MEM_FN_NAME
281 #undef BOOST_MEM_FN_CC
285 #ifdef BOOST_MEM_FN_ENABLE_STDCALL
287 #define BOOST_MEM_FN_NAME(X) X##_stdcall
288 #define BOOST_MEM_FN_CC __stdcall
292 #undef BOOST_MEM_FN_NAME
293 #undef BOOST_MEM_FN_CC
297 #ifdef BOOST_MEM_FN_ENABLE_FASTCALL
299 #define BOOST_MEM_FN_NAME(X) X##_fastcall
300 #define BOOST_MEM_FN_CC __fastcall
304 #undef BOOST_MEM_FN_NAME
305 #undef BOOST_MEM_FN_CC
314 template<
class R,
class T>
class dm
326 template<
class U>
R const &
call(U & u,
T const *)
const
331 template<
class U>
R const &
call(U & u,
void const *)
const
355 #if !BOOST_WORKAROUND(BOOST_MSVC, <= 1300) && !BOOST_WORKAROUND(__MWERKS__, < 0x3200)
389 #endif // #ifndef BOOST_BIND_MEM_FN_HPP_INCLUDED
bool operator!=(dm const &rhs) const
const R & operator()(T const &t) const
const R & call(U &u, void const *) const
BOOST_MOVE_USE_STANDARD_LIBRARY_MOVE.
_mfi::dm< R, T > mem_fn(R T::*f)
bool operator==(dm const &rhs) const
const R & operator()(U const &u) const
const R & call(U &u, T const *) const
const R & operator()(T const *p) const
R & operator()(T *p) const
R & operator()(T &t) const
sick_visionary_ros
Author(s): SICK AG TechSupport 3D Snapshot
autogenerated on Thu Feb 8 2024 03:44:21