Ice 3.7 C++98 API Reference
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Functional.h
Go to the documentation of this file.
1 //
2 // Copyright (c) ZeroC, Inc. All rights reserved.
3 //
4 
5 #ifndef ICE_FUNCTIONAL_H
6 #define ICE_FUNCTIONAL_H
7 
8 #include <IceUtil/Config.h>
9 
10 #if !defined(ICE_CPP11_MAPPING) && (ICE_CPLUSPLUS < 201703L)
11 
12 #include <IceUtil/Functional.h>
13 #include <Ice/Handle.h>
14 
15 // ----------------------------------------------------------------------
16 // Inline functions that return function objects that work with
17 // IceInternal::Handle
18 // ----------------------------------------------------------------------
19 
20 namespace Ice
21 {
22 
24 template<class R, class T>
25 inline ::IceUtilInternal::MemFun<R, T, ICE_INTERNAL_HANDLE<T> >
26 memFun(R (T::*p)(void))
27 {
28  return ::IceUtilInternal::MemFun<R, T, ICE_INTERNAL_HANDLE<T> >(p);
29 }
30 
31 template<class R, class T, class A>
32 inline ::IceUtilInternal::MemFun1<R, T, ICE_INTERNAL_HANDLE<T>, A>
33 memFun1(R (T::*p)(A))
34 {
35  return ::IceUtilInternal::MemFun1<R, T, ICE_INTERNAL_HANDLE<T>, A>(p);
36 }
37 
38 template<class T>
39 inline ::IceUtilInternal::VoidMemFun<T, ICE_INTERNAL_HANDLE<T> >
40 voidMemFun(void (T::*p)(void))
41 {
42  return ::IceUtilInternal::VoidMemFun<T, ICE_INTERNAL_HANDLE<T> >(p);
43 }
44 
45 template<class T, class A>
46 inline ::IceUtilInternal::VoidMemFun1<T, ICE_INTERNAL_HANDLE<T>, A>
47 voidMemFun1(void (T::*p)(A))
48 {
49  return ::IceUtilInternal::VoidMemFun1<T, ICE_INTERNAL_HANDLE<T>, A>(p);
50 }
51 
52 template<class R, class K, class T>
53 inline ::IceUtilInternal::SecondMemFun<R, K, T, ICE_INTERNAL_HANDLE<T> >
54 secondMemFun(R (T::*p)(void))
55 {
56  return ::IceUtilInternal::SecondMemFun<R, K, T, ICE_INTERNAL_HANDLE<T> >(p);
57 }
58 
59 template<class R, class K, class T, class A>
60 inline ::IceUtilInternal::SecondMemFun1<R, K, T, ICE_INTERNAL_HANDLE<T>, A>
61 secondMemFun1(R (T::*p)(A))
62 {
63  return ::IceUtilInternal::SecondMemFun1<R, K, T, ICE_INTERNAL_HANDLE<T>, A>(p);
64 }
65 
66 template<class K, class T>
67 inline ::IceUtilInternal::SecondVoidMemFun<K, T, ICE_INTERNAL_HANDLE<T> >
68 secondVoidMemFun(void (T::*p)(void))
69 {
70  return ::IceUtilInternal::SecondVoidMemFun<K, T, ICE_INTERNAL_HANDLE<T> >(p);
71 }
72 
73 template<class K, class T, class A>
74 inline ::IceUtilInternal::SecondVoidMemFun1<K, T, ICE_INTERNAL_HANDLE<T>, A>
75 secondVoidMemFun1(void (T::*p)(A))
76 {
77  return ::IceUtilInternal::SecondVoidMemFun1<K, T, ICE_INTERNAL_HANDLE<T>, A>(p);
78 }
79 
80 template<class R, class T>
81 inline ::IceUtilInternal::ConstMemFun<R, T, ICE_INTERNAL_HANDLE<T> >
82 constMemFun(R (T::*p)(void) const)
83 {
84  return ::IceUtilInternal::ConstMemFun<R, T, ICE_INTERNAL_HANDLE<T> >(p);
85 }
86 
87 template<class R, class T, class A>
88 inline ::IceUtilInternal::ConstMemFun1<R, T, ICE_INTERNAL_HANDLE<T>, A>
89 constMemFun1(R (T::*p)(A) const)
90 {
91  return ::IceUtilInternal::ConstMemFun1<R, T, ICE_INTERNAL_HANDLE<T>, A>(p);
92 }
93 
94 template<class T>
95 inline ::IceUtilInternal::ConstVoidMemFun<T, ICE_INTERNAL_HANDLE<T> >
96 constVoidMemFun(void (T::*p)(void) const)
97 {
98  return ::IceUtilInternal::ConstVoidMemFun<T, ICE_INTERNAL_HANDLE<T> >(p);
99 }
100 
101 template<class T, class A>
102 inline ::IceUtilInternal::ConstVoidMemFun1<T, ICE_INTERNAL_HANDLE<T>, A>
103 constVoidMemFun1(void (T::*p)(A) const)
104 {
105  return ::IceUtilInternal::ConstVoidMemFun1<T, ICE_INTERNAL_HANDLE<T>, A>(p);
106 }
107 
108 template<class R, class K, class T>
109 inline ::IceUtilInternal::SecondConstMemFun<R, K, T, ICE_INTERNAL_HANDLE<T> >
110 secondConstMemFun(R (T::*p)(void) const)
111 {
112  return ::IceUtilInternal::SecondConstMemFun<R, K, T, ICE_INTERNAL_HANDLE<T> >(p);
113 }
114 
115 template<class R, class K, class T, class A>
116 inline ::IceUtilInternal::SecondConstMemFun1<R, K, T, ICE_INTERNAL_HANDLE<T>, A>
117 secondConstMemFun1(R (T::*p)(A) const)
118 {
119  return ::IceUtilInternal::SecondConstMemFun1<R, K, T, ICE_INTERNAL_HANDLE<T>, A>(p);
120 }
121 
122 template<class K, class T>
123 inline ::IceUtilInternal::SecondConstVoidMemFun<K, T, ICE_INTERNAL_HANDLE<T> >
124 secondConstVoidMemFun(void (T::*p)(void) const)
125 {
126  return ::IceUtilInternal::SecondConstVoidMemFun<K, T, ICE_INTERNAL_HANDLE<T> >(p);
127 }
128 
129 template<class K, class T, class A>
130 inline ::IceUtilInternal::SecondConstVoidMemFun1<K, T, ICE_INTERNAL_HANDLE<T>, A>
131 secondConstVoidMemFun1(void (T::*p)(A) const)
132 {
133  return ::IceUtilInternal::SecondConstVoidMemFun1<K, T, ICE_INTERNAL_HANDLE<T>, A>(p);
134 }
136 
137 }
138 
139 # endif
140 #endif
IceUtil::voidMemFun1
inline ::IceUtilInternal::VoidMemFun1< T, Handle< T >, A > voidMemFun1(void(T::*p)(A))
Definition: Functional.h:296
IceUtil::secondConstMemFun1
inline ::IceUtilInternal::SecondConstMemFun1< R, K, T, Handle< T >, A > secondConstMemFun1(R(T::*p)(A) const)
Definition: Functional.h:366
IceUtil::constMemFun
inline ::IceUtilInternal::ConstMemFun< R, T, Handle< T > > constMemFun(R(T::*p)(void) const)
Definition: Functional.h:331
IceUtil::secondMemFun
inline ::IceUtilInternal::SecondMemFun< R, K, T, Handle< T > > secondMemFun(R(T::*p)(void))
Definition: Functional.h:303
IceUtil::secondVoidMemFun1
inline ::IceUtilInternal::SecondVoidMemFun1< K, T, Handle< T >, A > secondVoidMemFun1(void(T::*p)(A))
Definition: Functional.h:324
IceUtil::constVoidMemFun1
inline ::IceUtilInternal::ConstVoidMemFun1< T, Handle< T >, A > constVoidMemFun1(void(T::*p)(A) const)
Definition: Functional.h:352
IceUtil::constVoidMemFun
inline ::IceUtilInternal::ConstVoidMemFun< T, Handle< T > > constVoidMemFun(void(T::*p)(void) const)
Definition: Functional.h:345
Handle.h
IceUtil::secondConstVoidMemFun
inline ::IceUtilInternal::SecondConstVoidMemFun< K, T, Handle< T > > secondConstVoidMemFun(void(T::*p)(void) const)
Definition: Functional.h:373
IceUtil::secondConstVoidMemFun1
inline ::IceUtilInternal::SecondConstVoidMemFun1< K, T, Handle< T >, A > secondConstVoidMemFun1(void(T::*p)(A) const)
Definition: Functional.h:380
IceUtil::secondVoidMemFun
inline ::IceUtilInternal::SecondVoidMemFun< K, T, Handle< T > > secondVoidMemFun(void(T::*p)(void))
Definition: Functional.h:317
IceUtil::secondConstMemFun
inline ::IceUtilInternal::SecondConstMemFun< R, K, T, Handle< T > > secondConstMemFun(R(T::*p)(void) const)
Definition: Functional.h:359
IceUtil::memFun
inline ::IceUtilInternal::MemFun< R, T, Handle< T > > memFun(R(T::*p)(void))
Definition: Functional.h:275
Functional.h
IceUtil::secondMemFun1
inline ::IceUtilInternal::SecondMemFun1< R, K, T, Handle< T >, A > secondMemFun1(R(T::*p)(A))
Definition: Functional.h:310
IceUtil::memFun1
inline ::IceUtilInternal::MemFun1< R, T, Handle< T >, A > memFun1(R(T::*p)(A))
Definition: Functional.h:282
Config.h
Ice
Definition: BuiltinSequences.h:113
IceUtil::voidMemFun
inline ::IceUtilInternal::VoidMemFun< T, Handle< T > > voidMemFun(void(T::*p)(void))
Definition: Functional.h:289
IceUtil::constMemFun1
inline ::IceUtilInternal::ConstMemFun1< R, T, Handle< T >, A > constMemFun1(R(T::*p)(A) const)
Definition: Functional.h:338