Ice 3.7 C++98 API Reference
Loading...
Searching...
No Matches
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
20namespace Ice
21{
22
24template<class R, class T>
25inline ::IceUtilInternal::MemFun<R, T, ICE_INTERNAL_HANDLE<T> >
26memFun(R (T::*p)(void))
27{
28 return ::IceUtilInternal::MemFun<R, T, ICE_INTERNAL_HANDLE<T> >(p);
29}
30
31template<class R, class T, class A>
32inline ::IceUtilInternal::MemFun1<R, T, ICE_INTERNAL_HANDLE<T>, A>
33memFun1(R (T::*p)(A))
34{
35 return ::IceUtilInternal::MemFun1<R, T, ICE_INTERNAL_HANDLE<T>, A>(p);
36}
37
38template<class T>
39inline ::IceUtilInternal::VoidMemFun<T, ICE_INTERNAL_HANDLE<T> >
40voidMemFun(void (T::*p)(void))
41{
42 return ::IceUtilInternal::VoidMemFun<T, ICE_INTERNAL_HANDLE<T> >(p);
43}
44
45template<class T, class A>
46inline ::IceUtilInternal::VoidMemFun1<T, ICE_INTERNAL_HANDLE<T>, A>
47voidMemFun1(void (T::*p)(A))
48{
49 return ::IceUtilInternal::VoidMemFun1<T, ICE_INTERNAL_HANDLE<T>, A>(p);
50}
51
52template<class R, class K, class T>
53inline ::IceUtilInternal::SecondMemFun<R, K, T, ICE_INTERNAL_HANDLE<T> >
54secondMemFun(R (T::*p)(void))
55{
56 return ::IceUtilInternal::SecondMemFun<R, K, T, ICE_INTERNAL_HANDLE<T> >(p);
57}
58
59template<class R, class K, class T, class A>
60inline ::IceUtilInternal::SecondMemFun1<R, K, T, ICE_INTERNAL_HANDLE<T>, A>
61secondMemFun1(R (T::*p)(A))
62{
63 return ::IceUtilInternal::SecondMemFun1<R, K, T, ICE_INTERNAL_HANDLE<T>, A>(p);
64}
65
66template<class K, class T>
67inline ::IceUtilInternal::SecondVoidMemFun<K, T, ICE_INTERNAL_HANDLE<T> >
68secondVoidMemFun(void (T::*p)(void))
69{
70 return ::IceUtilInternal::SecondVoidMemFun<K, T, ICE_INTERNAL_HANDLE<T> >(p);
71}
72
73template<class K, class T, class A>
74inline ::IceUtilInternal::SecondVoidMemFun1<K, T, ICE_INTERNAL_HANDLE<T>, A>
75secondVoidMemFun1(void (T::*p)(A))
76{
77 return ::IceUtilInternal::SecondVoidMemFun1<K, T, ICE_INTERNAL_HANDLE<T>, A>(p);
78}
79
80template<class R, class T>
81inline ::IceUtilInternal::ConstMemFun<R, T, ICE_INTERNAL_HANDLE<T> >
82constMemFun(R (T::*p)(void) const)
83{
84 return ::IceUtilInternal::ConstMemFun<R, T, ICE_INTERNAL_HANDLE<T> >(p);
85}
86
87template<class R, class T, class A>
88inline ::IceUtilInternal::ConstMemFun1<R, T, ICE_INTERNAL_HANDLE<T>, A>
89constMemFun1(R (T::*p)(A) const)
90{
91 return ::IceUtilInternal::ConstMemFun1<R, T, ICE_INTERNAL_HANDLE<T>, A>(p);
92}
93
94template<class T>
95inline ::IceUtilInternal::ConstVoidMemFun<T, ICE_INTERNAL_HANDLE<T> >
96constVoidMemFun(void (T::*p)(void) const)
97{
98 return ::IceUtilInternal::ConstVoidMemFun<T, ICE_INTERNAL_HANDLE<T> >(p);
99}
100
101template<class T, class A>
102inline ::IceUtilInternal::ConstVoidMemFun1<T, ICE_INTERNAL_HANDLE<T>, A>
103constVoidMemFun1(void (T::*p)(A) const)
104{
105 return ::IceUtilInternal::ConstVoidMemFun1<T, ICE_INTERNAL_HANDLE<T>, A>(p);
106}
107
108template<class R, class K, class T>
109inline ::IceUtilInternal::SecondConstMemFun<R, K, T, ICE_INTERNAL_HANDLE<T> >
110secondConstMemFun(R (T::*p)(void) const)
111{
112 return ::IceUtilInternal::SecondConstMemFun<R, K, T, ICE_INTERNAL_HANDLE<T> >(p);
113}
114
115template<class R, class K, class T, class A>
116inline ::IceUtilInternal::SecondConstMemFun1<R, K, T, ICE_INTERNAL_HANDLE<T>, A>
117secondConstMemFun1(R (T::*p)(A) const)
118{
119 return ::IceUtilInternal::SecondConstMemFun1<R, K, T, ICE_INTERNAL_HANDLE<T>, A>(p);
120}
121
122template<class K, class T>
123inline ::IceUtilInternal::SecondConstVoidMemFun<K, T, ICE_INTERNAL_HANDLE<T> >
124secondConstVoidMemFun(void (T::*p)(void) const)
125{
126 return ::IceUtilInternal::SecondConstVoidMemFun<K, T, ICE_INTERNAL_HANDLE<T> >(p);
127}
128
129template<class K, class T, class A>
130inline ::IceUtilInternal::SecondConstVoidMemFun1<K, T, ICE_INTERNAL_HANDLE<T>, A>
131secondConstVoidMemFun1(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
inline ::IceUtilInternal::MemFun< R, T, Handle< T > > memFun(R(T::*p)(void))
Definition Functional.h:275
inline ::IceUtilInternal::SecondConstVoidMemFun< K, T, Handle< T > > secondConstVoidMemFun(void(T::*p)(void) const)
Definition Functional.h:373
inline ::IceUtilInternal::ConstVoidMemFun< T, Handle< T > > constVoidMemFun(void(T::*p)(void) const)
Definition Functional.h:345
inline ::IceUtilInternal::SecondConstMemFun< R, K, T, Handle< T > > secondConstMemFun(R(T::*p)(void) const)
Definition Functional.h:359
inline ::IceUtilInternal::SecondVoidMemFun< K, T, Handle< T > > secondVoidMemFun(void(T::*p)(void))
Definition Functional.h:317
inline ::IceUtilInternal::VoidMemFun< T, Handle< T > > voidMemFun(void(T::*p)(void))
Definition Functional.h:289
inline ::IceUtilInternal::VoidMemFun1< T, Handle< T >, A > voidMemFun1(void(T::*p)(A))
Definition Functional.h:296
inline ::IceUtilInternal::MemFun1< R, T, Handle< T >, A > memFun1(R(T::*p)(A))
Definition Functional.h:282
inline ::IceUtilInternal::ConstVoidMemFun1< T, Handle< T >, A > constVoidMemFun1(void(T::*p)(A) const)
Definition Functional.h:352
inline ::IceUtilInternal::ConstMemFun< R, T, Handle< T > > constMemFun(R(T::*p)(void) const)
Definition Functional.h:331
inline ::IceUtilInternal::SecondConstVoidMemFun1< K, T, Handle< T >, A > secondConstVoidMemFun1(void(T::*p)(A) const)
Definition Functional.h:380
inline ::IceUtilInternal::SecondVoidMemFun1< K, T, Handle< T >, A > secondVoidMemFun1(void(T::*p)(A))
Definition Functional.h:324
inline ::IceUtilInternal::SecondMemFun1< R, K, T, Handle< T >, A > secondMemFun1(R(T::*p)(A))
Definition Functional.h:310
inline ::IceUtilInternal::ConstMemFun1< R, T, Handle< T >, A > constMemFun1(R(T::*p)(A) const)
Definition Functional.h:338
inline ::IceUtilInternal::SecondMemFun< R, K, T, Handle< T > > secondMemFun(R(T::*p)(void))
Definition Functional.h:303
inline ::IceUtilInternal::SecondConstMemFun1< R, K, T, Handle< T >, A > secondConstMemFun1(R(T::*p)(A) const)
Definition Functional.h:366
Definition BuiltinSequences.h:113