diff options
Diffstat (limited to 'cpp')
-rw-r--r-- | cpp/CHANGES | 6 | ||||
-rw-r--r-- | cpp/include/Ice/Proxy.h | 32 |
2 files changed, 38 insertions, 0 deletions
diff --git a/cpp/CHANGES b/cpp/CHANGES index 9ad8cfe1110..92866667885 100644 --- a/cpp/CHANGES +++ b/cpp/CHANGES @@ -1,6 +1,12 @@ Changes since version 1.2.0 --------------------------- +- Added STL functors for partial proxy comparison: + * ProxyIdentityLess + * ProxyIdentityEqual + * ProxyIdentityAndFacetLess + * ProxyIdentityAndFacetEqual + - A DNSException could cause a deadlock. This has been fixed. - Changed FD_SETSIZE under Windows to 1024. (The default permits only diff --git a/cpp/include/Ice/Proxy.h b/cpp/include/Ice/Proxy.h index 15e9e173a1c..2f2f4c71456 100644 --- a/cpp/include/Ice/Proxy.h +++ b/cpp/include/Ice/Proxy.h @@ -268,6 +268,38 @@ ICE_API bool proxyIdentityEqual(const ObjectPrx&, const ObjectPrx&); ICE_API bool proxyIdentityAndFacetLess(const ObjectPrx&, const ObjectPrx&); ICE_API bool proxyIdentityAndFacetEqual(const ObjectPrx&, const ObjectPrx&); +struct ProxyIdentityLess : std::binary_function<bool, ObjectPrx&, ObjectPrx&> +{ + bool operator()(const ObjectPrx& lhs, const ObjectPrx& rhs) const + { + return proxyIdentityLess(lhs, rhs); + } +}; + +struct ProxyIdentityEqual : std::binary_function<bool, ObjectPrx&, ObjectPrx&> +{ + bool operator()(const ObjectPrx& lhs, const ObjectPrx& rhs) const + { + return proxyIdentityEqual(lhs, rhs); + } +}; + +struct ProxyIdentityAndFacetLess : std::binary_function<bool, ObjectPrx&, ObjectPrx&> +{ + bool operator()(const ObjectPrx& lhs, const ObjectPrx& rhs) const + { + return proxyIdentityAndFacetLess(lhs, rhs); + } +}; + +struct ProxyIdentityAndFacetEqual : std::binary_function<bool, ObjectPrx&, ObjectPrx&> +{ + bool operator()(const ObjectPrx& lhs, const ObjectPrx& rhs) const + { + return proxyIdentityAndFacetEqual(lhs, rhs); + } +}; + } #endif |